Visualizzazione dei risultati da 1 a 10 su 10

Discussione: php_printer.dll

  1. #1

    php_printer.dll

    Salve,
    ho da poco installato il PHP 5.0.5 con IIS su Windows XP.
    Ho configurato il tutto ed ho installato la libreria in oggetto scaricata da snaps.php.net. Ho provato con qualche esempio tipo:

    <?php
    $handle = printer_open("hp deskjet 640c series");
    echo $handle;
    printer_start_doc($handle);
    printer_start_page($handle);

    $font = printer_create_font("Arial", 148, 76, PRINTER_FW_MEDIUM, false, false, false, -50);
    printer_select_font($handle, $font);
    printer_draw_text($handle, "PHP is simply cool", 40, 40);
    printer_delete_font($font);

    printer_end_page($handle);
    printer_end_doc($handle);
    printer_close($handle);
    ?>

    ma quando apro il file contenente il codice di cui sopra, il sistema resta in attesa una trentina di secondi, poi scatta un timeout e stampa la scritta "PHP is simply cool" mentre sul browser spumta la scritta:

    Fatal error: Maximum execution time of 30 seconds exceeded in D:\Inetpub\webs\mydir\myfile.php on line 14

    Ho fatto varie prove ovviamente, ed ho circoscritto il problema individuando che l'attesa è provocata dall'apertura della pagina. Cioé se digito:

    <?php
    $handle = printer_open("hp deskjet 640c series");
    echo $handle;
    printer_start_doc($handle);

    printer_start_page($handle);
    printer_end_page($handle);

    printer_end_doc($handle);
    printer_close($handle);
    ?>

    il sistema resta in attesa, mentre se commento l'apertura della pagina:

    <?php
    $handle = printer_open("hp deskjet 640c series");
    echo $handle;
    printer_start_doc($handle);

    //printer_start_page($handle);
    //printer_end_page($handle);

    printer_end_doc($handle);
    printer_close($handle);
    ?>

    il server risponde subito e termina l'esecuzione.
    Forse prima di effettuare "printer_start_page" devo configurare qualcosa?
    Qualcuno ha avuto lo stesso problema?
    Sapete per caso a cosa è dovuto?
    Grazie in anticipo.

    Benedetto

  2. #2
    tempo fa avevo fatto una pillola al riguardo. Come stampare etichette o buste.... la procedura non cambia.

    http://forum.html.it/forum/showthrea...53#post7203253



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3

    php_printer.dll

    Scusa se insisto, ma ho letto la procedura che hai inserito tu e non ho trovato la soluzione.
    Poco fa' ho provato a commentare printer_start_page($handle); e printer_end_page($handle); per vedere se il problema era in queste due chiamate lanciando:

    codice:
    <?php
    $handle = printer_open();
    echo $handle; 
    printer_start_doc($handle);
    //printer_start_page($handle);
    
    $font = printer_create_font("Arial", 148, 76, PRINTER_FW_MEDIUM, false, false, false, -50);
    printer_select_font($handle, $font);
    printer_draw_text($handle, "PHP is simply cool", 40, 40);
    printer_delete_font($font);
    
    //printer_end_page($handle);
    printer_end_doc($handle);
    printer_close($handle);
    ?>
    ma niente da fare. La stampa la esegue, ma prima di farla deve scattare un timeout ed infine visualizzare:

    Fatal error: Maximum execution time of 30 seconds exceeded in D:\Inetpub\webs\mydir\myfile.php on line 14
    Forse ho qualche problema con la configurazione della stampante.

  4. #4
    Ho preso il tuo script e spostato una riga. Stampa al volo.
    codice:
    <?php
    
    $handle = printer_open();
    
    printer_start_doc($handle);
    $font = printer_create_font("Arial", 148, 76, PRINTER_FW_MEDIUM, false, false, false, -50);
    printer_start_page($handle);
    
    printer_select_font($handle, $font);
    printer_draw_text($handle, "PHP is simply cool", 40, 40);
    printer_delete_font($font);
    
    printer_end_page($handle);
    printer_end_doc($handle);
    printer_close($handle);
    
    ?>

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5

    php_printer.dll



    Scusa Piero,
    ma non risolvo. Puoi inviarmi la tua php_printer.dll? Oppure indicarmi il link dove l'hai scaricata?

    Vedi ho il timore che il mio problema sia la libreria ...

    Che versione di PHP usi?

    Grazie.

  6. #6
    http://www.php.net/downloads.php

    Nella collection of PECL


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7

    php_printer.dll



    Ho scaricato la versione 5.0.4 del PHP ed ho installato tutti i moduli del PECL...
    Non funge.

    Adesso penso che sia IIS configurato male oppure il php.ini che è rimasto quello di prima. C'é qualche cosa da decommentare nel php.ini che non sia nel tuo messaggio (Una pillola..)?
    Tu che server usi?

  8. #8

    Re: php_printer.dll

    Originariamente inviato da margimultimedia


    Ho scaricato la versione 5.0.4 del PHP ed ho installato tutti i moduli del PECL...
    Non funge.

    Adesso penso che sia IIS configurato male oppure il php.ini che è rimasto quello di prima. C'é qualche cosa da decommentare nel php.ini che non sia nel tuo messaggio (Una pillola..)?
    Tu che server usi?
    Apache2. c'e' solo la dll e se vuoi il default. La stampante deve essere quella del server oppure anche altra su client che sara' individuata con il nome assegnato, individuata da windows e non da php. Il problema principale delle funzioni printer e' che sono pensate per una stampante con comandi DOS e non per printer con driver win. Funzionano solo i comandi DOS compatibili. (compatibili tra DOS e driver win).

    Per esempio la direzione di stampa del foglio la devi impostare da windows nelle opzioni della printer e non da php.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9

    php_printer.dll

    Ho installato Apache2...
    come faccio a fargli vedere le funzioni php_printer?

  10. #10

    php_printer.dll

    Strano...
    se installo PHP come modulo, chiamando phpinfo() non viene caricato il modulo php_printer.
    Se invece lo installo come CGI allora lo vede.

    Bo!

    Comunque adesso funziona..

    Manca da capire perché IIS ti creava quell'imprevisto! :master:

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.