[php] liste non correcte ?
Résolu
txiki
Messages postés
6596
Date d'inscription
Statut
Contributeur
Dernière intervention
-
txiki Messages postés 6596 Date d'inscription Statut Contributeur Dernière intervention -
txiki Messages postés 6596 Date d'inscription Statut Contributeur Dernière intervention -
Salut à tous,
Je suis en train de développer un catalogue affichant une liste de logiciels. Bon jusque là, OK.
PB: ma liste n'affiche pas dans l'ordre que je lui indique à savoir par catégories. Ca démarre avec un logiciel qui, dans la base, n'a que 2 renseignements parmi les 23 champs de la table "catalogue".
Si vous regardez le source (lien ci-dessous) c'est un peu bizarre.
Il devrait m'afficher la categorie la plus proche de la lettre A non ?
Autre chose: j'ai créé un .htaccess pour le formulaire (seuls quelques personnes autorisées doivent y avoir accès) mais ça ne fonctionne pas.
J'ai utilisé la hachage ( exe trouvé ici posté par jeff je crois...)
et surtout en local il m'interdit l'accès donc je suis obligé de mettre le "root et '' (2 ') sans pass quoi !
Y-a-t-il une config a faire dans easyPHP 1.8 ?
Merci d'avance pour votre aide !
http://txiki.free.fr/liste.php
Je suis en train de développer un catalogue affichant une liste de logiciels. Bon jusque là, OK.
PB: ma liste n'affiche pas dans l'ordre que je lui indique à savoir par catégories. Ca démarre avec un logiciel qui, dans la base, n'a que 2 renseignements parmi les 23 champs de la table "catalogue".
Si vous regardez le source (lien ci-dessous) c'est un peu bizarre.
Il devrait m'afficher la categorie la plus proche de la lettre A non ?
Autre chose: j'ai créé un .htaccess pour le formulaire (seuls quelques personnes autorisées doivent y avoir accès) mais ça ne fonctionne pas.
J'ai utilisé la hachage ( exe trouvé ici posté par jeff je crois...)
et surtout en local il m'interdit l'accès donc je suis obligé de mettre le "root et '' (2 ') sans pass quoi !
Y-a-t-il une config a faire dans easyPHP 1.8 ?
Merci d'avance pour votre aide !
http://txiki.free.fr/liste.php
A voir également:
- [php] liste non correcte ?
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Vérifier si une phrase est correcte - Accueil - Google
- Easy php - Télécharger - Divers Web & Internet
10 réponses
<? //========================================= // includes du fichier fonctions //========================================= require 'fonctions.php'; //========================================= // information pour la connection à le DB //========================================= $host = 'localhost'; $user = '***'; $pass = '****'; $db = 'catalogue'; //========================================= // initialisation des variables //========================================= $nombre = 10; // on va afficher 10 résultats par page. $limite = 0; if (!$limite); // si limite n'existe pas on l'initialise à zéro $path_parts = pathinfo($_SERVER['PHP_SELF']); // on cherche le nom de la page. $page = $path_parts["basename"]; //====================== // connection à la DB //====================== $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // connection à la base mysql_select_db($db) or die ('Impossible de se connecter à la base'); // sélection de la table //========================================================================== // requête SQL qui compte le nombre total d'enregistrements dans la table. //========================================================================== $select = 'SELECT count(id) FROM catalogue'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; //=================================================== // vérifier la validité de notre variable $limite; //=================================================== $verifLimite = verifLimite($limite,$total,$nombre); // si la limite passée n'est pas valide on la remet à zéro if(!$verifLimite) { $limite = 0; } //========================================= // requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. //========================================= $select = 'select categorie,nom,editeur FROM catalogue ORDER BY categorie ASC limit '.$limite.','.$nombre; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); //========================================= // si on a récupéré un resultat on l'affiche. //========================================= if($total) { echo '<table width="50% bgcolor="#FFFFFF" align="center">'."\n"; // première ligne on affiche les titres Accès et Logiciels dans 2 colonnes echo '<tr text-align="center" padding="3px" class="blanc">'; echo '<td bgcolor="#669999"><strong> Accès </strong></td>'; echo '<td bgcolor="#669999"><strong> Logiciels </strong></td>'; echo '</tr>'."\n"; // lecture et affichage des résultats sur 2 colonnes, 1 résultat par lot de 3 lignes. while($row = mysql_fetch_array($result)) { echo '<tr>'; echo '<td rowspan="3" bgcolor="#FF9900" align="center" width="10%">'; // largeur de la première colonne (fusion de 3 lignes) echo '<p><a href="fiche.php?id=$ID"> Editer </a></p>'; // <P> pour 1 saut plus important entre les 2 liens echo '<p><a href="fiche.php?id=$ID"> supprimer </a></p>'; echo '</td>'; echo '<td bgcolor="#F0F0F0"><strong> Catégorie: </strong>'.$row['categorie'].'</td>'; // affiche la catégorie à laquelle appartient le logiciel echo '</td>'; echo '</tr>'."\n"; echo '<td bgcolor="#F0F0F0"><strong> Nom du logiciel: </strong>'.$row['nom'].'</td>'; // affiche le nom du logiciel dans la 2eme cellule de droite echo '</td>'; echo '</tr>'."\n"; echo '<tr>'; echo '<td bgcolor="#F0F0F0"><strong> Editeur du logiciel: </strong"'.$row['editeur'].'</td>'; // affiche le nom de l'éditeur dans la 3eme cellule echo '</td>'; echo '</tr>'."\n"; } echo '</table>'."\n"; // fin du tableau. } else echo 'Pas d\'enregistrements dans cette table'; // on libère le résultat mysql_free_result($result); //========================================= // si le nombre d'enregistrement à afficher est plus grand que $nombre //========================================= if($total > $nombre) { affichePages($nombre,$page,$total); // affichage des liens vers les pages displayNextPreviousButtons($limite,$total,$nombre,$page); // affichage des boutons } ?>
C'est un peu long mais... j'espere que tu pourra y deceler quelque chose...
Merci !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Ah !
je viens de me rendre compte que dans le fichier csv qui me sert pour remplir la table via Myadmin, il y a des " (guillemets) dans certaines cellules.
Comment je pourrais faire pour les rechercher dans le XLS d'origine et les supprimer sachant qu'on ne les voient pas. Ils correspondent, je crois, a des retours de ligne dans la cellule en question.
Ou les supprimer au moment de l'import.
Je n'ai pas vu d'option sur Excel, ni dans word pad (en plus c'est très difficile de les voir.....)
Merci a tous ceux qui maitrise Excel surement mieux que moi.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
je viens de me rendre compte que dans le fichier csv qui me sert pour remplir la table via Myadmin, il y a des " (guillemets) dans certaines cellules.
Comment je pourrais faire pour les rechercher dans le XLS d'origine et les supprimer sachant qu'on ne les voient pas. Ils correspondent, je crois, a des retours de ligne dans la cellule en question.
Ou les supprimer au moment de l'import.
Je n'ai pas vu d'option sur Excel, ni dans word pad (en plus c'est très difficile de les voir.....)
Merci a tous ceux qui maitrise Excel surement mieux que moi.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
regarde dans ta table si le champ categorie est bien renseignée car visiblement il a l'air d'être vide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
regarde le début de la table (c'est une image).
C'est ce qu'il devrait afficher en premier (heuuuu peut-etre pas, il doit y avoir une catégorie commençant avant la lettre C (CFAO).
http://txiki.free.fr/table-catalogue.gif
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
C'est ce qu'il devrait afficher en premier (heuuuu peut-etre pas, il doit y avoir une catégorie commençant avant la lettre C (CFAO).
http://txiki.free.fr/table-catalogue.gif
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
je vois pas trop ou est le soucis ...
Juste apres ta requete pour aller chercher tes champs
cette requette la :$select = 'select categorie,nom,editeur FROM catalogue ORDER BY categorie ASC limit '.$limite.','.$nombre;
Fais un echo $select et relance ta page.
execute cette requette dans phpmyadmin et vois si le résultat obtenu est bon ou pas déjà ça permettra d'élliminer une partie du code
Tu recup bien sur la requette dans ta page html suite au echo elle devrait s'afficher
Juste apres ta requete pour aller chercher tes champs
cette requette la :$select = 'select categorie,nom,editeur FROM catalogue ORDER BY categorie ASC limit '.$limite.','.$nombre;
Fais un echo $select et relance ta page.
execute cette requette dans phpmyadmin et vois si le résultat obtenu est bon ou pas déjà ça permettra d'élliminer une partie du code
Tu recup bien sur la requette dans ta page html suite au echo elle devrait s'afficher
Voici ce que ça donne (???)
MySQL a répondu:Documentation
#1064 - Erreur de syntaxe pr�s de 'echo $select`categorie``nom``editeur`' � la ligne 1
D'abord c'est quoi ces back slash ?
je ne comprends plus rien....
MySQL a répondu:Documentation
#1064 - Erreur de syntaxe pr�s de 'echo $select`categorie``nom``editeur`' � la ligne 1
D'abord c'est quoi ces back slash ?
je ne comprends plus rien....
on ne s'est pas compris ^^
remplace le code suivant :
par celui-ci
tu rafraichis ta page : http://txiki.free.fr/liste.php
tu devrai avoir à l'ecran ta requette sql entre 2 crochets.
Copie/colle cette requette dans phpmyadmin afin de voir si le resultat obtenu correspond à ce que tu attends.
Si c'est le cas on avisera et si ce n'est pas le cas ton soucis est au niveau de ta requette.
remplace le code suivant :
$select = 'select categorie,nom,editeur FROM catalogue ORDER BY categorie ASC limit '.$limite.','.$nombre; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
par celui-ci
$select = 'select categorie,nom,editeur FROM catalogue ORDER BY categorie ASC limit '.$limite.','.$nombre; echo "ma requette:[".$select."]"; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
tu rafraichis ta page : http://txiki.free.fr/liste.php
tu devrai avoir à l'ecran ta requette sql entre 2 crochets.
Copie/colle cette requette dans phpmyadmin afin de voir si le resultat obtenu correspond à ce que tu attends.
Si c'est le cas on avisera et si ce n'est pas le cas ton soucis est au niveau de ta requette.