Visualizzazione risultati 1 fino 29 di 29
Like Tree1Likes
  • 1 Post By darbula

Discussione: TELEGRAM BOT file_get_contents($Url); Api SERVER TO SERVER

  1. #1
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito TELEGRAM BOT file_get_contents($Url); Api SERVER TO SERVER

    Ciao a tutti,
    Sto sviluppando un bot su telegram che prende tutti gli eventi relativi ad una città e una categoria inseriti dall'utente da telegram.

    il BOT è questo: @ElencoEventiBot

    Sul mio pc in locale funziona perfettamente, mentre su altervista sembra che ci siano problemi con questi comandi:

    Codice:
    $eventiUrl = "https://www.eventbriteapi.com/v3/events/search/?sort_by=date&location.address=".urlencode("torino")."&location.within=50km&categories=103&token=MIOTOKEN";
    $contents = file_get_contents($eventiUrl);
    		
    $eventi=json_decode($contents,true);
    In particolare sembra che in qualche modo altervista non riesca ad eseguire questa funzione:
    file_get_contents($eventiUrl);

    C'è qualche limitazione su altervista per accedere ai contenuti di un altro server?
    Ho già fatto l'autenticazione con l'sms per abilitare la funzionalità server to server.

    Ripeto che sul mio computer in locale funziona benissimo, quindi è qualcosa relativo ad altervista.

    Mi potete aiutare a risolvere per favore?
    Grazie.
    Ultima modifica di lenotizie : 31-08-2017 alle ore 20.34.05

  2. #2
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Sei hai il Server to Server attivo e "settato senza alcuna restrizione", può darsi che le URL facciano dei redirect... Nel PHP di altervista sono bloccati (header('Location: http://sito.com/')).. Puoi verificare tutti gli header dalla tua prova locale? Solo dopo puoi verificare tale header in altervista (cioè prima devi stabilire una base da dove poter iniziare le tue indagini)..
    PS. Per favore sposta la discussione nell'angolo PHP.
    Ultima modifica di darbula : 01-09-2017 alle ore 20.07.47
    lenotizie likes this.

  3. #3
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito Header in locale

    Grazie della risposta,
    L'unico comando header che ho scritto nel codice è:
    Codice:
    header("Content-Type: application/json");
    E se analizzo cosa mi restituisce l'header in locale, il risultato è questo:

    Codice:
    HTTP/1.1 200 OK
    Date: Sun, 03 Sep 2017 15:22:23 GMT
    Server: Apache/2.4.25 (Win32) OpenSSL/1.0.2j PHP/5.6.30
    X-Powered-By: PHP/5.6.30
    Content-Length: 0
    Content-Type: application/json
    
    POST /eventi.php HTTP/1.1
    Host: 4d191471.ngrok.io
    Content-Type: application/json
    Content-Length: 231
    Accept-Encoding: gzip, deflate
    X-Forwarded-Proto: https
    X-Forwarded-For: 149.154.167.200
    
    {"update_id":816172246,
    "message":{"message_id":750,"from":{"id":36872390,"is_bot":false,"first_name":"Fabio","language_code":"it-IT"},
    "chat":{"id":36872390,"first_name":"Fabio","type":"private"},
    "date":1504452141,"text":"Musica"}}
    Come vedi non c'è nessun redirect.
    Sul mio pc in locale funziona, come mai non funziona su altervista?

    Forse c'è qualche limitazione di altervista riguardo al sito https://www.eventbrite.it/


    P.S.
    Come si sposta la discussione nell'angolo php? Grazie
    Ultima modifica di lenotizie : 03-09-2017 alle ore 17.49.32

  4. #4
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Impossibile ci sono due Content-length
    In più negli header si vede che usi il metodo POST..Per favore non mischiare i codici... La sola funzione senza settare gli header è con il metodo GET.. file_get_contents(); senza header uguale get
    Già ti hanno spostato in php.

    PS. Spiega a parole cosa fai..
    Se ci indichi codice a misto frutta devi aspettarti risposte a misto frutta
    Ultima modifica di darbula : 03-09-2017 alle ore 18.00.42

  5. #5
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Scusa non ho capito....

    Dov'è l'errore che ho fatto?

    Praticamente è un bot che usa l'api di eventbrite per cercare gli eventi musicali(categories=103) per qualunque città. In questo esempio torino.

    il codice è questo:

    Codice:
    header("Content-Type: application/json");
    		
    switch ($message) { //processiamo il messaggio inviato dall'utente:
        case "/start": //Ha scritto start.
    	   $url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode("Ciao <b>$nome</b>,\nInserisci il <b>nome</b> di una <b>citt\xC3\xA0</b> e scegli una <b>categoria</b> per vedere gli eventi. :)")."&parse_mode=html";
    	   file_get_contents($url);// originale
           break;
    		
    		
        case "/help": //Ha scritto help
     	   $url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode("Ciao <b>$nome</b>,\nInserisci il <b>nome</b> di una <b>citt\xC3\xA0</b> e scegli una <b>categoria</b> per vedere gli eventi. :)")."&parse_mode=html";
    	   file_get_contents($url);
           break;
    
        case "Musica": //Ha premuto sul pulsante musica della keyboard
    	
    	
    	$eventiUrl = "https://www.eventbriteapi.com/v3/events/search/?sort_by=date&location.address=".urlencode("torino")."&location.within=50km&categories=103&token=ILMIOTOKEN";
    					
    	$contents = file_get_contents($eventiUrl);
    		
    	$eventi=json_decode($contents,true); 
    		
    		foreach($eventi['events'] as $event){
    			
    				$sito=$event['url'];
    				$testoPrev= "<b>".str_replace('T',' - ',$event['start']['local'])."</b>\n<a href='$sito'>APRI EVENTO</a>";
    				$url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode($testoPrev)."&parse_mode=html";
    				file_get_contents($url);
    		}
    
            break;
    In locale mi funziona...Ma quando lo carico su altervista /start e /help funzionano, mentre quando arriva su Musica non fa niente... rimane fermo.
    Mettendo dei messaggi di debug, sembra che il problema sia in questa riga:
    $contents = file_get_contents($eventiUrl);
    Ultima modifica di lenotizie : 03-09-2017 alle ore 18.11.44

  6. #6
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Nell'esempio precedente hai mostrato risposta GET o forse POST è una richiesta POST con i dati incorporati.. Dal codice PHP che mi mostri non stai utilizzando il metodo POST... non c'è nulla da capire questa è la base della programmazione .
    EDIT:Guarda tu stesso come si effettua una richiesta POST con PHP http://php.net/manual/en/context.http.php
    Programmatore da copia/incolla metti ancora in dubbio la mia parola?
    Ultima modifica di darbula : 03-09-2017 alle ore 18.12.09

  7. #7
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Da quanto ho capito dall'api di telegram, sendMessage usa il metodo post, per quello risulta il metodo post dall'output...
    Ma non sono esperto in questo, altrimenti non chiedevo aiuto qui.
    Io sono solo un programmatore della domenica da copia e incolla

  8. #8
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito Altro esempio

    Scusa,
    Non vorrei sembrare pesante, ma vorrei solo cercare di capire qualcosa, in modo da imparare di più.
    Anche questo semplice codice in locale con xampp funziona, ma quando lo carico su altervista non mi mostra niente.
    Si tratta sempre del sito di eventbrite.
    Vorrei solo cercare di capire dove sbaglio, visto che sul mio pc funziona tutto.

    Grazie.

    Codice:
    <?php
    $eventiUrl = "https://www.eventbriteapi.com/v3/events/search/?sort_by=date&location.address=".urlencode("torino")."&location.within=50km&categories=103&token=MIOTOKEN";
    
    		$contents = file_get_contents($eventiUrl);
    
    		$eventi=json_decode($contents,true); 
    		
    
    		foreach($eventi['events'] as $event){
    
    			$testoPrev= $event['start']['local']."<br>".
    			            $event['name']['text']."<br>".
    				    substr($event['description']['text'],0,150)."...<a href=".$event['url'].">Vedi</a><br><br>";
    							
    			echo $testoPrev;
    				
    		}
    
    ?>
    Ultima modifica di lenotizie : 03-09-2017 alle ore 20.11.16

  9. #9
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ascoltami non è competenza di chi ti aiuta testare il programma, il tuo errore sta nel cercare di far funzionare la cosa, se invece vai per logica cioè se con il tuo php fai una richiesta GET e poi ti vedi una richiesta POST è evidente che ci sta un redirect

  10. #10
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Ok.. scusa..
    Se la cosa è evidente per te, non è detto che sia evidente anche per me che sono un novellino nella programmazione.

    Basta spiegarlo con parole semplici anche a noi che siamo alle prime armi, non è il caso di agitarsi e offendere dicendo "programmatore da copia e incolla"
    Siamo stati tutti inesperti, e tutti abbiamo fatto copia e incolla per imparare.
    Comunque grazie.
    Volevo solo sapere se sbagliavo qualcosa io oppure non dipendeva da me :)
    GRAZIE ANCORA.

  11. #11
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Tu hai preso le mie parole per un'offesa, pensi sia carino vederti dubitare di me? Se tu chiedi aiuto ed io ti rispondo vuole dire che mi devi ascoltare ma se non lo fai non mi rispetti ... Cmq.. Potrebbe esserci il modo di risolvere il problema... Invece gli header di altervista cosa ti dicono?

  12. #12
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Non è una mancanza di rispetto, è solo che da ignorante in materia, date le mie poche conoscenze, non capisco l'aiuto che mi hai dato

    Se può sembrare che non ti ascolto, in realtà vuol dire che non capisco, altrimenti ci sarei arrivato subito...

    Per esempio... come faccio a vedere cosa mi dicono gli header di altervista?
    Non so come si fa a fare quello che mi hai chiesto ora.
    Sono proprio agli inizi... scusami

    Se sono troppo ignorante lasciamo perdere ;)
    Ultima modifica di lenotizie : 03-09-2017 alle ore 19.13.38

  13. #13
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Chiunque va premiato basta che ci metta volontà.. Per gli header della risposta (l'ultimo esempio) http://php.net/manual/en/context.http.php
    Cioè la risorsa con questa funzione
    var_dump(stream_get_meta_data($contents));
    Ultima modifica di darbula : 03-09-2017 alle ore 19.48.18

  14. #14
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Grazie per la disponibilità.

    Allora...
    Ho fatto girare questo codice:

    Codice:
    <?php
    
    $url = "https://lenotizie.altervista.org/index.php";
    
    $opts = array('http' =>
        array(
            'method' => 'GET',
            'max_redirects' => '0',
            'ignore_errors' => '1'
        )
    );
    
    $context = stream_context_create($opts);
    $stream = fopen($url, 'r', false, $context);
    
    // header information as well as meta data
    // about the stream
    var_dump(stream_get_meta_data($stream));
    
    // actual data at $url
    var_dump(stream_get_contents($stream));
    fclose($stream);
    
    ?>
    e ho ottenuto questo:

    Codice:
    array(10) { ["timed_out"]=> bool(false) ["blocked"]=> bool(true) ["eof"]=> bool(false) ["wrapper_data"]=> array(4) { [0]=> string(37) "HTTP/1.0 500 SSL negotiation failed: " [1]=> string(35) "Date: Sun, 03 Sep 2017 18:02:03 GMT" [2]=> string(14) "Server: Apache" [3]=> string(24) "Content-Type: text/plain" } ["wrapper_type"]=> string(4) "http" ["stream_type"]=> string(14) "tcp_socket/ssl" ["mode"]=> string(1) "r" ["unread_bytes"]=> int(0) ["seekable"]=> bool(false) ["uri"]=> string(42) "https://lenotizie.altervista.org/index.php" } string(337) "SSL negotiation failed: at /avsys/proxy2/LWP/Protocol/http.pm line 31 at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 "

  15. #15
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ti dice che ha fallito la verifica del certificato (dominio o la chiave del certificato)
    Come mai punti in te stesso? Cioè anche se crei una pagina con il testo echo 'ciao'; e fai riferimento ad essa ti ritorna questo errore?
    Può essere perché c'è la mancanza dell header Host: lenotizie.altervista.org
    Si devi aggiungerlo nella richiesta dopo il method
    Esempio http://forum.it.altervista.org/php-m...ml#post1354178
    Ma lascia perdere le parole dette in quel topic a te serve l'header
    Ultima modifica di darbula : 03-09-2017 alle ore 20.36.45

  16. #16
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    se nel $url NON uso tutto il percorso
    Codice:
    $url = "index.php";

    ottengo questo:

    Codice:
    array(9) { ["timed_out"]=> bool(false) ["blocked"]=> bool(true) ["eof"]=> bool(false) ["wrapper_type"]=> string(9) "plainfile" ["stream_type"]=> string(5) "STDIO" ["mode"]=> string(1) "r" ["unread_bytes"]=> int(0) ["seekable"]=> bool(true) ["uri"]=> string(9) "index.php" } string(3350) " array(array('Musica')), //Da adattare al bot eventi 'one_time_keyboard' => true, 'resize_keyboard' => true); header("Content-Type: application/json"); switch ($message) { //processiamo il messaggio inviato dall'utente: case "/start": //Ha scritto start. $url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode("Ciao $nome,\nInserisci il nome di una citt\xC3\xA0 e scegli una categoria per vedere gli eventi. :)")."&parse_mode=html"; file_get_contents($url);// originale break; case "/help": //Ha scritto help $url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode("Ciao $nome,\nInserisci il nome di una citt\xC3\xA0 e scegli una categoria per vedere gli eventi. :)")."&parse_mode=html"; file_get_contents($url); break; case "Musica": $contenuto=file_get_contents("log.txt"); $eventiUrl = "https://www.eventbriteapi.com/v3/events/search/?sort_by=date&location.address=".urlencode($contenuto)."&location.within=50km&categories=103&token=E5FXAOFLUDGN55LGSAIK"; $contents = file_get_contents($eventiUrl); $eventi=json_decode($contents,true); //json_decode ritorna un oggetto con tutti i dati dentro. Con true invece ritorna un array. foreach($eventi['events'] as $event){ /* $sito=$event['url']; $testoPrev= $event['start']['local']."\n". $event['name']['text']."\n". //substr($event['description']['text'],0,150)."..."."".$event['url'].""; substr($event['description']['text'],0,150)."...Vai"; */	$sito=$event['url']; $testoPrev= "".str_replace('T',' - ',$event['start']['local'])."\nAPRI EVENTO"; $url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode($testoPrev)."&parse_mode=html"; file_get_contents($url); } break; default: scriviFile($message); $url = $GLOBALS["website"]."/sendMessage?chat_id=".$chatID."&text=".urlencode("Scegli una categoria per vedere gli eventi di $message")."&parse_mode=html&reply_markup=".json_encode($keyboard2); file_get_contents($url); break; }//Fine dello switch. function scriviFile($citta){ $myFile = "log.txt"; $fh = fopen($myFile, 'w') or die("can't open file"); fwrite($fh, $citta); fclose($fh); } ?>"

  17. #17
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Cancella il token... aspetta abbi bonta. crea un pagina di nome prova.php con il codice
    Codice PHP:
    <?php
    echo 'mi vedi';
    ?>
    Richiamala con l'header host e il percorso completo da https in poi
    Spostiamoci in privato se ti va
    Ultima modifica di darbula : 03-09-2017 alle ore 20.51.23

  18. #18
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Allora.. cosi?

    Codice:
    <?php
    
    $url = "https://lenotizie.altervista.org/prova.php";
    
    $opts = array('http' =>
        array(
            'method' => 'GET',
    	'header'  => 'Host: lenotizie.altervista.org',
            'max_redirects' => '0',
            'ignore_errors' => '1'
        )
    );
    
    $context = stream_context_create($opts);
    $stream = fopen($url, 'r', false, $context);
    
    // header information as well as meta data
    // about the stream
    var_dump(stream_get_meta_data($stream));
    
    // actual data at $url
    var_dump(stream_get_contents($stream));
    fclose($stream);
    
    ?>

    il risultato è questo:

    Codice:
    array(10) { ["timed_out"]=> bool(false) ["blocked"]=> bool(true) ["eof"]=> bool(false) ["wrapper_data"]=> array(4) { [0]=> string(37) "HTTP/1.0 500 SSL negotiation failed: " [1]=> string(35) "Date: Sun, 03 Sep 2017 19:20:05 GMT" [2]=> string(14) "Server: Apache" [3]=> string(24) "Content-Type: text/plain" } ["wrapper_type"]=> string(4) "http" ["stream_type"]=> string(14) "tcp_socket/ssl" ["mode"]=> string(1) "r" ["unread_bytes"]=> int(0) ["seekable"]=> bool(false) ["uri"]=> string(42) "https://lenotizie.altervista.org/prova.php" } string(337) "SSL negotiation failed: at /avsys/proxy2/LWP/Protocol/http.pm line 31 at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 "

  19. #19
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Prova aggiungendo la porta ":443" al domino (Host) ... Senza le virgoletta

  20. #20
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Non sembra cambiare molto...

    Codice:
    array(10) { ["timed_out"]=> bool(false) ["blocked"]=> bool(true) ["eof"]=> bool(false) ["wrapper_data"]=> array(4) { [0]=> string(37) "HTTP/1.0 500 SSL negotiation failed: " [1]=> string(35) "Date: Sun, 03 Sep 2017 19:35:25 GMT" [2]=> string(14) "Server: Apache" [3]=> string(24) "Content-Type: text/plain" } ["wrapper_type"]=> string(4) "http" ["stream_type"]=> string(14) "tcp_socket/ssl" ["mode"]=> string(1) "r" ["unread_bytes"]=> int(0) ["seekable"]=> bool(false) ["uri"]=> string(42) "https://lenotizie.altervista.org/prova.php" } string(337) "SSL negotiation failed: at /avsys/proxy2/LWP/Protocol/http.pm line 31 at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 ; Connection reset by peer at /avsys/proxy2/LWP/Protocol/http.pm line 31 "

  21. #21
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Svuota cache di CloudFlare e del tuo browser
    .. Dopo cena provo dal mio sito al tuo.

  22. #22
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Ho svuotato entrambe le cache ma non è cambiato niente purtroppo...

    Grazie, sei davvero molto disponibile.

  23. #23
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Ciao scusami per il ritardo il problema sta nella libreria Openssl 1.0.1 ..effettua l'aggiornamento a MySQL 5.6 dalla sezione Database del pannello di controllo di AlterVista, in questo modo avrai a disposizione anche le librerie aggiornate..
    Questo script utilizza la libreria curl con gli header di risposta e eventuale errore riconosciuto da curl..
    Cmq.. In linea teorica non può sempre ritornati un file json può succedere che restituisca un HTTP 500..
    Il codice va modificato secondo le proprie esigenze.. (a me non mi è possibile aggiornare a MySQL 5.6 , quindi non mi funziona).
    Codice PHP:
    <?php
    $url
    = 'https://lenotizie.altervista.org/index.php';
    $ch = curl_init($url);
    curl_setopt($ch , CURLOPT_FRESH_CONNECT , 1);
    curl_setopt($ch , CURLOPT_SSL_VERIFYPEER , True);
    if(
    defined('CURL_SSL_VERIFYHOST')) {
    curl_setopt($ch , CURLOPT_SSL_VERIFYHOST , 2);
    }
    curl_setopt($ch, CURLOPT_FAILONERROR, true);
    curl_setopt($ch, CURLOPT_HEADER, True);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, False);
    curl_setopt($ch , CURLOPT_RETURNTRANSFER, True);
    $res[0] = curl_exec($ch);
    $res[1] = '';
    $info = curl_getinfo($ch);
    if(
    $info['header_size'] > 0 && $res[0]) {
    $res[1] = substr($res[0], 0, $info['header_size']);
    $res[0] = substr($res[0], $info['header_size']);
    }
    $res[2] = curl_error($ch);
    curl_close($ch);
    if(
    $res[2]) {
    $res[0] = '';
    $res[1] = '';
    }
    else{
    unset(
    $res[2]);
    }
    echo
    '<pre>';
    echo
    htmlspecialchars($res[0], ENT_COMPAT | ENT_HTML401,'UTF-8').'</pre>';
    ?>
    Host a 2 serve per verificare il nome dell'host che corrisponde a quello del server.

  24. #24
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    GRAZIEEEE!!

    Dopo l'aggiornamento a MySQL 5.6 ora funziona tutto!!!
    Il problema allora era dovuto al fatto che avevo le librerie NON aggiornate??

    Comunque adesso funziona tutto,
    Grazie ancora per la disponibilità!

  25. #25
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Si era per le libririe non aggiornate (la soluzione te la data la lettura degli header).. Hai provato il mio codice o il tuo? Così so cosa consigliare agli altri utenti.

  26. #26
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Col mio codice ottengo questo:

    Codice:
    array(10) { ["timed_out"]=> bool(false) ["blocked"]=> bool(true) ["eof"]=> bool(false) ["wrapper_data"]=> array(7) { [0]=> string(15) "HTTP/1.0 200 OK" [1]=> string(35) "Date: Tue, 05 Sep 2017 20:13:32 GMT" [2]=> string(24) "Server: cloudflare-nginx" [3]=> string(21) "Vary: Accept-Encoding" [4]=> string(38) "Content-Type: text/html; charset=UTF-8" [5]=> string(28) "CF-RAY: 399bd9864a9e2708-FRA" [6]=> string(153) "Set-Cookie: __cfduid=d1b4dcd6374361cbe2f548103ed4275471504642412; expires=Wed, 05-Sep-18 20:13:32 GMT; path=/; domain=.lenotizie.altervista.org; HttpOnly" } ["wrapper_type"]=> string(4) "http" ["stream_type"]=> string(14) "tcp_socket/ssl" ["mode"]=> string(1) "r" ["unread_bytes"]=> int(0) ["seekable"]=> bool(false) ["uri"]=> string(42) "https://lenotizie.altervista.org/index.php" } string(0) ""
    Mentre col tuo ottengo una pagina bianca, cioè nessun output a video.
    Ultima modifica di lenotizie : 05-09-2017 alle ore 22.14.35

  27. #27
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Funziona in entrambi i modi
    .. $res[0] testo pagina $res[1] header $res[2] errori ma io stampo solo il testo pagina nulla vieta di modificare il mio codice.. Le librerie curl sono più veloci per le connessioni...
    Ti ringrazio
    Ultima modifica di darbula : 05-09-2017 alle ore 22.20.52

  28. #28
    lenotizie non è connesso Neofita
    Data registrazione
    28-09-2008
    Messaggi
    19

    Predefinito

    Grazie mille ancora! per la pazienza e la disponibilità
    Ultima modifica di lenotizie : 05-09-2017 alle ore 22.20.49

  29. #29
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Prego figurati.. Se si ha l'accortezza di puntare ad url esistente anche il mio codice funziona

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •