Erreur avec mysql_fetch_array() script forum
Résolu/Fermé
A voir également:
- Erreur avec mysql_fetch_array() script forum
- Erreur 0x80070643 - Accueil - Windows
- Script vidéo youtube - Guide
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Plinko avis forum ✓ - Forum Vos droits sur internet
- Coco forum ✓ - Forum Réseaux sociaux
5 réponses
Autumn`Tears
Messages postés
1054
Date d'inscription
samedi 14 mars 2009
Statut
Membre
Dernière intervention
23 octobre 2013
145
3 mars 2012 à 13:27
3 mars 2012 à 13:27
Salut,
Est-ce que tu pourrais préciser l'erreur s'il te plaît ?
Est-ce que tu pourrais préciser l'erreur s'il te plaît ?
Salut Autumn'Tears,
J'ai pas voulu d'un forum de type phpbb puisque j'ai que 5Go sur mon serveur. J'ai donc opté pour un petit forum qui sera facilement adaptable sur mon site. J'ai donc mit les table dans ma base de donné en entrant bien les identifiant de ma base de donné j'ai aucune erreur à ce niveau là, sauf quand je souhaite créer un sujet dans une catégorie. Je peut créer la catégorie, entré dans la catégorie ( via l'url " list_topics.php?parent=1 " qui me dit qu'il n'y a pas de sujet c'éer, je fait donc créer un sujet et là, je me trouve sur la page " new_topic.php " ce fichier sert a créer le sujet dans la catégorie "1" dans la lien précédemment dit et là j'ai une erreur ligne 9 de ce fichier ( new_topic.php ). Cette ligne est avec le DOCTYPE donc je vais directement te mettre tout ce qu'il y a dans avant le DOCTYPE:
J'ai absolument tout essayé, j'ai regardé le manuel de chez php concernant le " mysql_fetch_array " mais je ne trouve pas ( ou suis-je peut-être trop bête ^^ )
Merci :)
J'ai pas voulu d'un forum de type phpbb puisque j'ai que 5Go sur mon serveur. J'ai donc opté pour un petit forum qui sera facilement adaptable sur mon site. J'ai donc mit les table dans ma base de donné en entrant bien les identifiant de ma base de donné j'ai aucune erreur à ce niveau là, sauf quand je souhaite créer un sujet dans une catégorie. Je peut créer la catégorie, entré dans la catégorie ( via l'url " list_topics.php?parent=1 " qui me dit qu'il n'y a pas de sujet c'éer, je fait donc créer un sujet et là, je me trouve sur la page " new_topic.php " ce fichier sert a créer le sujet dans la catégorie "1" dans la lien précédemment dit et là j'ai une erreur ligne 9 de ce fichier ( new_topic.php ). Cette ligne est avec le DOCTYPE donc je vais directement te mettre tout ce qu'il y a dans avant le DOCTYPE:
<?php //Cette page permet d'ajouter un sujet include('config.php'); if(isset($_GET['parent'])) { $id = intval($_GET['parent']); if(isset($_SESSION['username'])) { $dn1 = mysql_fetch_array(mysql_query('select count(c.id) as nb1, c.name from categories as c where c.id="'.$id.'"')); if($dn1['nb1']>0) { ?>
J'ai absolument tout essayé, j'ai regardé le manuel de chez php concernant le " mysql_fetch_array " mais je ne trouve pas ( ou suis-je peut-être trop bête ^^ )
Merci :)
Autumn`Tears
Messages postés
1054
Date d'inscription
samedi 14 mars 2009
Statut
Membre
Dernière intervention
23 octobre 2013
145
3 mars 2012 à 14:20
3 mars 2012 à 14:20
En fait j'aurais voulu le message d'erreur directement, afin de savoir si ça vient de la requête, ou si $id n'existe pas, ou si la connexion à la base ne se fait pas...
j'ai ce message d'erreur:
Et la ligne 9 correspond à ceci:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /public_html/truc_bidul/new_topic.php on line 9
Et la ligne 9 correspond à ceci:
$dn1 = mysql_fetch_array(mysql_query('select count(c.id) as nb1, c.name from categories as c where c.id="'.$id.'"'));
Autumn`Tears
Messages postés
1054
Date d'inscription
samedi 14 mars 2009
Statut
Membre
Dernière intervention
23 octobre 2013
145
3 mars 2012 à 23:33
3 mars 2012 à 23:33
essaie ça :
var_dump($id);
$dn1 = mysql_query('select count(c.id) as nb1, c.name from categories as c where c.id="'.$id.'"') || die (mysql_error());
à la place du $dn1 actuel
var_dump($id);
$dn1 = mysql_query('select count(c.id) as nb1, c.name from categories as c where c.id="'.$id.'"') || die (mysql_error());
à la place du $dn1 actuel
Autumn`Tears
Messages postés
1054
Date d'inscription
samedi 14 mars 2009
Statut
Membre
Dernière intervention
23 octobre 2013
145
4 mars 2012 à 12:31
4 mars 2012 à 12:31
Essaie comme ça : (il doit falloir un GROUP BY quand tu utilises des COUNT)
$dn1 = mysql_query('select count(c.id) as nb1, c.name from categories as c where c.id="'.$id.'" GROUP BY c.id') || die (mysql_error());
$dn1 = mysql_query('select count(c.id) as nb1, c.name from categories as c where c.id="'.$id.'" GROUP BY c.id') || die (mysql_error());
Autumn`Tears
Messages postés
1054
Date d'inscription
samedi 14 mars 2009
Statut
Membre
Dernière intervention
23 octobre 2013
145
4 mars 2012 à 16:24
4 mars 2012 à 16:24
Est-ce que var_dump($id);
te retourne quelque chose ? Si non, ta variable $id n'est pas définie, sinon, vérifie en base que $id a une correspondance...
te retourne quelque chose ? Si non, ta variable $id n'est pas définie, sinon, vérifie en base que $id a une correspondance...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mc4us
Messages postés
33
Date d'inscription
dimanche 9 octobre 2011
Statut
Membre
Dernière intervention
4 mars 2012
7
4 mars 2012 à 03:03
4 mars 2012 à 03:03
Je pense que le problème est au niveau de la requête.
Puisque mysql_fetch_array devrait prendre en argument un objet ressource et que mysql_query ne le retourne pas .
Alors essayez d'exécuter depuis ta Base de donnée la requête en donnant un id=3 ou quelque chose comme ça puis vérifiez si la requête est correcte ou pas .
Puisque mysql_fetch_array devrait prendre en argument un objet ressource et que mysql_query ne le retourne pas .
Alors essayez d'exécuter depuis ta Base de donnée la requête en donnant un id=3 ou quelque chose comme ça puis vérifiez si la requête est correcte ou pas .
Autumn`Tears
Messages postés
1054
Date d'inscription
samedi 14 mars 2009
Statut
Membre
Dernière intervention
23 octobre 2013
145
4 mars 2012 à 12:29
4 mars 2012 à 12:29
En fait ça ne changera rien... Il faut un GROUP BY quand on utilise les opérateurs tels que COUNT, SUM, etc...