Php Erreur de syntaxe près de
voila, je souhaite afficher les résultat d'une requete SQl sur une page web.
dans cette requette, j'utilise dans la clause FROM une variable issue d'une page précedente $NumCompte. Le probléme est que lorque j'execute ce code, Le navigateur m'affiche : Erreur de syntaxe près de ".LaValeurDeLaVariableSaisie" à la ligne 1.
que faire? Si quelqu'un peut m'aider Ci-joint le code :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>CONSULTATION COMPTE</title>
</head>
<body>
<div style="text-align: center;">
<div style="text-align: center;"><img style="width: 996px; height: 225px;" alt="" src="ImagesSite/BanniereGSI002.bmp"><br>
</div>
<div style="text-align: left;">L'Etat de votre Compte au <?php $date = date("d-m-Y");
Print("$date");
?><br>
</div>
<?php
$NumCompte=$_POST['NumCompte'] ;
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'banque';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = "SELECT * FROM '".$NumCompte."'";
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
// si on a récupéré un résultat on l'affiche.
if($total) {
// debut du tableau
echo '<table bgcolor="#FFFFFF">'."\n";
echo '<tr>';
echo '<td bgcolor="#99FF00"><b><u>Date</u></b></td>';
echo '<td bgcolor="#99FF00"><b><u>Libelle Opération</u></b></td>';
echo '<td bgcolor="#99FF00"><b><u>Debit en €uros (-)</u></b></td>';
echo '<td bgcolor="#99FF00"><b><u>Credit en €uros (+)</u></b></td>';
echo '</tr>'."\n";
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td bgcolor="#FFFF33">'.$row["Date"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Libellé d'opération"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Débit"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Crédit"].'</td>';
echo '</tr>'."\n";
}
echo '</table>'."\n";
// fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';
// on libère le résultat
mysql_free_result($result);
?>
</div>
</body>
</html>
dans cette requette, j'utilise dans la clause FROM une variable issue d'une page précedente $NumCompte. Le probléme est que lorque j'execute ce code, Le navigateur m'affiche : Erreur de syntaxe près de ".LaValeurDeLaVariableSaisie" à la ligne 1.
que faire? Si quelqu'un peut m'aider Ci-joint le code :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>CONSULTATION COMPTE</title>
</head>
<body>
<div style="text-align: center;">
<div style="text-align: center;"><img style="width: 996px; height: 225px;" alt="" src="ImagesSite/BanniereGSI002.bmp"><br>
</div>
<div style="text-align: left;">L'Etat de votre Compte au <?php $date = date("d-m-Y");
Print("$date");
?><br>
</div>
<?php
$NumCompte=$_POST['NumCompte'] ;
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'banque';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = "SELECT * FROM '".$NumCompte."'";
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
// si on a récupéré un résultat on l'affiche.
if($total) {
// debut du tableau
echo '<table bgcolor="#FFFFFF">'."\n";
echo '<tr>';
echo '<td bgcolor="#99FF00"><b><u>Date</u></b></td>';
echo '<td bgcolor="#99FF00"><b><u>Libelle Opération</u></b></td>';
echo '<td bgcolor="#99FF00"><b><u>Debit en €uros (-)</u></b></td>';
echo '<td bgcolor="#99FF00"><b><u>Credit en €uros (+)</u></b></td>';
echo '</tr>'."\n";
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td bgcolor="#FFFF33">'.$row["Date"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Libellé d'opération"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Débit"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Crédit"].'</td>';
echo '</tr>'."\n";
}
echo '</table>'."\n";
// fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';
// on libère le résultat
mysql_free_result($result);
?>
</div>
</body>
</html>
Configuration: Windows XP Firefox 2.0.0.3
1 réponse
-
ContributeurSalut jonath2210,
Déjà tu a plein d'erreur d'écriture de tes variables. Il y a des accents partout, des apostrophes etc....
Sache que le nom de tes champs dans ta table ne doit contenir que des caractères NON-ACCENTUES, éventuellement séparés par des undescores ( _ , sous la touche 8).
echo '<td bgcolor="#FFFF33">'.$row["Date"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Libellé d'opération"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Débit"].'</td>';
echo '<td bgcolor="#FFFF33">'.$row["Crédit"].'</td>';
<?php $date = date("d-m-Y"); : tu es sur que ça affiche la date de consultation du client ? Ce ne serait pas plutôt la date d'upload du fichier qui s'affiche ?
Ensuite: autre très grosse erreur. Vire tes images en bmp. C'est beaucoup trop lourd. Transforme la en jpg, gif ou png.