Requete sql avec variable php
Résolu/Fermé
clastype
Messages postés
330
Date d'inscription
lundi 25 juin 2007
Statut
Membre
Dernière intervention
26 mai 2017
-
7 oct. 2009 à 13:40
clastype Messages postés 330 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 26 mai 2017 - 8 oct. 2009 à 12:26
clastype Messages postés 330 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 26 mai 2017 - 8 oct. 2009 à 12:26
A voir également:
- Requete sql avec variable php
- Sql (+) - Forum Programmation
- Easy php - Télécharger - Divers Web & Internet
- Retour a la ligne php ✓ - Forum PHP
- Requête sql pix - Forum Python
- Blob sql ✓ - Forum Webmastering
5 réponses
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
7 oct. 2009 à 13:48
7 oct. 2009 à 13:48
Manque le $ à ta variable $donnees.
Sinon, pour incrémenter, tu peux le faire directement dans ta requête.
Sinon, pour incrémenter, tu peux le faire directement dans ta requête.
$sql = 'UPDATE jeux SET clics=clics+1 WHERE id=' . $donnees['id'];
clastype
Messages postés
330
Date d'inscription
lundi 25 juin 2007
Statut
Membre
Dernière intervention
26 mai 2017
195
8 oct. 2009 à 12:26
8 oct. 2009 à 12:26
Merci pour ton aide,
cela fonctionne maintenant.
Guillaume
cela fonctionne maintenant.
Guillaume
Smoking bird
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58
7 oct. 2009 à 13:46
7 oct. 2009 à 13:46
détecter les clics: javascript
enregistrer dans une bdd: php
coupler javascript et php pour faire ça: ajax.
what else?
enregistrer dans une bdd: php
coupler javascript et php pour faire ça: ajax.
what else?
clastype
Messages postés
330
Date d'inscription
lundi 25 juin 2007
Statut
Membre
Dernière intervention
26 mai 2017
195
8 oct. 2009 à 06:14
8 oct. 2009 à 06:14
Tout d'abord merci pour vos réponses, mais cela ne semble pas fonctionner , voici le code :
#####
$jeux=$_GET['jeux'];
$cate = mysql_query("SELECT * FROM jeux where id='$jeux'");
while ($donnees = mysql_fetch_array($cate) )
{
// Ici un ensemble de commande
$sql = 'UPDATE jeux SET clics=$clics+1 WHERE id=$id';
// Et la on compte
$clics=$donnees['clics'];
echo $clics;
// Affichage id du jeu
$id=$donnees['id'];
echo $id;
}
#######
Mon id s'affiche bien.
Les clics aussi, mais cela reste tout le temps à 0, le chiffre ne s'incrémente pas...
Une idée ?
Merci d'avance.
Guillaume
#####
$jeux=$_GET['jeux'];
$cate = mysql_query("SELECT * FROM jeux where id='$jeux'");
while ($donnees = mysql_fetch_array($cate) )
{
// Ici un ensemble de commande
$sql = 'UPDATE jeux SET clics=$clics+1 WHERE id=$id';
// Et la on compte
$clics=$donnees['clics'];
echo $clics;
// Affichage id du jeu
$id=$donnees['id'];
echo $id;
}
#######
Mon id s'affiche bien.
Les clics aussi, mais cela reste tout le temps à 0, le chiffre ne s'incrémente pas...
Une idée ?
Merci d'avance.
Guillaume
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
$sql = 'UPDATE jeux SET clics=$clics+1 WHERE id=$id';
le $clics est absurde, tu n'as aucune variable $clis à ce moment là
De plus, la requête étant entourée de simples quotes ' et non pas de doubles ", les variables ne seront pas remplacées par leurs valeurs.
même remarque pour $id
ta requête marcherait sûrement mieux si tu la mettais après avoir extrait les variables $clics et $id, mais tu peux tout faire en une seule ligne :
Enfin, tu n'exécutes jamais cette requête : tout ce que tu fais, c'est la mettre dans une chaîne. Il faut appeler mysql_query pour l'exécuter !
Enfin, la "logique" du programme est tordue : tu extrais les enregistrements dont l'id et données par $jeux, puis tu les balayes un par un pour faire un update avec comme clause WHERE d'avoir le bon id... à quoi sert de les avoir extraits avant ? Autant faire un seul update avec where id = '$jeux' (avant ta boucle) quitte à faire ensuite un select si tu veux vraiment afficher quelque chose. Mais si tu ne veux que la mise à jour, la totalité de ton script se résume à une seule ligne :
mysql_query("UPDATE jeux SET clics=clics+1 WHERE id='$_GET[jeux]'") or die (mysql_error());
$sql = 'UPDATE jeux SET clics=$clics+1 WHERE id=$id';
le $clics est absurde, tu n'as aucune variable $clis à ce moment là
De plus, la requête étant entourée de simples quotes ' et non pas de doubles ", les variables ne seront pas remplacées par leurs valeurs.
même remarque pour $id
ta requête marcherait sûrement mieux si tu la mettais après avoir extrait les variables $clics et $id, mais tu peux tout faire en une seule ligne :
$sql = "UPDATE jeux SET clics=clics+1 WHERE id='$donnees[id]'";
Enfin, tu n'exécutes jamais cette requête : tout ce que tu fais, c'est la mettre dans une chaîne. Il faut appeler mysql_query pour l'exécuter !
Enfin, la "logique" du programme est tordue : tu extrais les enregistrements dont l'id et données par $jeux, puis tu les balayes un par un pour faire un update avec comme clause WHERE d'avoir le bon id... à quoi sert de les avoir extraits avant ? Autant faire un seul update avec where id = '$jeux' (avant ta boucle) quitte à faire ensuite un select si tu veux vraiment afficher quelque chose. Mais si tu ne veux que la mise à jour, la totalité de ton script se résume à une seule ligne :
mysql_query("UPDATE jeux SET clics=clics+1 WHERE id='$_GET[jeux]'") or die (mysql_error());