[php] Souci d'affichage données help svp
Fermé
lonewolf
-
24 janv. 2012 à 08:42
AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 24 janv. 2012 à 13:43
AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 24 janv. 2012 à 13:43
A voir également:
- [php] Souci d'affichage données help svp
- Easy php - Télécharger - Divers Web & Internet
- Affichage double ecran - Guide
- Reinstaller windows sans perte de données - Guide
- Windows 11 affichage classique - Guide
- Effacer les données de navigation - Guide
4 réponses
AssassinTourist
Messages postés
5710
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 311
24 janv. 2012 à 10:03
24 janv. 2012 à 10:03
On est bien d'accord que pour ta première boucle, il y a un formulaire et un bouton submit pour chaque bouton radio ?
Et c'est quoi à la fin ton $_POST['donnees'] ? Ca vient de quel formulaire ?
Et c'est quoi à la fin ton $_POST['donnees'] ? Ca vient de quel formulaire ?
Non, il ne doit y avoir qu'un bouton submit, c'est pour cela que j'ai mis le submit en dehors du php.
Mon $_POST['donnees'] est la recupération des données du formulaire... du moins dans le principe car cela ne fonctionne pas
Merci encore pour ton aide
Amicalement
Mon $_POST['donnees'] est la recupération des données du formulaire... du moins dans le principe car cela ne fonctionne pas
Merci encore pour ton aide
Amicalement
AssassinTourist
Messages postés
5710
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 311
Modifié par AssassinTourist le 24/01/2012 à 11:20
Modifié par AssassinTourist le 24/01/2012 à 11:20
Il faut d'abord que tu décales ton <form method="post"> et le mettre hors de ta boucle while (sinon il est créé à chaque fois - je croyais que ton submit était aussi dans la boucle)
$_POST['donnees'] ne fonctionnera pas, effectivement. Un petit exemple pour savoir quoi mettre entre crochet :
<form method="post" action="page.php"> <!-- Déjà, il faut mettre une action pour qu'il envoie tes valeurs quelque part -->
<input type="text" value="bidule" name="truc" />
<input value="Valider" type="submit" />
</form>
if(isset($_POST['truc']) & $_POST['truc'] != null){
echo $_POST['truc']; <!-- Ca donnera "bidule" -->
}
$_POST['donnees'] ne fonctionnera pas, effectivement. Un petit exemple pour savoir quoi mettre entre crochet :
<form method="post" action="page.php"> <!-- Déjà, il faut mettre une action pour qu'il envoie tes valeurs quelque part -->
<input type="text" value="bidule" name="truc" />
<input value="Valider" type="submit" />
</form>
if(isset($_POST['truc']) & $_POST['truc'] != null){
echo $_POST['truc']; <!-- Ca donnera "bidule" -->
}
Ok, je comprend.
Néanmoins même si j'utilise donc $POST['Type'], ca ne me donne rien de plus.
Cela m'affiche :
Ligne 73, c'est la récupération de ma variable :
et la ligne 76 ma requete :
Si je fais un choix et que je valide, il me reste en message d'erreur :
Merci encore pour ton aide
Néanmoins même si j'utilise donc $POST['Type'], ca ne me donne rien de plus.
Cela m'affiche :
Notice: Undefined index: Type in C:\wamp\www\php\test3.php on line 74 Notice: Use of undefined constant Type - assumed 'Type' in C:\wamp\www\php\test3.php on line 76
Ligne 73, c'est la récupération de ma variable :
//Recup Variable $Type=$_POST['Type'];
et la ligne 76 ma requete :
$reponse = mysql_query("SELECT * FROM Moulin_Rouge WHERE Type='".Type."'"); // Requête SQL
Si je fais un choix et que je valide, il me reste en message d'erreur :
Notice: Use of undefined constant Type - assumed 'Type' in C:\wamp\www\php\test3.php on line 76
Merci encore pour ton aide
AssassinTourist
Messages postés
5710
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 311
24 janv. 2012 à 11:22
24 janv. 2012 à 11:22
Si ton formulaire et le résultat de ton formulaire est sur la même page, tu es obligé de passer par un isset et un !=null comme dans l'exemple que je t'ai donné. Comme ça la première fois que tu charges ta page, il ne devrait pas te faire d'erreur avec $Type=$_POST['Type'];
C'est peut-être à cause de ça qu'après, il a créé une constante "Type"...
C'est peut-être à cause de ça qu'après, il a créé une constante "Type"...
J'ai essayé comme tu me l'as proposé mais cette fois je n'ai meme plus l'affichage des données que j'avais
Et maintenant j'ai ceci comme réponse :
Ainsi que :
Je vais m'arracher les quelques cheveux qu'il me reste sur la tete.
Amicalement
<HTML> <body> <p> <form method="post"> <?php try { // On se connecte à MySQL $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=localhost;dbname=*****', '****', '*****', $pdo_options); // On récupère tout le contenu de la table Moulin Rouge $reponse = $bdd->query('SELECT * FROM Moulin_Rouge'); // On affiche chaque entrée une à une while ($donnees = $reponse->fetch()) { ?> <?php if(isset($_POST['Type']) & $_POST['Type'] != null) { echo $donnees['Type']; ?><input type="radio" name="Type" value=<?php echo $donnees['Type']; ?> /><br> <?php } } ?> <input value="Valider" type="submit" style="background-color:rgb(92,168,10)" name="valide" /> </form> <?php $reponse->closeCursor(); // Termine le traitement de la requête } catch(Exception $e) { // En cas d'erreur précédemment, on affiche un message et on arrête tout die('Erreur : '.$e->getMessage()); } ?> <center><table width="600" border="1" cellspacing="0" cellpadding="0"> <tr> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">ID</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Type</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Numéro</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Référence</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Indice</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Conservation</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Lieu</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Responsable</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Création</div><span></font></td> <td width="5"><font face="tahoma" size="2"><span style="color: rgb(92, 168, 10);"><div align="center">Diffusion</div><span></font></td> </tr> <?php //Connection Mysql mysql_connect("localhost","***","*****")or die("Problème avec la base de données"); mysql_select_db("*****")or die ("pas de connection"); //Recup Variable $Type=$_POST['Type']; $reponse = mysql_query("SELECT * FROM Moulin_Rouge WHERE Type='".Type."'"); // Requête SQL // On fait une boucle pour lister tout ce que contient la table : //*********************************************************************************************************************** if ($reponse) { //************************************************************************************************************************* while ($donnees = mysql_fetch_array($reponse)) { ?> <tr> <td><center><font face="tahoma" size="2"><?php echo $donnees['id']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Type']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Numero']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Reference']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Indice']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Conservation']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Lieu']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Responsable']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Creation']; ?></font></center></td> <td><center><font face="tahoma" size="2"><?php echo $donnees['Diffusion']; ?></font></center></td> </tr> <?php } //mysql_close(); // Déconnexion de MySQL //**************************************************************************************************** } else { echo 'Pas de champs!!!'; } //**************************************************************************************************** ?> </table></center> </body> </HTML>
Et maintenant j'ai ceci comme réponse :
Notice: Undefined index: Type in C:\wamp\www\php\test3.php on line 20 Notice: Undefined index: Type in C:\wamp\www\php\test3.php on line 20 Notice: Undefined index: Type in C:\wamp\www\php\test3.php on line 20 Notice: Undefined index: Type in C:\wamp\www\php\test3.php on line 20
Ainsi que :
Notice: Undefined index: Type in C:\wamp\www\php\test3.php on line 75 Notice: Use of undefined constant Type - assumed 'Type' in C:\wamp\www\php\test3.php on line 77
Je vais m'arracher les quelques cheveux qu'il me reste sur la tete.
Amicalement
AssassinTourist
Messages postés
5710
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 311
24 janv. 2012 à 13:43
24 janv. 2012 à 13:43
Non non ! Je me suis fait mal comprendre, c'est tout. Ta structure de page, ça doit être :
<form method="post">
<?php
Boucle pour afficher les boutons radio comme tu avais fait en premier lieu
?>
<table>
<tr>En-têtes de ta table</tr>
<?php
if(isset($_POST['Type']) & $_POST['Type'] != null)
{
Boucle pour afficher tes valeurs avec $_POST['Type'] et non $donnees['Type'] !
}
Déconnexion
?>
$donnees, c'est ta première table pour tes boutons radio
$_POST, c'est une valeur envoyée par ton formulaire. Fais un echo $_POST['Type'] après le isset pour voir à quoi il ressemble
<form method="post">
<?php
Boucle pour afficher les boutons radio comme tu avais fait en premier lieu
?>
<table>
<tr>En-têtes de ta table</tr>
<?php
if(isset($_POST['Type']) & $_POST['Type'] != null)
{
Boucle pour afficher tes valeurs avec $_POST['Type'] et non $donnees['Type'] !
}
Déconnexion
?>
$donnees, c'est ta première table pour tes boutons radio
$_POST, c'est une valeur envoyée par ton formulaire. Fais un echo $_POST['Type'] après le isset pour voir à quoi il ressemble