Problème MySQL : Nbre d'enregistrements

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par kmenslow, 28 Novembre 2007.

  1. kmenslow
    kmenslow WRInaute passionné
    Inscrit:
    7 Août 2006
    Messages:
    1 844
    J'aime reçus:
    0
    Bonjour,

    Je me lance dans l'apprentissage du PHP / MySQL et je rencontre un petit problème. Voici ma situation :

    J'ai une table comportant 3 colonnes :
    - colonne 1 : "NUM" c'est un entier qui s'auto-incrémente à chaque nouvel enregistrement.
    - colonne 2 et 3 : Ceux des données provenant d'un formulaire.

    J'ai 40 enregistrements dans cette table donc j'ai le "NUM" qui s'est incrémenté de 1 jusqu'à 40.
    Je viens de supprimer l'enregistrement 35, il me reste donc 39 enregistrements.
    Au prochain enregistrement, mon NUM va passer à 41 et mon nombre d'enregistrements va passer à 40.

    Sur l'index de mon site, j'affiche les 10 derniers enregistrements. Pour cela j'utilise la formule suivante :
    Code:
    // Détermnation du nombre d'enregistrement
    	$select = 'SELECT num FROM texte';
    	$result = mysql_query($select) or die ('Erreur : '.mysql_error() );
    	$total = mysql_num_rows($result);
    
    donc $total = 40

    Ensuite je fais une boucle

    Code:
    	// initialisation des variables
    	$x = $total;
    	$z = 0;
    	
    	// Listage de toute la table
    	while ($x >= $total -10 )
    	{ $req_texte_infos = "SELECT num, texte1, texte2 valide FROM texte WHERE num=$x";
    	$dataset_texte_infos
    ......... ........ ....... ....
    
    
    
            $z = $x - 1;
    	$x = $z;
    	
    	}
     
    
    Mon problème c'est que $total est différent de ma dernière valeur de NUM.
    Donc la boucle ne me donne pas l'enregistrement 41 car $total = 40.

    Voila je bloque la dessus.

    Comment puis-je faire pour remettre le nombre d'enregistrement = à la valeur de NUM ?



    Merci de votre aide :(
     
  2. UsagiYojimbo
    UsagiYojimbo WRInaute accro
    Inscrit:
    23 Novembre 2005
    Messages:
    12 018
    J'aime reçus:
    133
    SELECT num, texte1, texte2 valide FROM texte ORDER BY num DESC LIMIT 0,10 ?
     
  3. kmenslow
    kmenslow WRInaute passionné
    Inscrit:
    7 Août 2006
    Messages:
    1 844
    J'aime reçus:
    0
    Cela va m'afficher les 10 premiers enregistrements de ma table ? non ?

    Je souhaite afficher les 10 derniers :D
     
  4. kmenslow
    kmenslow WRInaute passionné
    Inscrit:
    7 Août 2006
    Messages:
    1 844
    J'aime reçus:
    0
    Ma solution serai de connaitre la valeur maxi de NUM dans ma table.
     
  5. lefou
    lefou WRInaute discret
    Inscrit:
    7 Juin 2005
    Messages:
    126
    J'aime reçus:
    0
    Le fait de mettre DESC permet de lire la table dans le sens décroissant donc du dernier jusqu'au premier. Bref cela affichera bien les 10 derniers résultats enregistrés.
     
  6. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 579
    J'aime reçus:
    0
    Tu ferais mieux d'utiliser un SELECT count(*) FROM texte. Là tu te trimbales un paquet de données pour rien.

    Ouh là.
    Comem déjà dit, récupère la liste de tous les enregistrements que tu veux afficher d'un coup:
    SELECT num,texte1,texte2 FROM texte ORDER BY num DESC LIMIT 10
    Ensuite fais une boucle sur le résultat pour afficher tout ça.

    Ca ira nettement plus vite, et en plus ça marchera :)

    Au passage, rien n'empêche d'écrire $x = $x -1 (c'est une affectation, pas une égalité mathématique), ou encore $x -= 1 ou encore $x-- (la plus lisible...).

    Jacques.
     
  7. kmenslow
    kmenslow WRInaute passionné
    Inscrit:
    7 Août 2006
    Messages:
    1 844
    J'aime reçus:
    0
    Grand merci pour votre aide :D je vais appliquer vos conseils immédiatement
     
Chargement...
Similar Threads - Problème MySQL Nbre Forum Date
Problème avec un changement de version Mysql de 5.5 à 5.7 Développement d'un site Web ou d'une appli mobile 9 Juin 2017
Problème requête mysql Développement d'un site Web ou d'une appli mobile 1 Mars 2017
PHP -Problème retraitement données Mysql avant envoit dans un tableau array Développement d'un site Web ou d'une appli mobile 28 Décembre 2016
Problème mysql --->>mysqli Demandes d'avis et de conseils sur vos sites 23 Janvier 2016
problème PHP/Mysql Développement d'un site Web ou d'une appli mobile 29 Octobre 2015
Problème modification ligne MYSQL Développement d'un site Web ou d'une appli mobile 7 Mai 2014
Problème optimisation d'un count() : Mysql Développement d'un site Web ou d'une appli mobile 15 Février 2014
Problème insert MYSQL avec accent Développement d'un site Web ou d'une appli mobile 24 Mai 2013
Problème de vérification PHP/MySQL Développement d'un site Web ou d'une appli mobile 30 Mars 2013
Probleme avec Script PHP pour remplir mysql avec un fichier Excel Développement d'un site Web ou d'une appli mobile 13 Février 2013
Mysql : problème de IN et ORDER BY Développement d'un site Web ou d'une appli mobile 23 Août 2012
Gros problèmes depuis derniere mise à jour Mysql sous Debian ! Administration d'un site Web 13 Février 2012
[Résolu] Problème d'importation de base MySQL en UTF8 chez 1&1 Administration d'un site Web 3 Juillet 2011
Problème liste déroulante en php/mysql Développement d'un site Web ou d'une appli mobile 14 Janvier 2010
problème d'accès cron avec php/mysql Administration d'un site Web 20 Août 2009
problème avec mon mysql Développement d'un site Web ou d'une appli mobile 9 Juillet 2009
[MYSQL/PHP] Probleme d'encodage et serialize Développement d'un site Web ou d'une appli mobile 22 Juin 2009
Problème de connexion MySQL sur OVH Administration d'un site Web 11 Février 2009
mysql : Problème avec une condition AND et deux tuples Administration d'un site Web 20 Janvier 2009
problème connexion distante mysql, d'un autre domaine Développement d'un site Web ou d'une appli mobile 3 Décembre 2008