Affichage de données en php
Fermé
clovis
-
19 avril 2013 à 13:48
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 - 19 avril 2013 à 17:29
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 - 19 avril 2013 à 17:29
A voir également:
- Affichage de données en php
- Easy php - Télécharger - Divers Web & Internet
- Reinstaller windows sans perte de données - Guide
- Effacer les données de navigation - Guide
- Affichage double ecran - Guide
- Windows 11 affichage classique - Guide
6 réponses
Mihawk
Messages postés
4315
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
846
19 avril 2013 à 13:56
19 avril 2013 à 13:56
Salut,
Que donne le print_r() suivant ?
S'il affiche Array() c'est que ta requête ne récupère rien en base. À ce moment-là il faut carrément vérifier les premières lignes de ton code :
Peut-être que ta variable POST est vide.
Que donne le print_r() suivant ?
print_r($affich);
S'il affiche Array() c'est que ta requête ne récupère rien en base. À ce moment-là il faut carrément vérifier les premières lignes de ton code :
if (isset($_POST['mat'])){ $mat= $_POST['mat']; }
Peut-être que ta variable POST est vide.
voici mes corrections:
// on teste la déclaration de nos variables
if (isset($_POST['mat']) )
{
//on recupère les valeurs
$mat= $_POST['mat'];
}
// connexion au serveur
$con=mysql_connect("localhost","root","") or die("erreur de connexion au serveur");
//connexion à la base de données
$bd=mysql_select_db("m_berte") or die("erreur de connexion à la base de données");
//formulation de la requête de selection
$sql='SELECT * FROM information WHERE agen_mat= "'.$mat.'" ';
//execution de requête
$req=mysql_query($sql) or die("erreur de selection");
//
$affich=mysql_fetch_array($req);
//on libère l'espace mémoire pour cette interrogation à la base
mysql_free_result($req);
//fermeture de la connexion à la base de données
mysql_close();
//affichage des données sélectionnées dans la base
print_r($affich);
/*echo $affich["agen_mat"].''.$affich["agen_nom"].''.$affich["agen_pren"].''.$affich["agen_codexp"].''.$affich["agen_fonc"].''.$affich["agen_agce"].''.$affich["agen_obj"].''.$affich["agen_per"].''.$affich["agen_serv"].''.$affich["agen_real"] .'<br/>';*/
mais php me dit:"undefined variable mat " à la ligne 23 (au niveau de la requête sql) or tout parait correcte
// on teste la déclaration de nos variables
if (isset($_POST['mat']) )
{
//on recupère les valeurs
$mat= $_POST['mat'];
}
// connexion au serveur
$con=mysql_connect("localhost","root","") or die("erreur de connexion au serveur");
//connexion à la base de données
$bd=mysql_select_db("m_berte") or die("erreur de connexion à la base de données");
//formulation de la requête de selection
$sql='SELECT * FROM information WHERE agen_mat= "'.$mat.'" ';
//execution de requête
$req=mysql_query($sql) or die("erreur de selection");
//
$affich=mysql_fetch_array($req);
//on libère l'espace mémoire pour cette interrogation à la base
mysql_free_result($req);
//fermeture de la connexion à la base de données
mysql_close();
//affichage des données sélectionnées dans la base
print_r($affich);
/*echo $affich["agen_mat"].''.$affich["agen_nom"].''.$affich["agen_pren"].''.$affich["agen_codexp"].''.$affich["agen_fonc"].''.$affich["agen_agce"].''.$affich["agen_obj"].''.$affich["agen_per"].''.$affich["agen_serv"].''.$affich["agen_real"] .'<br/>';*/
mais php me dit:"undefined variable mat " à la ligne 23 (au niveau de la requête sql) or tout parait correcte
Mihawk
Messages postés
4315
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
846
19 avril 2013 à 14:21
19 avril 2013 à 14:21
Je crois que l'erreur PHP parle bien pourtant !
Tu ne passes pas dans ce IF car ta variables $_POST['mat'] n'existe pas !
Donc tu ne déclares pas ta variable $mat
Mets plutôt ceci :
Cela va supprimer ton erreur mais le problème ne sera pas résolu, car tu as apparemment un problème avec ton formulaire. Fais-moi voir le code HTML de ton form.
if (isset($_POST['mat'])){ $mat= $_POST['mat']; }
Tu ne passes pas dans ce IF car ta variables $_POST['mat'] n'existe pas !
Donc tu ne déclares pas ta variable $mat
Mets plutôt ceci :
$mat = ""; if (isset($_POST['mat'])){ $mat= $_POST['mat']; }
Cela va supprimer ton erreur mais le problème ne sera pas résolu, car tu as apparemment un problème avec ton formulaire. Fais-moi voir le code HTML de ton form.
ok le voici:
<table width="600" border="0" height="200" align="center" bgcolor="#FFCC66">
<caption><u><font color="#FFFFFF"><h3 align="center">Verification d'objectif</h3></font></u></caption>
<form method="post" action="affichage.php">
<tr>
<td>Matricule agent:</td>
<td><input type="text" name="mat" align="middle" /></td>
</tr>
<tr>
<td colspan="2"><center><input type="submit" value="Rechercher" name="ok"/></center>
</td>
</tr>
</form>
</table>
<table width="600" border="0" height="200" align="center" bgcolor="#FFCC66">
<caption><u><font color="#FFFFFF"><h3 align="center">Verification d'objectif</h3></font></u></caption>
<form method="post" action="affichage.php">
<tr>
<td>Matricule agent:</td>
<td><input type="text" name="mat" align="middle" /></td>
</tr>
<tr>
<td colspan="2"><center><input type="submit" value="Rechercher" name="ok"/></center>
</td>
</tr>
</form>
</table>
Mihawk
Messages postés
4315
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
846
19 avril 2013 à 14:34
19 avril 2013 à 14:34
Si dans ton PHP tu mets ça :
Est-ce qu'il t'affiche bien la valeur que tu rentres dans ton formulaire ?
$mat = ""; if (isset($_POST['mat'])){ $mat= $_POST['mat']; } echo ($mat);
Est-ce qu'il t'affiche bien la valeur que tu rentres dans ton formulaire ?
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
19 avril 2013 à 14:50
19 avril 2013 à 14:50
Salut !
Je pense savoir pourquoi ta variable est vide !
Si je dis pas de bétise, on ne peut pas mettre de form dans des tables.
https://forum.alsacreations.com/topic-2-24074-1.html
(J'en ai fait l'experience dans un précédent dev)
Donc soit tu enlèves ta <table>, soit il va falloir de mettre à l'AJAX ;-)
Je pense savoir pourquoi ta variable est vide !
Si je dis pas de bétise, on ne peut pas mettre de form dans des tables.
https://forum.alsacreations.com/topic-2-24074-1.html
(J'en ai fait l'experience dans un précédent dev)
Donc soit tu enlèves ta <table>, soit il va falloir de mettre à l'AJAX ;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
19 avril 2013 à 17:29
19 avril 2013 à 17:29
Enfaite, tu ne peux pas mettre de <form> dans un <table>, a part dans un <td> priori, mais il faut que tout le <form> soit entièrement dans le <td>