variable session dans base

Eléphant du PHP | 250 Messages

07 sept. 2006, 23:56

Bonjour,

J'ai 1 petit soucis avec une sauvegarde de variable de session en base,
<?php
session_start() ;
?>
<?php
$sql = "UPDATE membres SET stock1='objet/rien.gif' WHERE id = ".$id;
$_SESSION['stock1']='./objet/rien.gif';
$sql = "UPDATE membres SET qstock1=0 WHERE id = ".$id;
$_SESSION['qstock1']=0;
header("Location: page_membre.php");
mysql_close();
?> 
ca fonctionne très bien à l'écran mais la sauvegarde en base de données ne fonctionne pas...

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

08 sept. 2006, 00:15

Salut,
Tu peux regrouper les 2 mise à jour des champs dans une seule requête
$sql = "UPDATE membres SET stock1='objet/rien.gif', qstock1=0  WHERE id = ".$id; 
Tu as oublié une étape... que doivent faire les requêtes ? :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 377 Messages

08 sept. 2006, 00:15

Si on suit uniquement ce que fait le morceau de code que tu nous proposes, c'est normal, pour faire un accès à mysql il ne faut pas seulement définir la requete (ce que tu fais quand tu écris $sql = "UPDATE membres SET stock1='objet/rien.gif' WHERE id = ".$id; ), mais la faire parvenir à la base de données en utilisant mysql_query()
Ensuite, pourquoi dis tu que tu sauvegardes tes variables de session dans ta base alors que tu les définis après avoir fait ta requete?
Petit scarabée deviendra grand

Eléphant du PHP | 250 Messages

16 sept. 2006, 17:20

Ca y est, c'est résolu.....
$sql= " SELECT stock1 FROM membres WHERE id = ". $id; 
$res=mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
while ($data = mysql_fetch_array($res))
       {
$sql = "UPDATE membres SET objetutil1= stock1, stock1='./images/rien.jpg',  qobjetutil1=qstock1, qstock1=0, uobjetutil1=ustock1 WHERE id = ".$id; 
mysql_query($sql) or die('Erreur SQL '.$sql.'<br>'.mysql_error());
if($res)
{
$_SESSION['objetutil1']= $_SESSION['stock1'];
$_SESSION['stock1']= './images/rien.jpg';
$_SESSION['ustock1']= $_SESSION['ustock1'];
$_SESSION['qobjetutil1']= $_SESSION['qstock1'];
$_SESSION['qstock1']= $_SESSION['qstock1']=0;
$_SESSION['uobjetutil1']= $_SESSION['ustock1'];
header("Location: page_membre.php");
}
mysql_close();
?>