Bonjour
j'aimerais faire un livre d'or (ici la page s'appelle livreor.php), comme indiqué sur le site du zero, mais ce message s'affiche tout en bas de ma page :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /mnt/167/sdb/e/c/vyk12/test/livreor.php on line 69
voici la ligne 69 de ma page :
while ($donnees = mysql_fetch_array($reponse))
voici le code entier de ma page (j'ai volontairement laissé les champs vide pour me connecter à MySQL )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title>Livre d'or</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
form, .pages
{
text-align:center;
}
</style>
</head>
<body>
<form method="post" action="livreor.php">
<p>Mon site vous plaît ? Laissez-moi un message !</p>
<p>
Pseudo : <input name="pseudo" /><br />
Message :<br />
<textarea name="message" rows="8" cols="35"></textarea><br />
<input type="submit" value="Envoyer" />
</p>
</form>
<p class="pages">
<?php
mysql_connect(" ", " ", " ");
mysql_select_db("coursphp");
if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$message = nl2br($message);
mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
}
$nombreDeMessagesParPage = 20;
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
if (isset($_GET['page']))
{
$page = $_GET['page'];
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM tutos.livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
echo '<p><gras>' . $donnees['pseudo'] . '</gras> a écrit :<br />' . $donnees['message'] . '</p>';
}
mysql_close();
?>
</body>
</html>
j'ai belle et bien créé une table nommée livreor avec 3 champs :
id, de type INT, et en EXTRA : Auto_increment, et bien entendu du coup en tempts que clé.
pseudo, de type VARCHAR
message, de type TEXT.
Si je dois préciser autre chose, dites-le moi
merci par avance, à bientôt
|