Enregistrer l'adresse IP des posteurs [Résolu/Fermé]

Signaler
Messages postés
1382
Date d'inscription
dimanche 5 août 2007
Statut
Membre
Dernière intervention
31 mai 2015
-
Messages postés
1219
Date d'inscription
vendredi 29 décembre 2006
Statut
Membre
Dernière intervention
15 mars 2016
-
Bonjour,

J'ai un petit script de livre d'or qui marche très bien.
Je me suis créer une petite partie admin, ou l'adresse IP devrait apparaitre mais elle apparait mal ! J'ai ca "91121" au lieu de l'ip du posteur :s

Je vous donne mon code :

Partie index :
<form method="post" action="suite.php">
Pseudo<br>
<input type="text" name="pseudo">
<br>Message <br>
<input type="password" name="message"><br><br>

<input type="submit" value="Go !"></form>


La sauvegarde du message et de l'ip :
<?php
mysql_connect("sql.olympe-network.com", "xxx", "xxx");
mysql_select_db("xxx");

$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$ip = $_SERVER["REMOTE_ADDR"]; 

mysql_query("INSERT INTO livre VALUES('', '$pseudo', '$message', '$ip')");

mysql_close();
?>

Sachant que j'ai un champ id(mediumint), un champ pseudo(text), un champ message(text) et un champ ip(mediumint)

Ma partie d'administration est :
<?php
mysql_connect("sql.olympe-network.com", "xxx", "xxx");
mysql_select_db("xxx");
 
$reponse = mysql_query("SELECT * FROM livre");
 
 

 
while ($donnees = mysql_fetch_array($reponse) )
{
?>
 
<p>
Message n°<?php echo $donnees['id']; ?> poste par <?php echo $donnees['pseudo']; ?><br />
Message : <?php echo $donnees['message']; ?> <br />
IP : <?php echo $donnees['ip']; ?>
</p><br /><br /><br />
 
<?php
}
 
mysql_close(); 
?>



Comme dit plus haut, tout fonctionne sauf l'ip !
Ca ne vient pas de $_SERVER["REMOTE_ADDR"]; car quand je fait :
echo $_SERVER["REMOTE_ADDR"]; 


J'ai ma vrai IP

Je ne vois pas du tout où est l'erreur !


Je vous remercie d'avance !

3 réponses

Messages postés
1219
Date d'inscription
vendredi 29 décembre 2006
Statut
Membre
Dernière intervention
15 mars 2016
186
bonsoir,

pour le formulaire de mon site, je le fais de la manière suivante:

j'ai rajouter le champs caché dans la balise du formulaire:

<input name="ip" type="hidden" value="<? echo $ip; ?>">


Avant la balise du formulaire il y a:
<? $ip = $_SERVER["REMOTE_ADDR"]; ?>


bonne soirée, si jamais ça peux aider.
Messages postés
1382
Date d'inscription
dimanche 5 août 2007
Statut
Membre
Dernière intervention
31 mai 2015
300
Arf merci mais ca ne marche toujours pas, j'ai encore "91121 " en IP
Messages postés
1219
Date d'inscription
vendredi 29 décembre 2006
Statut
Membre
Dernière intervention
15 mars 2016
186
voici comment je fais:

page d'enregistrement dans la bbd (Form_MSG.php)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="icon" type="image/gif" href="dependant/favicon.gif" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>confirmation d'envoi</title>
</head>
<?
$date = $_POST['date'];
$ip = $_POST['ip'];
$message = nl2br($_POST['message']);
mysql_connect("localhost", "base", "MDP"); // Connexion à MySQL
mysql_select_db("base"); // Sélection de la base 
$reponse = mysql_query("SELECT * FROM table"); // Requête SQL
mysql_query("INSERT INTO table VALUES(' ','$date','$ip','$message')");
mysql_close(); // Déconnexion de MySQL
echo'<p class="Style21">Votre site à été ajouter. Vous allez être redirigé. Bonne journée'
?>

la page d'ajout:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script language="JavaScript">function verifSelection() 
{if (document.forml.site.value == "") {
alert("Ecrire le message avant de l'envoyer !")
return false
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formateur JSP</title>

<link href="http://infoxp.leobaillard.org/dependant/css.css" rel="stylesheet" type="text/css" />
<link href="../dependant/css.css" rel="stylesheet" type="text/css" />
</head>

<body {background-color="#CABOFF"}>
<?php
mysql_connect("localhost", "base", "MDP"); // Connexion à MySQL
mysql_select_db("base"); // Sélection de la base 
$reponse = mysql_query("SELECT * FROM table"); // Requête SQL
 
// On fait une boucle pour lister tout ce que contient la table :
 
while ($donnees = mysql_fetch_array($reponse) )
{
?>
      <?php echo '<p align="left" class="boitemsg">LE : <strong>' .$donnees['date'] .'</strong><br /> PAR : <strong>' .$donnees['formateur'].'</strong><br />Message: <strong>' .$donnees['message'].'</strong>'; ?> 
        <?php
}
mysql_close(); // Déconnexion de MySQL
?>
<?php
 $ip = $_SERVER['REMOTE_ADDR'];//On obtient l'adresse IP
 ?>
	</p>
    <p align="left" class="Style24">Formulaire d'ajout d'un message:</p>
    <form id="form1" name="form1" method="post" action="Form_MSG.php" onSubmit="return verifSelection()">
      <p>
        <input type="hidden" name="date" value="<?php
      setlocale( LC_TIME, 'fr_FR.ISO88591' );
      echo strftime("%A %e %B %Y", time() );
      ?>" />
        Date:<span class="Style3"> </span><?php
      setlocale( LC_TIME, 'fr_FR.ISO88591' );
      echo strftime("%A %e %B %Y", time() );
      ?>
        <br />
        <input type="hidden" name="ip" value="<?	echo $ip; ?>" />
        Adresse IP: <span class="Style3">
          <?	echo $ip; ?>
          </span>
        <br />
        Message:
        <textarea name="message" cols="70" rows="4"></textarea>
        </p>
      <p align="center">
        <input name="Submit" type="submit" class="Style34" value="Ajouter le message" />
        <br />      
          <input name="Submit2" type="reset" class="Style36" value="R&eacute;initialiser le message" />
      </p>
    </form>   

les champs de ma bbd:

ID (mediumint) EXTRA auto-incremente
date (texte)
ip (texte)
message (texte)

PS: pour ce qui est de la date, il se peux que ça ne fonctionne pas, c'est le code de l'hébergeur pour avoir la date en français.
bonne soirée
Messages postés
1382
Date d'inscription
dimanche 5 août 2007
Statut
Membre
Dernière intervention
31 mai 2015
300
Merci beacoup j'ai compris l'erreur,

Pour le champ ip il fallait un "text" pas un "mediumint"

Messages postés
1219
Date d'inscription
vendredi 29 décembre 2006
Statut
Membre
Dernière intervention
15 mars 2016
186
bonjour,

pas de problème !

Bonne journée