Page 1 sur 1

update multi tables

Posté : 28 oct. 2009, 18:06
par nicolashochart
bonjour

j'ai fait un espace membre qui permet de modifier son mail et son mot de passe.

deux tables mysql sont utilisées
table tbl_user
table gites

ces deux tables sont liées grace au mail de l'utilisateur :
champ login de la table tbl_user et champ mailProprio de la table gites


j'arrive bien grace a un formulaire a changer le login (mail) dans la table tbl_user mais j'aimerai pouvoir aussi modifier les enregsitrements de la table gites dont le mailProprio correspondait au mail avant modifcation de la table tbl_user

voici le code:

page modifMail
$sql = "SELECT idmembre,login,pwd FROM tbl_user where login='".$_SESSION['login']."'";
    //exécution de la requête:
$requete = mysql_query( $sql, $base ) ;

<form name="formulaire" method="post" action="validModifIdentifiants.php" ">
<?php
while($data = mysql_fetch_assoc($requete))
    {
echo "<tr><td>Login</td><td><input type=text name=login ></td><td>".$data['login']."</td></tr>";
echo "<tr><td>&nbsp;</td></tr>";
echo "<tr><td>Mot de passe</td><td><input type=text name=pwd ' ></td><td>".$data['pwd']."</td></tr>";
echo "<input type=hidden name=idmembre value='".$data['idmembre']."'>";
echo "<tr><td colspan=3 align=center><input type=submit value=modifier></td></tr>"; 
  $_SESSION['loginAncien']=$data['login'];
echo $_SESSION['loginAncien'];  }

// on ferme la connexion à mysql
mysql_close();
?> 
et voici la page de traitement
$loginNouveau=$_POST['login'];
$pwd=$_POST['pwd'];
$idmembre=$_POST['idmembre'];
echo $_SESSION['loginAncien']

$sql=mysql_query("UPDATE  tbl_user  SET  login='$loginNouveau', pwd='$pwd'  WHERE idmembre='$idmembre'");
  
  echo 'Vos données  ont bien été modifiées.<BR>';

   if (!$sql) {
    die('Requête invalide : ' . mysql_error());
}

    mysql_close(); 
?>



je voulais faire cette requete mais ca ne marche pas
UPDATE gites set mailProprio=$loginNouveau where mailProprio=$_SESSION['login']
je vous remercie par avance pour votre aide

Re: update multi tables

Posté : 29 oct. 2009, 11:36
par Calimero
Bonjour,
je voulais faire cette requete mais ca ne marche pas
UPDATE gites set mailProprio=$loginNouveau where mailProprio=$_SESSION['login']
je vous remercie par avance pour votre aide

Manque juste les apostrophes autour des valeurs texte...

Tu pourrais éviter ces soucis si tu testais au préalable tes requêtes dans PHPMyAdmin avant de les insérer dans du code PHP.