Goedemiddag, (ik hoop dat ik deze vraag in het goede forum heb gezet)

Ik wil vanuit een browser een PDF-document printen en daarbij afhankelijk van het soort document de geïnstalleerde printer en printer-lade selecteren op een Windows netwerk configuratie. (=altijd Windows)

Nu weet ik dat je vanuit de browser niet kunt zien welke printers er zijn geïnstalleerd etc.

1. Heeft iemand een idee hoe ik e.e.a. kan oplossen ? (wellicht met behulp van Third-Party tools)
Ik zou me kunnen voorstellen dat je dan via een http:// GET de parameters mee geeft.

2. Of kan ik een PDF document op een bepaalde manier aangeven dat die altijd naar printer A of printer B gaat?

Hoor graag of iemand me verder kan helpen of suggesties heeft.

Groeten Hans
Het is gelukkig niet vanuit de browser mogelijk om deze instellingen aan te sturen omdat dit 'client side' zijn. Je moet dit dus sowieso bij de client oplossen.

Draai je een locale server? Dan zou je misschien nog iets met exec kunnen doen. Dan zou je met exec een batch moeten aanroepen die een print opdracht geeft, misschien dat je hierin wel instellingen kunt meesturen.
Het gaat draaien op een locale server. Wat bedoel je met een Exec?
Ik bedoel de php functie exec
Dit is een soort 'Windows command' waarin je dus opdrachten voor windows kan uitvoeren bijvoorbeeld een ping.
<?php exec("ping ".$ip." -n 1 -w 90 && exit", $output); ?>


Het gaat erom dat je iets nodig hebt wat op je Windows wordt aangestuurd, want gelukkig kun jij via je script niet iets, zoals printerinstellingen, in mijn browser wijzigen.

Als je het script op de zelfde pc, localhost, draait, kun je in ieder geval met exec een batch aansturen. Je zou jezelf daarin moeten gaan verdiepen of het überhaupt met een batch wel mogelijk is.

Zelf heb ik met exec ook wel eens een batch uitgevoerd, die batch opende een bestand in een programma, paste deze aan, sloeg deze op, en werd vervolgens in het script weer gebruikt. Dus misschien is er hoop ;-)
Michael - op 12/05/2014 14:03:49

Het is gelukkig niet vanuit de browser mogelijk om deze instellingen aan te sturen omdat dit 'client side' zijn. Je moet dit dus sowieso bij de client oplossen.



Michael - op 12/05/2014 16:08:38

Ik bedoel de php functie exec
Dit is een soort 'Windows command' waarin je dus opdrachten voor windows kan uitvoeren bijvoorbeeld een ping.
<?php exec("ping ".$ip." -n 1 -w 90 && exit", $output); ?>


Als je het script op de zelfde pc, localhost, draait, kun je in ieder geval met exec een batch aansturen. Je zou jezelf daarin moeten gaan verdiepen of het überhaupt met een batch wel mogelijk is.



Nu maak je mij toch ook wel heel erg benieuwd.
Eerst geef je te kennen dat dit een client side actie is, vervolgens kom je met een stukje php-script, wat volgens mij server-side is.

Last but not least begin je over de localhost, wat volgens mij ook serverside is.

Zou je dit iets duidelijker kunnen maken ?

De 'localhost' is de lokale PC waar de printer in dit geval aan moet zijn gekoppeld, waar ook PHP op draait.
je print dan dus vanaf de server rechtstreeks naar de printer, zonder tussenkomst van de browser / client pc, of user.

je bent dan ook niet afhankelijk van aller hande omstandigheden als fouten van users, niet geinstalleerde printers etc.
Maar dat is met name dus geschikt voor toepassingen op een kantoor, en niet voor een situatie waarbij de users wereldwijd verspreid zitten

Reageren