Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1

    passaggio variabili da PHP a VB6

    Salve ho un semplice script in PHP che memorizza su un file di testo un comando che dovrà essere
    letto successivamente da un progamma scritto in Visual Basic 6, lo script è:

    <?php
    $file = fopen("test","w+");
    echo fwrite($file,"testo on", 8);

    echo fwrite($file,"\r\n");
    echo fwrite($file,"testo off", 4);
    fclose($file);

    ?>

    La domanda è, come posso passare il testo a visual basic, senza dover necessariamente
    creare un file?
    Cioè vorrei evitare di dover passare questo testo in un modo cosi macchinoso.
    P.S so che VB6 è leggermente..obsoleto ma devo necessariamente usarlo.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    40
    Banalmente, potresti richiamare una pagina PHP da VB e leggere il testo prodotto.
    La pagina PHP avrà solo degli echo per scrivere in output e non dovrà generare alcun file.

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da xares Visualizza il messaggio
    Banalmente, potresti richiamare una pagina PHP da VB e leggere il testo prodotto.
    La pagina PHP avrà solo degli echo per scrivere in output e non dovrà generare alcun file.
    Banalmente potresti spiegarci come fare ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    40
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Banalmente potresti spiegarci come fare ?
    La richiesta è quella di passare del testo da una pagina PHP ad una applicazione VB senza utilizzare i file.
    A mio avviso quello che ho scritto mi pare già semplicemente spiegato, comunque ...

    La pagina PHP non fa altro che scrivere in output il testo voluto (magari parametrato)

    Codice PHP:
    <?php
    echo "testo, riga 1";
    echo 
    "testo, riga 2";
    ...
    echo 
    "testo, riga N";
    ?>
    che visto in un browser avrà l'aspetto di puro testo, ma se richiesto da una applicazione, questa può manipolarlo come conviene.
    Ecco quindi passato il testo all'applicazione.

    Cosa c'è di complicato?

  5. #5
    Grazie xares della risposta, perdonami ma il tuo metodo mi sembra solo un tantino meno macchinoso dello scrivere il testo in un file per poi rileggerlo con vb, vorrei un modo diciamo "dedicato" allo scopo, comunque, tentando di spiegare meglio il mio problema, mi sono reso conto che esso nasce a monte dello script PHP, cioè lo script è lanciato da:

    codice:
    <form action="test.php" method="post">
    <input name="Submit1" value="Operazione 1" type="submit" />
    <input name="Submit2" value="Operazione 2" type="submit" /> 
    </form>
    lo script (qui non è completo) elabora il testo e scrive nel file, quindi in sostanza a me servirebbe comunicare a VB quando l'utente ha premuto i pulsanti sulla pagina HTML bypassando completamente il discorso PHP....a questo punto , forse ho posto la domanda nella sezione bagliata, e chiedo scusa..

  6. #6
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Quindi è dalla pagina html che nasce tutto, giusto? L'utente clicca sul bottone submit viene generato il file e lanciato l'eseguibile.
    Xares, se non sbaglio, ha visto la cosa al contrario: Lanci l'eseguibile che poi chiama la pagina php.

    Se è il primo il tuo caso, allora la tua soluzione è quella più semplice da implementare e se funziona io la lascerei così...anche perchè altre soluzioni che vedo sono queste:

    1. Nella pagina php usa la popen/proc_open per lanciare l'eseguibile. Scrivi nello stdin (che ottieni dalle suddette funzioni) il comando/testo che vuoi passare e se ti serve prendi l'output (mi pare che però è necessario la proc_open per ottenere lo stdout). Chiaramente il tuo eseguibile dovrà leggere dallo standard input invece che da file

    2. Abiliti nel tuo web server l'esecuzione degli eseguibili tramite cgi, così salti php. Se non sbaglio anche in questo caso devi leggere lo stdin per le variabili post, per quelle get devi leggere le variabili di ambiente (QUERY_STRING). Inoltre devi fornire una risposta per il browser (scrivere nello stdout la risposta http) visto che non hai più un "intermediario" come php

    Lato visual basic non saprei aiutarti...dovresti chiedere nella sezione programmazione
    Ultima modifica di boots; 04-01-2017 a 11:46

  7. #7
    Grazie boots sei gentilissimo...di seguito elenco i termini che ignoro nella maniera più assoluta:
    popen/proc_open
    stdin
    proc_open
    stdout
    cgi

    Comunque non potrei avviare il mio eseguibile da HTML invece che avviare lo script PHP e passargli direttamente i dati che erano destinati allo script PHP?

  8. #8
    ...praticamente forse ho trovato quello che mi serve qui:
    https://support.microsoft.com/it-it/kb/239588

  9. #9
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Si, praticamente è il punto 2 che ti avevo esposto. In pratica non puoi eseguire direttamente un programma sul server, quindi devi usare un tramite (in questo caso CGI). Ovviamente devi configurare il web server (visto che è con lui che il browser si interfaccia) per "lanciare" l'eseguibile

  10. #10
    Grazie boots, questa cosa qui funziona, cioè dalla pagina HTML quando clicco sul bottone, il programmino VB riesce a sapere cosa avevo scritto nella casella di testo della pagina HTML, solo che l'imprevisto è sempre dietro l'angolo! e cioè quando vado a terminare il programmino VB il browser, che intanto attende, mi restituisce un messaggio di errore:

    Errore del server!

    Il server ha generato un errore interno e non è in grado di soddisfare la richiesta.
    Messaggio di errore:
    malformed header from script. Bad header=HTTP/1.0 200 OK: Hello.exe
    Se pensi che questo sia un errore del server, per favore contatta il webmaster.
    Error 500

    192.168.43.53
    07/01/2017 12.25.55
    Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1

    ...mannaggia c'ero quasi riuscito!!

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.