Le code suivant récupérera la teneur corporelle d'une URL extraite à l'aide de CURL dans PHP mais pas https. Quelqu'un peut-il me dire comment je modifierai le code, car je dois obtenir les données renvoyées non seulement à l'en-tête.
du test que j'ai fait ici est le résultat. Vous pouvez voir qu'il a une longueur de contenu, je ne sais tout simplement pas comment y accéder. p>
merci Stephen P>
Erreurs: 0 P>
String (1457) "HTTP / 1.1 200 OK Date: SAT, 01 août 2009 06:32:11 GMT Server: Apache / 1.3.41 (Darwin ) PHP / 5.2.4 MOD_SSL / 2.8.31 OPENSSL / 0.9.7L Cache-Control: Max-Âge = 60 Expire: Sam, 01 août 2009 06:33:11 GMT Dernière modification: Thu, 23 nov. 17:44 : 53 GMT Etag: "97d620-44b-4565de15" Accepte-gammes: octets Contenu-Longueur: 1099 Connexion: Fermer Type de contenu: Texte / HTML " P>
<?php $curl_handle=curl_init(); $username = ""; $password = ""; $fullurl = "http://www.queensberry.com"; $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_FAILONERROR, 0); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_USERPWD, "$username:$password"); curl_setopt($ch, CURLOPT_URL, $fullurl); $returned = curl_exec($ch); curl_close ($ch); var_dump($returned); ?>
4 Réponses :
ne devrait pas Quand j'ai changé $ FULLURLL code> être " https://www.queensberry.com a> "? p>
$ FULLURL code> comme indiqué et dirigé le code,
var_dump code> affiche la page "sous la construction". P>
Merci Josh Oui, il devrait être https: // mais ce n'était pas le problème. Cela avait besoin de paramètres supplémentaires ajoutés je pense. Un de mes collaborateurs a eu lieu. Je vais devoir le faire partager le code ici. Merci
Voici la solution:
Essayez ceci, il suffit de garder le reste du codage identique que ci-dessus ... changeez curlopt_header sur 0 en fait de sorte que seul le contenu de la page soit renvoyé. P> P>
Si vous avez toujours besoin de l'en-tête, ce qui signifie que le réglage de Curlopt_header sur 0 n'est pas une option, vous pouvez trouver le début du corps en recherchant une ligne vide (deux CRLF). Voir la spécification: http://www.w3.org/protocols/rfc2616/rfc2616 -Sec6.html
Donc, cela devrait donc faire le travail: p>
Je cherche la longueur de l'en-tête en utilisant le curl's getinfo. Puis sous-traitant la réponse: