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 :

erreur php sql LIMIT 0,10; [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 107
    Par défaut erreur php sql LIMIT 0,10;
    Bonjour à tous,

    Voici mon petit problème concernant l'affichage de 10 lignes maximum par page : en effet j'ai cette erreur qui s'affiche et je ne comprend pas le problème ?
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT10, 10' at line 1
    Voici mon code php :
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    <?php
      error_reporting(E_ALL);
      // se connecter à la base de données
      require_once('conn_locasaison.php'); 
      
      $maxRows_rsTousLog = 10;
      $pageNum_rsTousLog = 0;
      if (isset($_GET['pageNum_rsTousLog'])) {
        $pageNum_rsTousLog = $_GET['pageNum_rsTousLog'];
      }
      $startRow_rsTousLog = $pageNum_rsTousLog * $maxRows_rsTousLog;
      
      /*$colname_rsTousLog = "-1";
      if (isset($_SERVER['dateLog'])) {
        $colname_rsTousLog = (get_magic_quotes_gpc()) ? $_SERVER['dateLog'] : addslashes($_SERVER['dateLog']);
      }*/
    
      mysql_select_db($database_conn_locasaison, $conn_locasaison);
      $query_rsTousLog = 'SELECT * FROM logement WHERE libreLog=1 ORDER BY dateLog DESC LIMIT 0, 10;';
      $rsTousLog = mysql_query($query_rsTousLog,$conn_locasaison) or die(mysql_error());
      $row_rsTousLog = mysql_fetch_assoc($rsTousLog);
      
      if (isset($_GET['totalRows_rsTousLog'])) {
        $totalRows_rsTousLog = $_GET['totalRows_rsTousLog'];
      } else {
        $all_rsTousLog = mysql_query($query_rsTousLog);
        $totalRows_rsTousLog = mysql_num_rows($all_rsTousLog);
      }
      $totalPages_rsTousLog = ceil($totalRows_rsTousLog/$maxRows_rsTousLog)-1;
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	<title>Accueil | tous les logements disponibles</title>
    </head>
    <link href="locaStyle.css" rel="stylesheet" type="text/css" />
    <body>
    <div id="menuG"><?php include ('header.php'); ?>
      <div id="main">
      <div id="logo"><img src="siteImages/LSImmoPetit.PNG" alt="LogoLsimmo" border="0"/></div>
      <div id="bienvenue"><br />
        </div>
      <div id="contenu">
    <?php
      // tableau qui affiche la liste de tous les logements
      echo '<table border="0" cellspacing="0" cellpadding="3" id="logDispo">
            <tr><td id="titre" colspan="2">Liste de tous les logements disponibles</td></tr>
            <tr><td>&nbsp;</td></tr>
            <tr id="soustitre"><td>Date</td><td>Ville</td><td>Type</td><td>Afficher</td></tr>
            <tr><td>&nbsp;</td></tr>';
      do {
         echo '<tr><td>'.$row_rsTousLog['dateLog'].'</td>';
         echo '<td>'.$row_rsTousLog['villeLog'].'</td>';
         echo '<td>'.$row_rsTousLog['typeLog'].'</td>';
         echo '<td><a href="pageLogements.php?id='.$row_rsTousLog['codeLog'].'&prec=log"><img src="siteImages/affich.JPG" alt="Afficher" border="0" /></a></td></tr>';
        }
      while ($row_rsTousLog = mysql_fetch_assoc($rsTousLog));
      echo '</table>';
      
      //*****ECRITURE DES LIENS VERS CHACUNE DES PAGES CREEES*****
      //nombre de lignes par page
      $nbLgnPage = 10;
      //recupere le nombre total d'enregistrements de la table logement
      $retour = mysql_query("SELECT count(codeLog) As nbEnrLog FROM logement");
      $donnees = mysql_fetch_array($retour);$totalLog = $donnees['nbEnrLog'];
      //calcul du nombre de pages qui vont se créer automatiquement. La fonction ceil() arrondit à lentier au-dessus
      $nbPagesLog = ceil($totalLog/$nbLgnPage);
      //boucle qui ecrit les liens vers chacune des pages
      echo 'Page : ';
      for ($i = 1 ; $i <= $nbPagesLog ; $i++)
      {
    	 echo '<a href="listeLogmtsDisp.php?page='.$i.'">'.$i.'</a>';
      }
      
      //*****AFFICHAGE DES LOGEMENTS DANS LES PAGES*****
      if (isset($_GET['page']))
      {
        $page = $_GET['page']; //recuperer le numero de la page indique dans ladresse
      }
      else // La variable n'existe pas, la page est chargee pour la premiere fois
      {
        $page = 1; // On se met sur la page 1 (par défaut)
      }
      // On calcule le numéro du premier message a afficher qu'on prend pour le LIMIT de MySQL
      $premierMsgAffich = ($page - 1) * $nbLgnPage;
      $req = 'SELECT * FROM logement ORDER BY dateLog DESC LIMIT'.$premierMsgAffich.', '.$nbLgnPage.';';
      $reponse = mysql_query($req,$conn_locasaison) or die(mysql_error());
      //echo $reponse;
      //echo mysql_error();
      while ($donnees = mysql_fetch_assoc($reponse))
      {
        echo '<p><strong>' . $donnees['typeLog'] . '</strong> a écrit :<br />' . $donnees['dateLog'] . '</p>';
      }
    ?>
    	</div><div id="chemin">Retour vers <a href="index.php">Accueil</a></div>
    <div id="footer"><?php include ('footer.php'); ?></div></div></div>
    </body>
    </html>
    <?php
    mysql_free_result($rsTousLog);
    ?>
    Le problème se trouverait à la ligne surlignée. Quelqu'un aurait-il une idée ? Merci d'avance,
    Cordialement,
    GInger

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Il ne manque pas un espace déjà juste après la clause LIMIT ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 107
    Par défaut LIMIT 0,10
    Merci beaucoup julp pour ton aide c'était bien ça l'erreur ^_^

    Maintenant ne me reste plus qu'à afficher correctement les lignes sur chacune des pages et non afficher les mêmes lignes sur chaque page...

    Voici mon code final :

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
     
    <?php
      error_reporting(E_ALL);
      // se connecter à la base de données
      require_once('conn_locasaison.php'); 
     
      $maxRows_rsTousLog = 10;
      $pageNum_rsTousLog = 0;
      $startRow_rsTousLog = $pageNum_rsTousLog * $maxRows_rsTousLog;
     
      mysql_select_db($database_conn_locasaison, $conn_locasaison);
      $query_rsTousLog = 'SELECT * FROM logement WHERE libreLog=1 ORDER BY dateLog DESC LIMIT '.$pageNum_rsTousLog.', '.$maxRows_rsTousLog.' ;';
      $rsTousLog = mysql_query($query_rsTousLog,$conn_locasaison) or die(mysql_error());
      $row_rsTousLog = mysql_fetch_assoc($rsTousLog);
      // récupère le numéro de page passé en paramètre
      if (isset($_GET['totalRows_rsTousLog'])) {
        $totalRows_rsTousLog = $_GET['totalRows_rsTousLog'];
      } else {
        $all_rsTousLog = mysql_query($query_rsTousLog);
        $totalRows_rsTousLog = mysql_num_rows($all_rsTousLog);
      }
      $totalPages_rsTousLog = ceil($totalRows_rsTousLog/$maxRows_rsTousLog)-1;
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	<title>LSImmo | Logements disponibles</title>
    </head>
    <link href="locaStyle.css" rel="stylesheet" type="text/css" />
    <body>
    <div id="menuG"><?php include ('header.php'); ?>
      <div id="main">
      <div id="logo"><img src="siteImages/LSImmoPetit.PNG" alt="LogoLsimmo" border="0"/></div>
      <div id="bienvenue"><br />
        </div>
      <div id="contenu">
    <?php
      //*****ECRITURE DES LIENS VERS CHACUNE DES PAGES CREEES*****
      //nombre de lignes par page
      $nbLgnPage = 10;
      //recupere le nombre total d'enregistrements de la table logement
      $retour = mysql_query("SELECT count(*) As nbEnrLog FROM logement");
      $donnees = mysql_fetch_array($retour);$totalLog = $donnees['nbEnrLog'];
      //calcul du nombre de pages qui vont se créer automatiquement. La fonction ceil() arrondit à lentier au-dessus
      $nbPagesLog = ceil($totalLog/$nbLgnPage);
     
      //*****AFFICHAGE DES LOGEMENTS DANS LES PAGES*****
      if (isset($_GET['page']))
      {
        $page = $_GET['page']; //recuperer le numero de la page indique dans ladresse
      }
      else // La variable n'existe pas, la page est chargee pour la premiere fois
      {
        $page = 1; // On se met sur la page 1 (par défaut)
      }
      // On calcule le numéro du premier message a afficher qu'on prend pour le LIMIT de MySQL
      $premierMsgAffich = ($page - 1) * $nbLgnPage;
      $req = 'SELECT * FROM logement ORDER BY dateLog DESC LIMIT '.$premierMsgAffich.', '.$nbLgnPage.';';
      $reponse = mysql_query($req,$conn_locasaison) or die(mysql_error());
      //echo $req;
      echo '<table border="0" cellspacing="0" cellpadding="3" id="logDispo">
            <tr><td id="titre" colspan="2">Liste de tous les logements disponibles</td></tr>
            <tr><td>&nbsp;</td></tr>
            <tr id="soustitre"><td>Date</td><td>Ville</td><td>Type</td><td>Afficher</td></tr>
            <tr><td>&nbsp;</td></tr>';
      while ($donnees = mysql_fetch_assoc($reponse))
      {
        // tableau qui affiche la liste de tous les logements
      do {
         echo '<tr><td>'.$donnees['dateLog'].'</td>';
         echo '<td>'.$donnees['villeLog'].'</td>';
         echo '<td>'.$donnees['typeLog'].'</td>';
         echo '<td><a href="pageLogements.php?id='.$donnees['codeLog'].'&prec=log"><img src="siteImages/affich.JPG" alt="Afficher" border="0" /></a></td></tr>';
        }
      while ($donnees = mysql_fetch_assoc($reponse));
      echo '</table>';
      }
      echo 'Page : ';
      //boucle qui ecrit les liens vers chacune des pages
      for ($i = 1 ; $i <= $nbPagesLog ; $i++)
      {
    	 echo '<a href="listeLogmtsDisp.php?page='.$i.'">'.$i.'</a>';
      }
    ?>
    	</div><div id="chemin">Retour vers <a href="index.php">Accueil</a></div>
    <div id="footer"><?php include ('footer.php'); ?></div></div></div>
    </body>
    </html>
    <?php
    mysql_free_result($rsTousLog);
    ?>
    Cordialement,
    Ginger

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

Discussions similaires

  1. [MySQL] erreur lors d'envoi mailing via PHP/SQL
    Par gael-abdelhadi dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 30/01/2012, 23h45
  2. [Spip] erreur my sql-php
    Par Taso56 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 02/12/2009, 10h26
  3. [MySQL] Erreur php sql collations
    Par yveslens dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 27/02/2007, 14h50
  4. [SQL] (PHP/SQL) Erreur de modification d'une valeur
    Par ymoreau dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 15/09/2006, 14h55
  5. PHP SQL =>erreur de syntaxe (operateur absent)
    Par snipes dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/02/2005, 14h09

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