[HTML/PHP] Récupérer une donnée

Récupérer une donnée [HTML/PHP] - HTML/CSS - Programmation

Marsh Posté le 21-07-2005 à 19:59:43    

bonjour,
 
voila j'ai un p'tit problème, j'ai la page html suivante :
 
ma page ici
 
je voudrais savoir comment faire pour recuperer en php une donnée précise (par ex la température actuelle). j'ai pas mal chercher, j'ai trouvé quelques pistes mais rien n'a vraiment marché.
 
merci  :hello:


Message édité par thinou le 21-07-2005 à 20:00:28
Reply

Marsh Posté le 21-07-2005 à 19:59:43   

Reply

Marsh Posté le 21-07-2005 à 20:11:06    

Branches un thermomètre sur le serveur, via le port série. Ensuite t'y accèdes avec php :o


---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
Reply

Marsh Posté le 21-07-2005 à 20:17:51    

:D lol
 
  :non:

Reply

Marsh Posté le 22-07-2005 à 08:53:34    

up

Reply

Marsh Posté le 22-07-2005 à 09:47:08    

dans l'ordre :
 
1) recuperer la page dans une variable
2) analyser le contenu pour recuperer ce qu'il faut
3) afficher le resultat
 
1) file_get_contents()  
http://www.nexen.net/docs/php/anno [...] ntents.php
2) expression regulière
http://www.nexen.net/docs/php/anno [...] ch-all.php
3) :D
 
un exemple : http://step.moultiplayers.net/temperature.php
 
Donne un petit exemple de ce que tu as dejà fait  
 
@+


Message édité par bl@p_psx le 23-07-2005 à 19:56:59

---------------
:Moultiplayers:.:Quatuor Chevalier:.:Admin G15-france.com:.:Wiki -G15-france:.:-Papa-:.
Reply

Marsh Posté le 22-07-2005 à 19:47:09    

la fonction file_get_contents ne marche pas avec easyphp ?  :??:

Reply

Marsh Posté le 22-07-2005 à 20:16:59    

si... c'est peut être ton provider qui n'autorise pas la récupération de fichier distant ? :??:

Reply

Marsh Posté le 22-07-2005 à 20:18:41    

bah non j'ai testé sur le fichier hebergé chez wanadoo avec free et easyphp

Reply

Marsh Posté le 22-07-2005 à 20:51:20    

essayé avec lycos et ca marche pas non plus  :ouch:

Reply

Marsh Posté le 22-07-2005 à 20:53:33    

voila ce que j'ai essayé
 

Citation :

<?php
 
$ma_page = file_get_contents('http://perso.wanadoo.fr/meteodata/test/index.html');
 
preg_match_all("/(<([\w]+)[^>]*> )(.*)(<\/\\2> )/", $ma_page, $matches, PREG_SET_ORDER);
 
foreach ($matches as $val) {
    echo "matched: " . $val[0] . "\n";
 
}
 
?>

Reply

Marsh Posté le 22-07-2005 à 20:53:33   

Reply

Marsh Posté le 23-07-2005 à 03:25:13    

exemple de code qui fonctionne :
 

Code :
  1. <?
  2. $contents = file_get_contents('http://perso.wanadoo.fr/meteodata/test/index.html') ;
  3. preg_match_all("/(<([\w]+)[^>]*> )([^<]*)(<\/\\2> )/", $contents, $matches);
  4. $temp_actuelle = htmlentities($matches[3][13]);
  5. ?>


 
pour connaitre la valeur du tableau $matches à afficher :  

Code :
  1. echo '<pre>';
  2. print_r($matches);
  3. echo '</pre>';


ca affiche tout le contenus du tableau
 
@+


---------------
:Moultiplayers:.:Quatuor Chevalier:.:Admin G15-france.com:.:Wiki -G15-france:.:-Papa-:.
Reply

Marsh Posté le 23-07-2005 à 12:53:39    

tu l'as testé ?

Reply

Marsh Posté le 23-07-2005 à 13:02:27    

aie normale qu'en local ca marche pas
 
j'utilise easyphp 1.6 et j'ai la version 4.2.0 de PHP or la fonction file_get_contents() a été introduite en PHP 4.3.0  :pt1cable:

Reply

Marsh Posté le 23-07-2005 à 18:46:12    

bl@p_psx a écrit :


$temp_actuelle = htmlentities($matches[3][13]);


 
tu pourrais m'expliquer ce passage là ? j'arrive pas a comprendre  :sarcastic: . merci

Reply

Marsh Posté le 23-07-2005 à 19:17:13    

l'exression reguliere genere un tableau multidimentionnel.
 
si tu fait un :

Code :
  1. echo '<pre>';
  2. print_r($matches);
  3. echo '</pre>';


tu veras le contenu complet du tableau
 
La valeur que tu cherche ( la temperature actuelle ) est est dans le tabelau $matches, pour la clé 3, cette clé contenant un nouveau tableau, et la temperature est à la clé 13 ...
 
le htmlentities, c'est pour que le ° soit convertis en caractere html ( &deg; ) afin d'avoir un code valide XHTML ...
 
@+


---------------
:Moultiplayers:.:Quatuor Chevalier:.:Admin G15-france.com:.:Wiki -G15-france:.:-Papa-:.
Reply

Marsh Posté le 23-07-2005 à 19:42:02    

ok merci pour les explications  :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed