PHP: ou est le Pb ? (id absent)
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 -
Bonjour,
Sur le site ci-dessous (user=test et pass=toto (colonne du milieu pour les modifs)
1- http://editionsgracianne.free.fr/Agenda/Formulaire.php
2- http://editionsgracianne.free.fr/Agenda/Liste_Agenda_Modifier.php tout se passe bien.
3- http://editionsgracianne.free.fr/Agenda/Fiche_Agenda_Modifier.php?ID=2 Mais à l'étape 3, en cliquant sur un lien pour afficher d'abord la page pour vérifier s'il l'on est bien sur le bon article à modifier, on a un bouton Modifier, qui est sensé afficher un formulaire pré-renseigné en vue d'une modification, l'id ne se transmet plus (voir le code source du navigateur ou l'url).
J'ai déjà bien galéré pour pouvoir afficher la liste (apparemment des Pb de transfert ftp car après de multiples essais, ça s'est à fonctionner).
Vous pouvez faire des tests, la table sera détruite à la fin de tous les tests (c'est pas encore gagné hi hi hi hi....).
Merci d'avance pour ceux qui verront un peu plus clair que que moi car je sature, là....
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Sur le site ci-dessous (user=test et pass=toto (colonne du milieu pour les modifs)
1- http://editionsgracianne.free.fr/Agenda/Formulaire.php
2- http://editionsgracianne.free.fr/Agenda/Liste_Agenda_Modifier.php tout se passe bien.
3- http://editionsgracianne.free.fr/Agenda/Fiche_Agenda_Modifier.php?ID=2 Mais à l'étape 3, en cliquant sur un lien pour afficher d'abord la page pour vérifier s'il l'on est bien sur le bon article à modifier, on a un bouton Modifier, qui est sensé afficher un formulaire pré-renseigné en vue d'une modification, l'id ne se transmet plus (voir le code source du navigateur ou l'url).
J'ai déjà bien galéré pour pouvoir afficher la liste (apparemment des Pb de transfert ftp car après de multiples essais, ça s'est à fonctionner).
Vous pouvez faire des tests, la table sera détruite à la fin de tous les tests (c'est pas encore gagné hi hi hi hi....).
Merci d'avance pour ceux qui verront un peu plus clair que que moi car je sature, là....
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
A voir également:
- PHP: ou est le Pb ? (id absent)
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
4 réponses
Bonjour et merci de vous etre penché sur le Pb, mais il faut savoir que j'ai tout essayé. Voici une partie du code du formulaire de modif (à priori c'est lui qui merde).
Ici le code bouton Modifier (qui n'était pas en php au départ):
Je vais peter un cable ! ! ! !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
<?php // On recupere la variable "id" correspondant au prénom choisi //ce script est appelé par un click sur le lien n'est ce pas, alors l'id est passé par l'URL donc en GET $id=$_GET['ID']; // on récupère la requete par la variable $_GET // on prends les infos de connexion sur le fichier Fonctions_Agenda.php require 'Fonctions_Agenda.php'; // connection à la DB $link = mysql_pconnect ($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 affiche les infos de la fiche correspondante au lien cliqué $select = 'SELECT * FROM agenda WHERE ID="$id"'; // On selectionne seulement la ligne qui correspond à l'événement choisi $query = mysql_query($select) or die ('Erreur : '.mysql_error() ); $row= mysql_fetch_array($query); // mysql_fetch_array génère un tableau correspondant a la ligne selectionnée de la BDD ?> <div id="globalmodif" style="position:absolute; visibility:visible; z-index:1;"> <table width="100%" border="0" cellspacing="0" cellpadding="6"> <tr> <td><h2 align="center"> Modifier cet événement dans l'agenda. </h2> <!-- Pour que les champs obligatoires soient controlés, ils doivent être vierges (pas de value) --> <form name="Presse" id="Presse" action="Traitement_Agenda_Modifier.php" onSubmit="return verif(this)" method="POST"> <p><label for="ID"></label> <input name="ID" id="ID" type="hidden" value="<?php echo $_GET['ID']; ?>" /> <i>(Les champs marqués <span class="red">*</span> sont obligatoires et ne doivent excéder 256 caractères) </i></p> <p align="center"><label for="Lien">Texte pour le lien</label> : <span class="red">*</span> <input name="Lien" id="Lien" tabindex="10" type="text" value="<?php echo $row['Lien']; ?>" size="100" maxlength="255" /></p> <p align="center"><label for="Source">Source du texte</label> : <input name="Source" id="Source" tabindex="20" type="text" value="<?php echo $row['Source']; ?>" size="100" maxlength="255" /></p> <p> <label for="Date">Date</label> (utiliser le calendrier ci-contre) : <a href="javascript:cal1.popup();"><img src="img-calendar/cal.gif" width="16" height="16" border="0" alt="Cliquez ici pour choisir la date" title="Cliquez ici pour choisir la date."></a> <input name="Date" id="Date" value="<?php echo $row['Date']; ?>" tabindex="21" type="text" size="14" maxlength="25" /> <script language="JavaScript"> // créer un objet de calendrier juste après la fermeture d'un "tag de formulaire". // Spécifier l'élément du formulaire comme le seul paramètre (document.forms['nom_du_formulaire'].elements['nom_d'entrée']); // Note : vous pouvez avoir autant d'objets de calendrier dont vous avez besoin pour votre application // elements.date ou ['date']" est le name du champ du formulaire juste au dessus var cal1 = new calendar1(document.forms['Presse'].elements['Date']); cal1.year_scroll = true; cal1.time_comp = false; </script></p> <p align="center"><label for="Titre">Titre dans la page</label> : <span class="red">*</span> <input name="Titre" id="Stitre" tabindex="30" type="text" value="<?php echo $row['Titre']; ?>" size="100" maxlength="255" /></p> <p align="center"><label for="Stitre1">Sous titre dans la page</label> : <input name="Stitre1" id="Stitre1" tabindex="40" type="text" value="<?php echo $row['Stitre1']; ?>" size="100" maxlength="255" /></p> <p align="center"><label for="Stitre">Sous titre 2 dans la page</label> : <input name="Stitre" id="Stitre" tabindex="50" type="text" value="<?php echo $row['Stitre']; ?>" size="100" maxlength="255" /></p> <fieldset><legend> Mise en forme du texte dans l'agenda : <span class="red">*</span></legend> <p align="center">Note: malgré vos suggestions ça ne fonctionne pas plus c'est pour ça que je ne comprends pas.
Ici le code bouton Modifier (qui n'était pas en php au départ):
<!-- Le bouton SUBMIT doit obligatoirement se trouver à l'intérieur des balises FORM --> <?php echo '<form method="GET" name="Modif" id="Modif" action="Formulaire_Modifier.php?ID=$id" />'; echo '<p align="center"><input type="submit" value="Modifier"/></p>'; echo '</form>'; ?>
Je vais peter un cable ! ! ! !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
il faudrait le code source du fichier.
pour récupérer l'id :
<?php echo $_GET['ID']; ?>
évidemment la ligne précédente est différente de
<?php echo $_GET['id']; ?>
pour récupérer l'id :
<?php echo $_GET['ID']; ?>
évidemment la ligne précédente est différente de
<?php echo $_GET['id']; ?>
Salut.
Voilà où ça coince :
Tout d'abord, la balise <form> n'est pas auto-fermante.
Donc il faut l'ouvrir avec <form ...> et la fermer avec </form>
<form .../> n'est pas valide.
Ensuite, il y a un guillemet en trop dans l'attribut action.
Apparemment, tu as raté ton echo en PHP.
Voilà où ça coince :
<form method="GET" name="Modif" id="Modif" action="Formulaire_Modifier.php?ID="$id" />
Tout d'abord, la balise <form> n'est pas auto-fermante.
Donc il faut l'ouvrir avec <form ...> et la fermer avec </form>
<form .../> n'est pas valide.
Ensuite, il y a un guillemet en trop dans l'attribut action.
Apparemment, tu as raté ton echo en PHP.
Bonjour et merci à tous pour votre patience !
Ça y est ! c'est EN...FIN !!! réglé (je ne sais pas par quel mystère mais cela fonctionne.
Note: j'avais déjà eu le même Pb pour afficher les données dans un formulaire qui devait être pré-rempli.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Ça y est ! c'est EN...FIN !!! réglé (je ne sais pas par quel mystère mais cela fonctionne.
Note: j'avais déjà eu le même Pb pour afficher les données dans un formulaire qui devait être pré-rempli.
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Bonne journée
J'ai voulu aller vite ... enfin bref bonne année ;)
PS : j'ai remis id en majuscule.
PS2 : Ceci remplace :