[PHP]incrementation
Résolu
naruto-94
Messages postés
904
Statut
Membre
-
naruto-94 Messages postés 904 Statut Membre -
naruto-94 Messages postés 904 Statut Membre -
Bonsoir,
j'ai un petit probleme, j'aimerai incrementer la colonne nbr_aff de la table image en meme temps que l'image apparaisse .
Voici le code :
Merci d'avance.
PS : nbr_aff c'est le nombre de fois que l'image c'est affiché.
----------------
- [ Juck'n0 ]-
j'ai un petit probleme, j'aimerai incrementer la colonne nbr_aff de la table image en meme temps que l'image apparaisse .
Voici le code :
<?PHP
//connexion sql
require ("config/conf.php");
//selection d'une image aleatoire
$sql = 'SELECT id,lien_image,nbr_aff FROM images ORDER BY rand() limit 0,1 ';
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
while($data = mysql_fetch_array($req))
{
//affiche une image au hasard
echo '<img src= ' .$data['lien_image'] . '>' ;
// C'est ici que sa me pose probleme j'aimerai incrementer la colonne nbr_aff selon l'id de l'image mais je n'y arrive pas.
$sql2 = "UPDATE pub SET nbr_aff =" .$data['nbr_aff'] + 1. "WHERE id = .$data['id']" ;
}
mysql_close();
?>
Merci d'avance.
PS : nbr_aff c'est le nombre de fois que l'image c'est affiché.
----------------
- [ Juck'n0 ]-
A voir également:
- [PHP]incrementation
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Php alert ✓ - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
- Alert PHP - Forum PHP
3 réponses
Salut,
Il y a quelques fautes dans la variable. Essaye avec ça :
[code]
$sql2 = "UPDATE pub SET nbr_aff = '".$data['nbr_aff'] + 1 ."' WHERE id = ".$data['id'] ;
[/code]
Si ça ne marche pas, dis le nous.
@bientôt.
Il y a quelques fautes dans la variable. Essaye avec ça :
[code]
$sql2 = "UPDATE pub SET nbr_aff = '".$data['nbr_aff'] + 1 ."' WHERE id = ".$data['id'] ;
[/code]
Si ça ne marche pas, dis le nous.
@bientôt.
Bonjour,
En fait, je te conseille plutôt de faire l'incrémentation en SQL.
Pourquoi ? Tout simplement dans le cas où plusieus utilisateurs tombent en même temps sur la même image, tu ne réutilises pas la valeur trouvée au début du script, mais bien celle en cours dans la base de données.
Ensuite, tu n'as pas demandé à php d'exécuter la requête ! Alors forcément, ça marche mons bien ;)
Cela donnerait donc :
En fait, je te conseille plutôt de faire l'incrémentation en SQL.
Pourquoi ? Tout simplement dans le cas où plusieus utilisateurs tombent en même temps sur la même image, tu ne réutilises pas la valeur trouvée au début du script, mais bien celle en cours dans la base de données.
Ensuite, tu n'as pas demandé à php d'exécuter la requête ! Alors forcément, ça marche mons bien ;)
Cela donnerait donc :
$sql2 = "UPDATE pub SET nbr_aff=nbr_aff+1 WHERE id=".$data['id']; mysql_query($sql2);Voilà :)