IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

problème entre php et MySql [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 6
    Points : 7
    Points
    7
    Par défaut 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:

    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    while ($donnees_messages=mysql_fetch_assoc($retour_messages))
    le «or exit(mysql_error())» me donne comme résultat:

    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    $retour_messages=mysql_query('SELECT * FROM A ORDER BY nom1 ASC LIMIT '.$premiereEntree.','.$messagesParPage.'') or exit(mysql_error());
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $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

  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    La source su problème c'est la récupération de ta variable $_GET['page'], en récupérant 0 au lieu de 1 toute la suite se craque (c'est normal que la requête foire ça doit faire un truc du genre LIMIT -4, ce qui n'est pas correct. Donc il faut chercher du côté de la transmission de la valeur.
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    merci Amara c'etait bien ca
    le problème était que j'utilisais un autre $_GET['page'] ailleur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème entre LDAP et mysql dans un même code PHP
    Par tissard dans le forum Langage
    Réponses: 6
    Dernier message: 22/03/2011, 09h04
  2. [MySQL] petit problème de date entre PHP et mySQL
    Par SylvainVV dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/08/2009, 11h54
  3. Problème avec PHP et MySQL
    Par Vatgas dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 09/08/2006, 13h07
  4. Problème entre php et mysql
    Par kornmuse90 dans le forum Apache
    Réponses: 17
    Dernier message: 24/04/2006, 15h52
  5. Problème entre PHP et MySQL
    Par kornmuse90 dans le forum Installation
    Réponses: 12
    Dernier message: 19/04/2006, 18h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo