Enregistrer l'adresse IP des posteurs
Résolu
letoine
Messages postés
1624
Statut
Membre
-
Nico_ Messages postés 1302 Statut Membre -
Nico_ Messages postés 1302 Statut Membre -
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 :
La sauvegarde du message et de l'ip :
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 :
Comme dit plus haut, tout fonctionne sauf l'ip !
Ca ne vient pas de $_SERVER["REMOTE_ADDR"]; car quand je fait :
J'ai ma vrai IP
Je ne vois pas du tout où est l'erreur !
Je vous remercie d'avance !
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 !
A voir également:
- Enregistrer l'adresse IP des posteurs
- Ethernet n'a pas de configuration ip valide - Guide
- Comment connaître son adresse ip - Guide
- Audacity enregistrer son pc - Guide
- Adresse mac - Guide
- Adresse ip - Guide
3 réponses
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:
Avant la balise du formulaire il y a:
bonne soirée, si jamais ça peux aider.
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.
Arf merci mais ca ne marche toujours pas, j'ai encore "91121 " en IP
voici comment je fais:
page d'enregistrement dans la bbd (Form_MSG.php)
la page d'ajout:
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
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é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