Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683

    Connessioni persistenti

    Ciao a tutti! vorrei creare in locale una connessione persistente con un mio sito.
    ho usato il codice qui sotto.
    ma è davvero persistente? all'interno del while apro (fsockopen) e chiudo (fclose) la connesisone, ma se li porto fuori dal while mi da problemi.

    Codice PHP:
    <?php
        $url
    ="localhost/socket/socket.php";

        
    $host=substr($url,0,strpos($url,"/"));
        
    $req=substr($url,strpos($url,"/"));

        
    $var=fopen("out.txt","a+");
        while(
    1){
            
    $fp fsockopen($host80$errno$errstr30);
            if (
    $fp) {
                
    $data "test=1";

                
    $request  "POST ".$req." HTTP/1.1\r\n";
                
    $request .= "Host: ".$host."\r\n";
                
    $request .= "Content-Length: " strlen($data) . "\r\n";
                
    $request .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n";
                
    $request .= $data;

                
    fwrite($fp$request);

                while (!
    feof($fp)) {
                    
    $json fgets ($fp);
                    echo 
    $json;
                    
    fwrite($var$json);
                }
            }

            
    sleep(10);
            
    fclose($fp);
        }
    ?>
    Ultima modifica di iacoposk8; 09-11-2014 a 16:12

  2. #2
    scusa ma se la chiudi con fclose come fa ad essere persistente??

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    il mio dubbio era quello... quindi come la sistemo in modo che lo diventi?
    perchè se metto tutto fuori dal while da un sacco di errori.

  4. #4
    non ho mai usato le socketo con php.
    ma cercando su google questo è il primo risultato: http://php.net/manual/it/function.pfsockopen.php

    prova a dare un'occhiata!

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    non ci sono esempi su richieste multiple, come servirebbe a me

  6. #6
    il tuo codice dovresti cambiarlo così

    Codice PHP:

    <?php
        $url
    ="localhost/socket/socket.php";

        
    $host=substr($url,0,strpos($url,"/"));
        
    $req=substr($url,strpos($url,"/"));

        
    $var=fopen("out.txt","a+");
        
    $flag true;
       
    $fp fsockopen($host80$errno$errstr30);
       
    //aggiungere controllo apertura $fp prima di entrare nel while
        
    while($flag){
            
                
    $data "test=1";

                
    $request  "POST ".$req." HTTP/1.1\r\n";
                
    $request .= "Host: ".$host."\r\n";
                
    $request .= "Content-Length: " strlen($data) . "\r\n";
                
    $request .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n";
                
    $request .= $data;

                
    fwrite($fp$request);

                while (!
    feof($fp)) {
                    
    $json fgets ($fp);
                    echo 
    $json;
                    
    fwrite($var$json);
                }

            
    sleep(10);
           
    //aggiungere condizione per impostare $flag a false e uscire
        
    }

     
    fclose($fp);
    ?>
    però mi risulta male questo script...che vorresti fare?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    volevo usare le api stream di twitter e ho seguito questo codice di esempio.
    per capirlo però l'ho scomposto sulle cose che non conoscevo e ho creato il codice di esempio postato nel primo post.
    in questo codice vediamo connessione e disconnessione dentro il while.
    Ho provato il codice dato da Santino83_02 e nel log vedo il ritorno di una sola chiamata, mentre me ne servono infinite idealmente.

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.