J'ai créé un livre d'or pour mon site avec le code du sdz, mais il ne fonctione pas chez moi.
Le problème est que si l'utilisateur laisse un des deux (ou les deux) champs vides, le message s'affiche quand même, mais avec les champs vides.
<script language = "Javascript"> function verifForm(document) { if(document.pseudo.value = "" || document.message.value == "") {
alert ('Please fill all the fields.'); } } </script>
</head>
<body>
<form method="post" action="guestbook.php">
<p>You would say something good about this site?<br />
Leave us a message...
</p>
$pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
$message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
// On enregistre le message mysql_query("INSERT INTO guestbook VALUES('', '" . $pseudo . "', '" . $message . "')"); }
// --------------- Etape 2 ----------------- // On écrit les liens vers chacune des pages // -----------------------------------------
$nombreDeMessagesParPage = 10; //On définit le nombre de messages par pae.
// On récupère le nombre total de messages $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM guestbook'); $donnees = mysql_fetch_array($retour); $totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
echo"$totalDesMessages messages are now in the guestbook! <br /><br />"; // Puis on fait une boucle pour écrire les liens vers chacune des pages echo'Page : '; for($i = 1 ; $i <= $nombreDePages ; $i++) { echo'<a href="guestbook.php?page=' . $i . '">' . $i . '</a> '; }
?>
</p> <?php // --------------- Etape 3 --------------- // Maintenant, on va afficher les messages // ---------------------------------------
if(isset($_GET['page'])) { $page = intval($_GET['page']); // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4) } else// La variable n'existe pas, c'est la première fois qu'on charge la page { $page = 1; // On se met sur la page 1 (par défaut) }
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM guestbook ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
Utilise empty, je crois, pour vérifier que tes champs ne sont pas vides.
Problème pour mon livre d'or
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.