2016-11-04 2 views
0

ci-dessous le code ne fonctionne pas sur un serveur, mais fonctionne très bien dans d'autres. Je reçois cette erreur:Curl ne fonctionne pas dans un serveur, mais OK dans tous les autres

Warning: simplexml_load_string(): Entity: line 1: parser error : Opening and ending tag mismatch: HR line 1 and body in testchecker.php on line 11 
Warning: simplexml_load_string(): dden.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/5.5.20</h3></body> in testchecker.php on line 11 
Warning: simplexml_load_string():^in testchecker.php on line 11 
Warning: simplexml_load_string(): Entity: line 1: parser error : Opening and ending tag mismatch: HR line 1 and html in testchecker.php on line 11 
Warning: simplexml_load_string(): Entity: line 1: parser error : Premature end of data in tag body line 1 in testchecker.php on line 11 
Warning: simplexml_load_string(): Entity: line 1: parser error : Premature end of data in tag html line 1 in testchecker.php on line 11 
Warning: Invalid argument supplied for foreach() in testchecker.php on line 12 


    <?php 
set_time_limit(0); 

$url="http://test"; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
$data = curl_exec($ch); 
curl_close($ch); 
$xml = simplexml_load_string($data); 
foreach($xml->User as $child){ 
    echo $child->Id."<br/>";   
} 
?> 

Je ne comprends pas pourquoi cette erreur se produit, car dans les serveurs locaux et d'autres fonctionne correctement. Sur dreamhost, ce n'est pas. Quelqu'un peut-il m'aider dans ce domaine.

+0

1) n'utilisez pas d'écrans d'impression si vous pouvez coller des informations textuelles dans la question et 2) indiquez dans votre code les lignes sur lesquelles les erreurs se plaignent. – fvu

+0

mis à jour, s'il vous plaît voir –

+0

1 - vérifier package php5-curl est installé – Fky

Répondre

0

J'ai résolu le problème. L'adresse IP était bloquée, donc le message interdit devenait, au lieu de xml. Débloquer l'ip tout fixé.

+0

Vous pouvez maintenant supprimer la question. –

1

Le message d'erreur vous indique déjà, ce qui est faux

Warning: simplexml_load_string(): Entity: line 1: parser error : Opening and ending tag mismatch: HR line 1 and body in testchecker.php on line 11 
Warning: simplexml_load_string(): dden.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/5.5.20</h3></body> in testchecker.php on line 11 

XML exige que toutes les balises sont fermées, alors que HTML, vous pouvez omettre la balise de fermeture de temps en temps.

Dans ce cas, vous avez une étiquette <hr> sans étiquette de fermeture correspondante. Ceci est parfaitement valide en HTML. Cependant, il n'est pas XML bien formé, qui est requis par simplexml_load_string

Description
Takes a well-formed XML string and returns it as an object.

+0

mais toutes les étiquettes sont fermées. mais ne sais pas pourquoi je reçois le même eror –

+0

Mais le message d'erreur montre la balise 'hr' non fermée. –