Erreur MySQL/PHP classique mais ...

Résolu/Fermé
Utilisateur anonyme - 26 oct. 2008 à 19:16
 Utilisateur anonyme - 26 oct. 2008 à 19:40
Salut,
Avant d'apprendre à mon PC à voler, je pense que je vais d'abord demander votre avis.
Oui, ça m'énerve toujours quand un script ne marche pas alors qu'il n'y a pas de raison.
L'insulte qu'il me sort, est classique, mais bon ...
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/d/djfbprod/html/contributeur/report.php on line 68
Le voici le bougre :
<?php
mysql_connect("mysql", "identifiant", "Je ne te le dirais pas ! NAH !");
mysql_select_db("djfbprod_else");

function writepage() {
// On écrit les liens vers chacune des pages
// -----------------------------------------
 
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 5;
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM ccmcontrib_report ');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Pages : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="report.php?page=' . $i . '">' . $i . '</a> ';
}
}
writepage();

 
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
 
if (isset($_GET['page']))
{
        $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse
}
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 ccmcontrib_report ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage) or die ("Erreur SQL : ".mysql_error());
 
while ($donnees = mysql_fetch_array($reponse)) //ligne 68 !!!
{
// mon code ...
}
 
mysql_close();
?>


J'avoue, ça sort en grande partie du SDZ mais là n'est pas la question.
A voir également:

2 réponses

Utilisateur anonyme
26 oct. 2008 à 19:40
Ah non c'est bon, j'avais inclue des valeurs dans une fonction, du coup comme c'est de la POO bah ça n'y sort pas et ça fausse toute la requête ^^

Merci à toi quand même d'être intervenue.
a++
1
Bonjour

ça m'énerve toujours quand un script ne marche pas alors qu'il n'y a pas de raison
Première leçon : quand ça ne marche pas, c'est dans 99,999999999999% des cas TOI qui as tort.

Si la ligne 66 avec son die est franchie avec succès, et que le $reponse est quand même mauvais, c'est peut-être que tu modifies toi-même le $reponse dans ton code à l'intérieur du while
0