Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Funzione fsockopen

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    86

    Funzione fsockopen

    Salve,

    si tratta probabilmente di una domanda molto stupida, ma non riesco a farlo funzionare in nessun modo...

    Ho due file:

    il file di richiesta...

    Codice PHP:
    error_reporting(E_ALL);
    $fp fsockopen('localhost:8888/ProvaSocket/prova_socket_risposta.php'8888$errno$errstr30); 
    if (!
    $fp) {     
    echo 
    "$errstr ($errno)
    \n"

    } else {     
    $out "GET / HTTP/1.1\r\n";     
    $out .= "Host: localhost:8888/ProvaSocket/prova_socket_risposta.php\r\n"
    $out .= "Connection: Close\r\n\r\n";     
    fwrite($fp$out);     
    while (!
    feof($fp)) {        
    echo 
    fgets($fp128);     
    }     
    fclose($fp); } 
    e il file di risposta...

    Codice PHP:
    error_reporting(E_ALL);  
    echo 
    "1,5"
    Il codice sopra riportato funziona perfettamente se lo testo con indirizzi come "www.gazzetta.it" e simili...
    Non funziona se provo a richiamare il mio "localhost:8888\ProvaSocket...".
    Il risultato, in questo caso, è:

    codice:
    Bad Request  Your browser sent a request that this server could not understand.
    Grazie per ogni aiuto.

  2. #2
    lo stato della tua porta 8888?

  3. #3
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Nell header credo che l'host sia sbagliato, devi mettere solo il nome HOST senza file e directory, che devono essere indicati dopo il GET. Cmq il tuo server deve stare in ascolto sulla 8888.
    Per gli Spartani e Sparta usa spartan Il mio github

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    86
    Come non detto, risolto!

    Inserisco la soluzione con il codice corretto, per eventuali dubbi di altri...

    Codice PHP:
    error_reporting(E_ALL); 
    $fp fsockopen('localhost'8888$errno$errstr30);
    if (!
    $fp) {     
    echo 
    "$errstr ($errno)
    \n"

    } else { 
    $out "GET /ProvaSocket/prova_socket_risposta.php HTTP/1.1\r\n";  
    $out .= "Host: localhost\r\n";     
    $out .= "Connection: Close\r\n\r\n";     
    fwrite($fp$out);    
    while (!
    feof($fp)) {         
    echo 
    fgets($fp128);   
    }     
    fclose($fp); } 
    Grazie comunque a tutti

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.