Se connecter / S'enregistrer
Votre question

Message intempestif sur mon livre d' or

Tags :
  • Javascript
  • Programmation
Dernière réponse : dans Programmation
27 Janvier 2007 18:06:52

Bonjour auriez-vous un moyen de stopper ces messages intempestifs sur mon livre d' or:

http://ns23.hosteur.com/~bpzoom/index.php?page=livredor

J' en reçoit une dizaine chaque jour !

Merci d' avance !

Autres pages sur : message intempestif livre

28 Janvier 2007 01:00:30

Auriez vous une réponse plus claire ? Je me suis rendu sur le lien, je ne comprend rien ! Merci d' avance !
Contenus similaires
28 Janvier 2007 01:29:55

Utilises htmlentities() dans le php, avant d'insérer les données dans la base...
Comme tu le vois, j'ai pu mettre du javascript qui ouvre une page d'idn automatiquement... On peut faire bien pire en js...
28 Janvier 2007 01:51:11

Gadjet62 je vais essayer de te parler en termes humains, car sans vouloir vexer personne j'ai l'impression que les autres n'ont pas compris ta demande.

D'abord dis-moi, le livre d'or que tu as sur ton site, tu n'as rien du installer toi-même n'est ce pas ? C'est ton hebergeur qui te l'a proposé ?
Si c'est le cas, la seule réponse que je peux te donner est... de changer de livre d'or, car celui-là n'est pas du tout protégé et tu ne peux rien y faire (j'avais le même problème chez free, toujours pas résolu d'ailleurs).

Si ce n'est PAS le cas :

- tu as du installer toi-même un script PHP comme un grand, donne nous le nom du script et on te dira ce qu'il faut faire.
- tu as programmé le livre d'or toi-même en PHP, dans ce cas mets nous ton code ici afin qu'on puisse l'examiner et t'apporter une réponse ;) . Voilà.
28 Janvier 2007 16:18:46

Voilà le script:

<?
require("config.inc.php3");

foreach ($_REQUEST as $key => $val) {
$$key = $val;
}


if($_GET['topic']=='form') // on affiche le formulaire
{
echo "<center><font face=\"$face\" color=\"$color\" size=\"2\"><b>Ajouter un message au Livre d'or</b></font></center><br>";
echo "<form method=\"POST\" action=\"$index"."$signe"."topic=poster\">\n";
echo "<input type=\"hidden\" name=\"topic\" value=\"poster\">\n";
echo "<center><input type=\"\" name=\"nom\" size=\"30\" value=\"votre nom\"></center><br>\n";
echo "<center><textarea name=\"message\" rows=\"12\" cols=\"36\" wrap=\"virtual\">votre message ...</textarea></center>\n";
echo "<center><input type=\"submit\" name=\"submit\" value=\"Poster le message ...\"></center>\n\n";
echo "</form>";
echo "<center><font face=\"$face\" color=\"$color\" size=\"2\"><b><a href=\"$index\"><< Retour au Livre d'or</a></b></font></center>\n";
echo "<hr size=1 width=\"310\">\n";
}
elseif($topic=='poster') // on poste les infos du formulaire
{
if(empty($nom) OR empty($message) OR $nom=='votre nom' OR $message=='votre message ...')
{
echo "<center><font face=\"$face\" color=\"$col_alert\" size=\"2\"><b>Erreur dans les champs !</b></center><br>\n";
echo "<center><a href=\"Javascript:history.back()\"><< Merci de retourner au formulaire</a></font></center>\n";
}
else
{
$db = mysql_connect("$host", "$login", "$password");
mysql_select_db("$base",$db);

$date = date("d-m-Y");
$heure = date("H\hi");

$message = addslashes($message);
$nom = addslashes($nom);

mysql_query("INSERT INTO goldenbook_tbl VALUES('','$nom','$message','$date','$heure')");
mysql_close();

Header("Location: $index");
}
}
else // on affiche le livre d'or
{
$db = mysql_connect("$host", "$login", "$password");
mysql_select_db("$base",$db);

if($limit==''){ $limit = 0; }

$count_req = mysql_query("SELECT id FROM goldenbook_tbl");
$count = mysql_numrows($count_req);

$comptage_req = mysql_query("SELECT * FROM goldenbook_tbl ORDER BY id DESC LIMIT $limit, 10");
$comptage = mysql_numrows($comptage_req);

echo "<center><font face=\"$face\" color=\"$color\" size=\"2\"><b>$count messages | ";
echo "<a href=\"$index"."$signe"."topic=form\">Ajouter un message</a> | ";
echo "<hr size=1 width=\"$width\">\n";

$i=0;
WHILE($i!=$comptage)
{
$nom = mysql_result($comptage_req,$i,"nom");
$message = mysql_result($comptage_req,$i,"message");
$date = mysql_result($comptage_req,$i,"date");
$heure = mysql_result($comptage_req,$i,"heure");

$message = stripslashes(stripslashes($message));
$nom = stripslashes(stripslashes($nom));

echo "<center><div align=\"center\">\n";
echo "<table width=\"$width\" bgcolor=\"$bgcolor\">\n";
echo "<tr><td bgcolor=\"$bgtitre\"><font face=\"$potitre\" color=\"$cotitre\" size=2> <b>$nom</b></font> <font face=\"verdana\" size=\"1\">($date à $heure)</font></td></tr>\n";
echo "<tr><td><font face=\"$pomessa\" color=\"$comessa\" size=2><blockquote>$message</font></td></tr>\n";
echo "</table></div></center><br>\n\n";

$i++;
}

// gestion des liens pages ----------------------------
$pages = $count / 10;
$pages = floor($pages);

if($count>10)
{
$footer = "Pages: <a href=\"$index"."$signe"."limit=0\"><b>index</b></a>\n";

if($count==40){ $i = 1; }else{ $i = 0; }

$comptage = 10;
$page_num = 2;
WHILE($i!=$pages)
{
if($limit==$comptage)
{
$footer .= " | <b>$page_num</b>\n";
$comptage += 10;
$page_num++;
$i++;
}
else
{
$footer .= " | <a href=\"$index"."$signe"."limit=$comptage\"><b>$page_num</b></a>\n";
$comptage += 10;
$page_num++;
$i++;
}
}
}

$reste = $count - $limit - 10;
$reste_limit = $limit + 10;

if($reste<=0)
{
$reste = "Fin des messages";
$avant = "";
$apres = "";
}
else
{
$reste = "10 affichés - Reste ";
$reste .= $count - $limit - 10;
$avant = "<a href=\"$index"."$signe"."limit=$reste_limit\">";
$apres = "</a>";
}

if($count==0)
{
$reste = "Le livre d'or est vide pour le moment";
$avant = "";
$apres = "";
}

echo "<center><font face=\"$face\" color=\"$color\" size=\"2\">[$avant"."$reste"."$apres]</font></center><br>\n";
echo "<center><font face=\"$face\" color=\"$color\" size=\"2\">$footer</font></center>\n";
echo "<hr size=1 width=\"$width\">\n";

mysql_close();
}
?>
28 Janvier 2007 16:32:17

il faut remplacer ca:
  1. $message = addslashes($message);

par
  1. $message = htmlentities ($message, ENT_QUOTES);

ca n'arrêtera peut etre pas les messages mais enlevera leur interet et ceux qui les envoient se lasseront
28 Janvier 2007 20:10:38

Ce sont des tobots hein ;) 
28 Janvier 2007 21:06:51

Sinon il existe des scripts qui integrent des methodes pour stopper le "spam" des formulaires. Faut chercher un peu sur le net.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS