Requête PHP pour interroger une base MySQL
Senorita
-
Senorita -
Senorita -
Bonjour,
Je souhaite créer des formulaires d'interrogation pour ma base de données située dans My SQL.
J'ai à peu près réussi à faire fonctionner le tout, mais j'aimerais que les résultats apparaissent sous la forme d'un tableau..Mais je connais pas le code pour faire ca!!
Voilà ce que j'ai fait :
$bd=mysql_connect("localhost","root","");
mysql_select_db("radio",$bd);
$requete="SELECT Code_Em, Intitule, Genre, Langue FROM emission";
$resultat=mysql_query($requete,$bd);
if ($uneligne=mysql_fetch_array($resultat)) {
echo "<h1> Résultats </h1>";
echo "<table>";
do {
echo "<tr> $uneligne["Code_Em"]</tr>";
echo "<tr> $uneligne["Intitule"]</tr>";
echo "<tr> $uneligne["Genre"]</tr>";
echo "<tr> $uneligne["Langue"]</tr>";
}
while ($uneligne=mysql_fetch_array($resultat));
echo "</table>";
}
Et voilà le super message d'erreur qui apparait :
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\formulaire\emission.php on line 20
Merci beaucoup pour votre aide!!
Je souhaite créer des formulaires d'interrogation pour ma base de données située dans My SQL.
J'ai à peu près réussi à faire fonctionner le tout, mais j'aimerais que les résultats apparaissent sous la forme d'un tableau..Mais je connais pas le code pour faire ca!!
Voilà ce que j'ai fait :
$bd=mysql_connect("localhost","root","");
mysql_select_db("radio",$bd);
$requete="SELECT Code_Em, Intitule, Genre, Langue FROM emission";
$resultat=mysql_query($requete,$bd);
if ($uneligne=mysql_fetch_array($resultat)) {
echo "<h1> Résultats </h1>";
echo "<table>";
do {
echo "<tr> $uneligne["Code_Em"]</tr>";
echo "<tr> $uneligne["Intitule"]</tr>";
echo "<tr> $uneligne["Genre"]</tr>";
echo "<tr> $uneligne["Langue"]</tr>";
}
while ($uneligne=mysql_fetch_array($resultat));
echo "</table>";
}
Et voilà le super message d'erreur qui apparait :
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\formulaire\emission.php on line 20
Merci beaucoup pour votre aide!!
A voir également:
- Requête PHP pour interroger une base MySQL
- Base de registre - Guide
- Easy php - Télécharger - Divers Web & Internet
- Formules mathématiques de base - Télécharger - Études & Formations
- Mysql community server - Télécharger - Bases de données
- Formules excel de base - Guide
4 réponses
Bonjour.
En php, on n'utilise pas la syntaxe DO...WHILE mais simplement WHILE (condition) {...}
Ca devrait aller mieux ;-)
En php, on n'utilise pas la syntaxe DO...WHILE mais simplement WHILE (condition) {...}
echo "<table>";
while ($uneligne=mysql_fetch_array($resultat)) {
echo "<tr> $uneligne["Code_Em"]</tr>";
echo "<tr> $uneligne["Intitule"]</tr>";
echo "<tr> $uneligne["Genre"]</tr>";
echo "<tr> $uneligne["Langue"]</tr>";
}
echo "</table>";
Ca devrait aller mieux ;-)
Tu peux donner ton code complet, ou au moins indiquer où se trouve la ligne 20 ?
Au passage : Si j'ai bien compris le fonctionnement du mysql_fetch_array, tu vas zapper le premier résultat.
Essaye plutôt :
A moins que quelqu'un n'ait une meilleure solution ?
Au passage : Si j'ai bien compris le fonctionnement du mysql_fetch_array, tu vas zapper le premier résultat.
Essaye plutôt :
$prems = true;
while ($uneligne=mysql_fetch_array($resultat)) {
if ($prems) {
$prems = false;
echo "<h1> Résultats </h1><table>";
}
echo "<td>";
// Là, tes echo sur tes champs
echo "</td>";
}
A moins que quelqu'un n'ait une meilleure solution ?
Ah mince oui bien sur! Pardon!
Attends je donne tout :
<html>
<body>
<?php
/*************************************************
REFERENCE AUX DEFINITIONS DE CONSTANTES POUR MYSQL
*************************************************/
require("connect.php");
/*************************************************
* LE TRAITEMENT A PROPREMENT DIT
*************************************************/
$bd=mysql_connect("localhost","root","");
mysql_select_db("radio",$bd);
$requete="SELECT Code_Em, Intitule, Genre, Langue FROM emission";
$resultat=mysql_query($requete,$bd);
if ($uneligne=mysql_fetch_array($resultat)) {
echo "<h1> Résultats </h1>";
echo "<table>";
{
echo "<tr>; $uneligne["Code_Em"];</tr>";
echo "<tr>; $uneligne["Intitule"];</tr>";
echo "<tr>; $uneligne["Genre"];</tr>";
echo "<tr>; $uneligne["Langue"];</tr>";
}
while ($uneligne=mysql_fetch_array($resultat));
echo "</table>";
}
?>
</body>
</html>
(la ligne 20 est celle là : echo "<tr>; $uneligne["Code_Em"];</tr>"; )
Jvais essayer avec ce que tu m'as donné.
Et au fait : le fonctionnement du mysql_fetch_array, je n'y comprends rien! J'ai recopié bêtement mon support de cours...
Merci !
Attends je donne tout :
<html>
<body>
<?php
/*************************************************
REFERENCE AUX DEFINITIONS DE CONSTANTES POUR MYSQL
*************************************************/
require("connect.php");
/*************************************************
* LE TRAITEMENT A PROPREMENT DIT
*************************************************/
$bd=mysql_connect("localhost","root","");
mysql_select_db("radio",$bd);
$requete="SELECT Code_Em, Intitule, Genre, Langue FROM emission";
$resultat=mysql_query($requete,$bd);
if ($uneligne=mysql_fetch_array($resultat)) {
echo "<h1> Résultats </h1>";
echo "<table>";
{
echo "<tr>; $uneligne["Code_Em"];</tr>";
echo "<tr>; $uneligne["Intitule"];</tr>";
echo "<tr>; $uneligne["Genre"];</tr>";
echo "<tr>; $uneligne["Langue"];</tr>";
}
while ($uneligne=mysql_fetch_array($resultat));
echo "</table>";
}
?>
</body>
</html>
(la ligne 20 est celle là : echo "<tr>; $uneligne["Code_Em"];</tr>"; )
Jvais essayer avec ce que tu m'as donné.
Et au fait : le fonctionnement du mysql_fetch_array, je n'y comprends rien! J'ai recopié bêtement mon support de cours...
Merci !
Au temps pour moi...
On peut utiliser la syntaxe DO {actions} WHILE (condition);
Toute la partie après le IF me semble donc correcte, au niveau de la logique...
Par contre :
Ca plante ici : l'interpréteur php lit echo "<tr>; $uneligne[", et il ne comprend pas la suite (il attend un . ou un ; ou un ,)
Essaye ça, pour toutes tes lignes :
On peut utiliser la syntaxe DO {actions} WHILE (condition);
Toute la partie après le IF me semble donc correcte, au niveau de la logique...
Par contre :
echo "<tr>; $uneligne["Code_Em"];</tr>";
Ca plante ici : l'interpréteur php lit echo "<tr>; $uneligne[", et il ne comprend pas la suite (il attend un . ou un ; ou un ,)
Essaye ça, pour toutes tes lignes :
echo "<tr>".$uneligne["Code_Em"]."</tr>";
Wouah la réponse rapide! Merci :-)
EUh mais en fait, je viens de l'enlever mais ca marche toujours pas....le même message d'erreur aparait!