Bonjour

J'ai un soucis dans la mise à jour de ma base de donnée :
J'ai une table users contenant notamment les variables :
- now : timestamp, NULL par defaut
- code : varchar (15), NULL par defaut


Dans mon code php, je souhaite générer ces variables puis mettre à jour la base de donnée pour un utilisateur avec un identifiant $id.

Ce qui me donne le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
	// Variable à ajouter à la base de donnée
	$now=time(); // Timestamp actuel
	$code=strval(rand()*10^6); // Nombre pris au hasard transformé en chaine de caractère
 
	// Récupération de la l'identifiant de l'utilisateur recherché $id (non montré ici
 
	// Ajout à la base de donnée des informations
	$query="UPDATE user
			SET now=$now
				AND code='$code'
			WHERE id='$id';";
	$res=mysql_query($query) or die("Requète non exécutée : ".mysql_error());
 
	if ($res) {
		// code si la requête a été exécuté. Ce code est toujours exécuté.
	} else {
		echo "base de donnée non modifié";
	}
Pour mes tests, j'ai fait affiché juste avant ma requête sql, les valeurs de $id, $code et $now et le contenu de ces variables sont correcte.

Ma variable $res vaut toujours 1 ce qui signifie que ma requete c'est correctement exécuté et pourtant ma base de donnée reste inchangé et mes 2 colonnes reste à NULL pour cet utilisateur.

Es ce que vous pourrez m'aider en m'expliquant ou pourrait peut être venir mon erreur ? Je vous remercie d'avance.