Se connecter avec
S'enregistrer | Connectez-vous

Probleme pour faire mon livre d'or en PHP

Dernière réponse : dans Programmation

Bonjour, quelqu'un peu m'aider et me dire pourquoi mon livre d'or ne fonctionne pas svp.



<!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("localhost", "root", "");
mysql_select_db("coursphp");



if (isset($_POST['pseudo']) AND isset($_POST['message']))
{

$pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES);

$message = htmlentities($_POST['message'], ENT_QUOTES);
$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 livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
echo '<p><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . '</p>';
}

mysql_close();
?>

</body>
</html>

Autres pages sur : probleme livre php

Lassé par la pub ? Créez un compte

voila le message d'erreur; Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\mes sites web\testphp\livredor.php on line 51
Page :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\mes sites web\testphp\livredor.php on line 84;

Quand quelqu'un veut poster un message ça m'est une page d'erreur.

c'est une erreur de requete ou de connection à mysql
rajoutes des "or die (mysql_error ());" après les instruction mysql
exemple:
  1. mysql_connect("localhost", "root", "" ) or die (mysql_error ());

ca te donnera plus d'info que tu pourras poster

coca25 a dit :
ca je sais mais je t'ai donné l'instruction pour que tu postes l'erreur
je peux pas deviner


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\mes sites web\testphp\livredor.php on line 51
Aucune base n'a été sélectionnée

La j'ai cette erreur l'autre est parti quan j'ai fais ce que tu m'as di

t'as pas du bien faire, j'expliques:
le "or die" sert à arreter le script en cas d'erreur
le "mysql_error" retourne l'erreur qui vient de se produire

tu dois le mettre apres chaque instruction mysql afin de détécter si une erreur se produit.

le message que tu as poste indique que la requete que tu as lancée (select ...) n'a pas retourné de résultat, donc:
1. tu n'as rien dans ta base
2. la connexion à mysql échoue (le die... donnera plus d'info sur le pourquoi)
Lassé par la pub ? Créez un compte
Tom's guide dans le monde