ID encore et toujours absent ? ? ?
Fermé
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
-
4 févr. 2011 à 20:05
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 - 6 févr. 2011 à 16:22
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 - 6 févr. 2011 à 16:22
A voir également:
- ID encore et toujours absent ? ? ?
- Id de membre perfect money - Forum Logiciels
- Https //id.sonyentertainmentnetwork.com/id/management/ ✓ - Forum Jeux vidéo
- Id telephone - Guide
- Signal absent tv - Guide
- Iphone sans face id avis - Forum Mobile
6 réponses
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 503
5 févr. 2011 à 13:44
5 févr. 2011 à 13:44
Salut.
Il nous faudrait le code de la page Liste_Clients.php et pas Fiche_Clients.php et également la structure de la table.
Dans Fiche_Clients.php, si le champ ID est bien de type INT, il ne faut pas mettre de guillemets autour de sa valeur.
Mais ce n'est pas ça qui résoudra le problème car il n'y a pas l'ID dans le lien de la page Liste_Clients.php.
Il nous faudrait le code de la page Liste_Clients.php et pas Fiche_Clients.php et également la structure de la table.
Dans Fiche_Clients.php, si le champ ID est bien de type INT, il ne faut pas mettre de guillemets autour de sa valeur.
Mais ce n'est pas ça qui résoudra le problème car il n'y a pas l'ID dans le lien de la page Liste_Clients.php.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
517
5 févr. 2011 à 15:19
5 févr. 2011 à 15:19
Salut et merci avion-f16,
Voici un extrait du code de Liste_Clients.php:
Dans Fiche_Clients.php, si le champ ID est bien de type INT, il ne faut pas mettre de guillemets autour de sa valeur.: J'ai essayé les deux; si je mets ID=$id ça m'affiche =$id dans l'url. (INT(11) NOT NULL et auto increment)
Autre chose:
... car il n'y a pas l'ID dans le lien de la page Liste_Clients.php. Et en gras dans ce code, c'est quoi ? Mal écrit peut-être ?. Eh ben oui, c'est bien ça le Pb. Ca fonctionne sur un autre site (d'ailleurs tu m'avais aidé pour celui là aussi et ça c'est mis à fonctionner miraculeusement un jour et Dieu sait pourquoi ?
Ça commence à me prendre la tête ces transmissions de variables... Merci encore !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Voici un extrait du code de Liste_Clients.php:
<?php // On recupere la variable "id" correspondant à l'événement choisi // ce script est appelé par un click sur le lien alors l'id est passé par l'URL donc en GET $id = $_GET['ID']; // on récupère la variable $id par la méthode $_GET ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <?php // appel au fichier fonctions_Clients.php séparé pour afficher ou non les boutons Suivant Précédent si + de 20 lignes (limitées à 20/page) require 'Fonctions_Clients.php'; require 'Fonction_Change_Date.php'; // converti le format de date de la table au format français. // initialisation des variables $nombre = 20; // on va afficher 20 résultats par page. // requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. $req = 'SELECT * FROM dbclients ORDER by ID DESC limit '.$limite.','.$nombre; // on affiche les événements dans l'ordre décroissant $result = mysql_query($req) or die ('Erreur : '.mysql_error() ); if ($total) { // on affiche un tableau avec la liste des événements echo "<table id='client' width='75%' cellspacing='0' cellpadding='0' align='center'>"; // on affiche les entêtes du tableaux. echo '<tr><td width="10%" align="center" class="clients"><strong> Nom </strong> </td><td width="10%" align="center" class="clients"> <strong> Prénom </strong></td><td width="10%" align="center" class="clients"><strong> Structure </strong></td><td width="15%" align="center" class="clients"><strong> Ville </strong></td><td width="5%" align="center" class="clients"><strong> C.P. </strong></td><td width="10%" align="center" class="clients"><strong> Téléphone </strong></td><td width="15%" align="center" class="clients"><strong> Mise à jour </strong></td></tr>'; // lecture et affichage des résultats en faisant une boucle pour parcourir toute la table. On affichera les boutons Suivant et Précédent si la limite est supérieure à 20 while($row = mysql_fetch_array($result)) { echo '<tr><td width="10%" class="clients"><a href="Fiche_Clients.php?ID="$id""> '.$row['N_Client'].' </a></td><td width="10%" class="clients">'.$row['P_Client'].'</td></td><td width="10%" class="clients"><i> '.$row['Groupe'].'</i></td><td width="15%" class="clients"> '.$row['Ville'].'</td><td width="5%" class="clients"> '.$row['CP'].'</td><td width="10%" class="clients"> '.$row['Phone'].'</td><td width="15%" class="clients"><i class="red"> '.$row['MaJ'].'</i></td></tr>'; } echo "</table>";
Dans Fiche_Clients.php, si le champ ID est bien de type INT, il ne faut pas mettre de guillemets autour de sa valeur.: J'ai essayé les deux; si je mets ID=$id ça m'affiche =$id dans l'url. (INT(11) NOT NULL et auto increment)
Autre chose:
$maj = ($maj['MaJ'strftime("%d %B %Y à %H:%M:%S")]); // formatage de la date en français avec jour, mois entier, heure, minute et secondesCette syntaxe est-elle correcte ?
... car il n'y a pas l'ID dans le lien de la page Liste_Clients.php. Et en gras dans ce code, c'est quoi ? Mal écrit peut-être ?. Eh ben oui, c'est bien ça le Pb. Ca fonctionne sur un autre site (d'ailleurs tu m'avais aidé pour celui là aussi et ça c'est mis à fonctionner miraculeusement un jour et Dieu sait pourquoi ?
Ça commence à me prendre la tête ces transmissions de variables... Merci encore !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 503
5 févr. 2011 à 15:28
5 févr. 2011 à 15:28
Dans Liste_Clients.php
$id a précédemment été déclaré à partir d'une variable GET inexistante.
De plus, cette variable serait constante puisqu'elle n'est pas redéfinie pour chaque utilisateur dans la boucle.
C'est $row['ID'] qu'il faut utiliser.
Et comme tu utilises les guillemets simples (apostrophes), il faut utiliser la concaténation.
Donc je ne vois pas de quelle URL tu parles.
Je n'ai peut-être pas été très clair, je parlais de la requête SQL.
Pour la syntaxe du formatage, elle est incorrecte.
Essaye avec ça :
$id = $_GET['ID']; // on récupère la variable $id par la méthode $_GETIl n'y a pas de variable ID dans l'URL pour la liste des clients.
echo '...<a href="Fiche_Clients.php?ID="$id"">...';Voilà la partie qui bloque tout.
$id a précédemment été déclaré à partir d'une variable GET inexistante.
De plus, cette variable serait constante puisqu'elle n'est pas redéfinie pour chaque utilisateur dans la boucle.
C'est $row['ID'] qu'il faut utiliser.
Et comme tu utilises les guillemets simples (apostrophes), il faut utiliser la concaténation.
Dans Fiche_Clients.php, si le champ ID est bien de type INT, il ne faut pas mettre de guillemets autour de sa valeur.: J'ai essayé les deux; si je mets ID=$id ça m'affiche =$id dans l'url. (INT(11) NOT NULL et auto increment)Je te parle de la fiche du client, pas de la liste des clients.
Donc je ne vois pas de quelle URL tu parles.
Je n'ai peut-être pas été très clair, je parlais de la requête SQL.
Pour la syntaxe du formatage, elle est incorrecte.
Essaye avec ça :
$maj = strftime("%d %B %Y à %H:%M:%S", $maj['MaJ']);
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
517
5 févr. 2011 à 16:49
5 févr. 2011 à 16:49
Bon,
Il n'y a pas de variable ID dans l'URL pour la liste des clients.
Ben c'est normal puisqu'il s'agit d'une liste, chaque ligne devant (ou qui devrait) avoir son propre id.
J'ai fait des modifs que tu me propose. Résultat, dans l'url Fiche_Clients.php voici ce que j'ai (tu peux le voir par toi même): htp://soeix.free.fr/Clients/Fiche_Clients.php?ID=$id et voici le select de la fiche clients:
si je mets ID=$id ça m'affiche =$id dans l'url.
Je te parle de la fiche du client, pas de la liste des clients.
Ben moi aussi. Essaie de cliquer sur un nom dans la liste: tu aura ce qui est en gras ci-dessus.
Je vais péter un câble ! arghhhh !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Il n'y a pas de variable ID dans l'URL pour la liste des clients.
Ben c'est normal puisqu'il s'agit d'une liste, chaque ligne devant (ou qui devrait) avoir son propre id.
J'ai fait des modifs que tu me propose. Résultat, dans l'url Fiche_Clients.php voici ce que j'ai (tu peux le voir par toi même): htp://soeix.free.fr/Clients/Fiche_Clients.php?ID=$id et voici le select de la fiche clients:
$select = "SELECT Groupe, Hebergement, N_Client, P_Client, Ville, CP, Numero, Rue, Adresse, Phone, Mobilphone, Fax, Email, Date, Comment, MaJ FROM dbclients WHERE ID='$id'"; // On sélectionne seulement la ligne qui correspond à la fiche choisie.
si je mets ID=$id ça m'affiche =$id dans l'url.
Je te parle de la fiche du client, pas de la liste des clients.
Ben moi aussi. Essaie de cliquer sur un nom dans la liste: tu aura ce qui est en gras ci-dessus.
Je vais péter un câble ! arghhhh !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 503
5 févr. 2011 à 20:05
5 févr. 2011 à 20:05
Si tu ne lis que la moitié de mes messages, ça ne va pas aller !!
$id est affiché dans l'URL car tu n'utilises pas la concaténation avec les guillemets simples (simple quotes - ou les apostrophes).
Voilà l'echo du lien dans la liste des clients :
Pour la requête SQL :
$id est affiché dans l'URL car tu n'utilises pas la concaténation avec les guillemets simples (simple quotes - ou les apostrophes).
Voilà l'echo du lien dans la liste des clients :
cho '...<a href="Fiche_Clients.php?ID='.$row['ID'].'">...';
Pour la requête SQL :
$select = "SELECT Groupe, Hebergement, N_Client, P_Client, Ville, CP, Numero, Rue, Adresse, Phone, Mobilphone, Fax, Email, Date, Comment, MaJ FROM dbclients WHERE ID=$id";
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
517
5 févr. 2011 à 20:45
5 févr. 2011 à 20:45
Bonsoir,
Eh ben tu sais pas ? J'avais déjà écrit exactement comme toi sans plus de succès ! c'est pourquoi j'ai posté ici. C'est à n'y rien comprendre. Et ça m'épuise et surtout ça commence a urger maintenant !
Eh ben tu sais pas ? J'avais déjà écrit exactement comme toi sans plus de succès ! c'est pourquoi j'ai posté ici. C'est à n'y rien comprendre. Et ça m'épuise et surtout ça commence a urger maintenant !
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 503
5 févr. 2011 à 22:16
5 févr. 2011 à 22:16
Exactement ? Quel hasard !
Dans les liens sur la liste des clients, que vois-tu dans l'URL, après "?ID=" ?
S'il n'y a rien, fait un var_dump de $row pour vérifié si l'entrée ID y est bien.
Dans les liens sur la liste des clients, que vois-tu dans l'URL, après "?ID=" ?
S'il n'y a rien, fait un var_dump de $row pour vérifié si l'entrée ID y est bien.
txiki
Messages postés
6596
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
22 février 2024
517
6 févr. 2011 à 16:22
6 févr. 2011 à 16:22
Bonjour avion f-16 et merci pour ta patience,
Ce que je ne comprends pas dans le cas présent c'est que nous sommes en train de lire le contenu d'une table. OK ?
Tous les Pb viennent de là mais pourquoi je n'ai pas l'id ?
Je continue mes recherches mais tu dois savoir que j'ai tout essayé (bien qu'étant débutant en php et c'est la raison pour laquelle certaines choses m'échappent totalement, malgré les excellents tutos du site du zéro !)
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Je pense à une chose:
mon site est conçu de telle sorte que toutes les pages passent par index.php qui contient des includes et nécessite une session. Or ici, je l'ouvre sans passer par exemple par /index.php?page=Ma_Page&lang=Fr (http://soeix.free.fr/index.php?page=Administration_Bases&lang=Fr Est ce que ça pourrait poser un Pb particulier (il faut noter que maintenant si on s'authentifie, on affiche bien le formulaire caché mais celui de l'authentification, qui se trouve sur la même page, est toujours visible en bas !)
Je vais finir par vous envoyer ces pages pour corrections éventuelles. Sans doute que ça vous sautera aux yeux à vous ?
Merci encore !
Ce que je ne comprends pas dans le cas présent c'est que nous sommes en train de lire le contenu d'une table. OK ?
// requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. $req = 'SELECT * FROM dbclients ORDER by ID DESC limit '.$limite.','.$nombre; // on affiche les clients dans l'ordre décroissant $result = mysql_query($req) or die ('Erreur : '.mysql_error() );Le select * doit bien récupérer l'id or si on affiche le source da la page Liste_Clients.php, cet id est absent (<tr><td width="10%" class="clients"><a href="Fiche_Clients.php?ID="> etche </a></td><td width="10%" class="clients">titi</td></td><td width="10%" class="clients"><i> association</i></td><td width="15%" class="clients"> </td><td width="5%" class="clients"> 64400</td><td width="10%" class="clients"> </td><td width="15%" class="clients"><i class="red"> 0000-00-00 00:00:00</i></td></tr><tr>).
Tous les Pb viennent de là mais pourquoi je n'ai pas l'id ?
Je continue mes recherches mais tu dois savoir que j'ai tout essayé (bien qu'étant débutant en php et c'est la raison pour laquelle certaines choses m'échappent totalement, malgré les excellents tutos du site du zéro !)
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Je pense à une chose:
mon site est conçu de telle sorte que toutes les pages passent par index.php qui contient des includes et nécessite une session. Or ici, je l'ouvre sans passer par exemple par /index.php?page=Ma_Page&lang=Fr (http://soeix.free.fr/index.php?page=Administration_Bases&lang=Fr Est ce que ça pourrait poser un Pb particulier (il faut noter que maintenant si on s'authentifie, on affiche bien le formulaire caché mais celui de l'authentification, qui se trouve sur la même page, est toujours visible en bas !)
Je vais finir par vous envoyer ces pages pour corrections éventuelles. Sans doute que ça vous sautera aux yeux à vous ?
Merci encore !