Comment afficher les données d'une table en utilisant des liens dynamiques ?

Résolu/Fermé
Utilisateur anonyme - Modifié le 27 févr. 2019 à 17:56
 Utilisateur anonyme - 28 févr. 2019 à 13:03
Bonjour,
Depuis quelques jours je cherche des tutoriaux sur ce sujet mais j'en trouve pas
Voici mon lien dynamique qui se trouve sur page1.php :

<a href="page2.php?mot=voiture">voiture</a>


et voici l'opération que j'essaye de faire exécuter sur page2.php :

$sql = "SELECT * FROM matable WHERE mot='$mot';

J'ai esseyé aussi avec mot=$_GET['mot'] mais ça me donne toujours des erreurs de syntax.
et voici le code de page2.php:

<?php
$con=mysqli_connect("localhost","root","mon mot de passe","ma base de donées") or die(mysql_error());

$output = ' ';
$mot = $_GET['mot'];

$sql = "SELECT * FROM matable WHERE mot='$mot';
$query = mysqli_query($con,$sql)

$count = mysqli_num_rows($query);

while($row = mysqli_fetch_array($query)) {
$mot = $row['mot'];
$definition = $row['définition'];
$id = $row['id'];

$output .= '<div>'.$mot.' '.$definition.'</div>';

}
?>

Merci
A voir également:

1 réponse

jordane45 Messages postés 38350 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 26 décembre 2024 4 719
27 févr. 2019 à 19:35
L'erreur de syntaxe se trouve sur le ligne
$sql = "SELECT * FROM matable WHERE mot='$mot';

il te manque, en effet, une quote à la fin de ta requête....
$sql = "SELECT * FROM matable WHERE mot='$mot'";


NB: Attention.. tu mélanges des instructions mysql_* avec des instructions mysqli_*

Il faut tout code en mysqli_* .....



0
Utilisateur anonyme
27 févr. 2019 à 21:59
salut,
pour le quote qui manque je l'avais just oublié quand j'ai copié collé le code donc meme en mettant le quote j'obtient l'erreur suivante :
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)
0
jordane45 Messages postés 38350 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 26 décembre 2024 4 719
27 févr. 2019 à 22:57
Un point virgule manquant à la ligne d'après
$query = mysqli_query($con,$sql) 


De plus, lorsque tu as un message d'erreur... donne le nous en entier ( y compris avec le numéro de ligne ) et n'hésites pas à nous indiquer à quelle ligne de code ça correspond exactement dans ton code.
Dis toi également que quand tu as un message d'erreur... le souci se situe à la ligne indiquée dans le message..... ou à la ligne précédente... (souvent des quotes, des point-virgules, des parenthèses, des accolades.... mal fermées )
0
J'ai modifié le code et maintenant ça marche merci

<?php
$con=mysqli_connect("localhost","root","mot de passe","ma base de données") or die(mysqli_error());
$output = '';
$mot = $_GET['mot'];
$query = "SELECT * FROM matable WHERE mot='$mot'";
$result = mysqli_query($con, $query);
while($row = mysqli_fetch_array($result))
{
$mot= $row['mot'];
$definition = $row['définition'];
$id = $row['id'];
$output .= ''.$mot.'<br>'.$definition.'';
}
?>
<html>
<body>
<?php print("$output"); ?>
</body>
</html>

0
Bonjour,
Je voudrais mentioner que le code ci-dessus ne fonctionne pas sur wamp server où il affiche une page vide donc il n'affiche pas les données de la table cependant ce meme code fonctionne bien sur 000webhost server
et affiche la table correctement d'où la question, est-ce que wamp server est vraiment fiable pour faire des tests ?
Comme alternatif j'ai téléchargé xamp server pour windows mais au cours de l'installation j'ai un message
d'avertissement parlant d'un evantuel conflit entre xamp et mon antivirus, je comprends pas ce message donc je n'ose pas continuer le processus d'installation.

Cordialement
0