Notice: Undefined variable avec un script pris sur le web

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Notice: Undefined variable avec un script pris sur le web

par Ryle » 03 mai 2007, 15:24

Pour l'explication malgré tout, c'est parce que ton serveur ne doit pas avoir la directive register_globals d'activée (ce qui est bien).
Tu ne peux donc pas accéder aux variables du serveur par leurs petits noms (ce qui est mal), et il te faut spécifier explicitement qu'il s'agit d'une variable du serveur en passant par le tableau super global $_SERVER[] :)

par doudou34 » 03 mai 2007, 12:46

Oui ca marche !!! merci beaucoup beaucoup a toi pour ton aide

par guilt92 » 03 mai 2007, 11:59

C'est pas une question d'idée... C'est une question de logique... Ton erreur te dit de regarder la ligne 5 sur laquelle une variable n'existe pas, du nom de REMOTE_ADDR...

Or tu as cette ligne $IP = $REMOTE_ADDR;
Je te conseille donc de faire plutot $IP = $_SERVER['REMOTE_ADDR']; mais cela ne garantie pas que le script marchera, ce qui peut etre le probleme quand on prend un script et qu on le colle tel quel...

A voir... Bon courage...

Notice: Undefined variable avec un script pris sur le web

par doudou34 » 03 mai 2007, 10:47

Bonjour a tous le monde ;

J'ai trouvé sur le web un script qui me sera utile, j'ai donc collé et adapté le code sur ma page. Au lancement de ma page, j'ai un message d'erreur du type :

Notice: Undefined variable: REMOTE_ADDR in c:\web\exercice\compt\index.php on line 5

voici le code :

Code : Tout sélectionner

<? require_once('../Connections/exerc.php'); // IP du visiteur $IP = $REMOTE_ADDR; // Date/heure courante en minutes $date0 = time()/60; // Durée de vie max $vie = 5; // Suppression des anciens $SQL = "DELETE FROM compteur"; $SQL.= " WHERE start<".($date0-$vie); $result = mysql_query($SQL); // Stockage du hit courant $SQL = "SELECT * FROM compteur WHERE IP='$IP'"; $result = mysql_query($SQL); if(mysql_num_rows($result)>0) { // Si déjà là, on modifie $SQL = "UPDATE compteur SET start=$date0"; $SQL.= " WHERE IP='$IP'"; $result = mysql_query($SQL); } else { // sinon on ajoute $SQL = "INSERT INTO compteur(IP,start)"; $SQL.= " VALUES('$IP',$date0)"; $result = mysql_query($SQL); } // Nombre de visiteurs en ligne $SQL = "SELECT count(IP) FROM compteur"; $val= mysql_fetch_array(mysql_query($SQL)); $online = $val[0]; // Déconnnexion mysql_close(); // Affichage ?>
Si quelqu'un a une idée

Merci d'avance a tous