problème entre php et MySql
bonjour :)
j'ai récupéré un programme sur le net qui m'affiche page par page des données provenant de ma base MySql, qui contient 7 données. celui-ci marche très bien tout seul, mais dès que je veux l'intégrer dans un programme par:
require("A.php");
ou par
include ('A.php');
j'ai une erreur mysql. qui me renvoie:
Citation:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in A.php on line 69
je vous met la partie de mon programme qui me cause des problèmes ça sera plus facile à expliquer.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| $messagesParPage=4;
//echo "$messagesParPage";//renvoie le même résultat "4"
$retour_total=mysql_query('SELECT COUNT(*) AS total FROM A');
//echo "$retour_total";//renvoie "Resource id #8" au lieu de "Resource id #3"
$donnees_total=mysql_fetch_assoc($retour_total);
//echo "$donnees_total";//renvoie le même résultat "Array"
$total=$donnees_total['total'];
//echo "$total";//renvoie le même résultat "7"
$nombreDePages=ceil($total/$messagesParPage);
//echo "$nombreDePages";//renvoie le même résultat "2"
if(isset($_GET['page']))
{
$pageActuelle=intval($_GET['page']);
//echo "$pageActuelle";// renvoie "0" au lieu de "1"
if($pageActuelle>$nombreDePages)
{
$pageActuelle=$nombreDePages;
}
}
else
{
$pageActuelle=1;
}
$premiereEntree=($pageActuelle-1)*$messagesParPage;
//echo "$premiereEntree";//renvoie -4 au lieu de 0
$retour_messages=mysql_query('SELECT * FROM A ORDER BY nom1 ASC LIMIT '.$premiereEntree.','.$messagesParPage.'') or exit(mysql_error());
//echo "$retour_messages";//renvoie rien au lieu de Resource id #4
while ($donnees_messages=mysql_fetch_assoc($retour_messages)) |
la ligne 69 est la ligne juste au dessus :
Code:
while ($donnees_messages=mysql_fetch_assoc($retour_messages))
le «or exit(mysql_error())» me donne comme résultat:
Citation:
you have an error in my SQL syntax; check the manual that corresponds to your MySql version for the right syntax to use near '-4,4' at the ligne 1.
les différents //echo sont la comparaison entre «quand cela marche pas» et quand «ça marche» :)
je pense avoir tout mis alors si quelqu'un peu m'aider
ps: si je modifie la ligne:
Code:
$retour_messages=mysql_query('SELECT * FROM A ORDER BY nom1 ASC LIMIT '.$premiereEntree.','.$messagesParPage.'') or exit(mysql_error());
par
Code:
$retour_messages=mysql_query('SELECT * FROM A ORDER BY nom1 ASC LIMIT '.$messagesParPage.'') or exit(mysql_error());
dans ce cas j'affiche la page, mais impossible d'aller à la page suivante :(