Probleme avec un UPDATE en php

Résolu/Fermé
kakashi05 Messages postés 186 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 août 2011 - 2 nov. 2009 à 17:05
kakashi05 Messages postés 186 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 août 2011 - 3 nov. 2009 à 14:10
Bonjour,
j'aimerai vous exposez un probleme je debutes en php et j'ai un petit probleme avec le Update d'un formulaire
je m'explique j'ai un formulaire que j'aimerai mettre à jour, je recupere bien les donnees mais lorsque je fais la modification il ne le prend pas en compte je vous montre mon code

formulaire à editer

<?php
session_start();
$base=mysql_connect('localhost','root','');
mysql_select_db('dtc',$base);
$owner=$_SESSION['adm_login'];
$_SESSION['name']=$name;
$_GET['login']=$login;

$sql="SELECT * from ftp_access WHERE hostname='$name' AND login='$login'";
$resultat=mysql_query($sql);
$mydomain=mysql_fetch_array($resultat);
?>
<html>
<head>
<title>Creation de compte FTP</title>
</head>
<body>
<!-- Declaration de notre formulaire -->
Modifier votre compte ftp <h4> <?php echo $_SESSION['name'] ;?> </h4>
<br />
<form action="confirmodifftp1.php" method="POST">

<table>
        <tr>
        <td><label>login</label></td>
        <td><input type="text" name="login" value="<?php echo $mydomain['login'] ;?>" />@ <?php echo $_SESSION['name']; ?> <br/></td>
        </tr>

        <tr>
        <td><label>Password</label></td>
        <td><input type="text" name="passwd" value="<?php echo $mydomain['password'] ; ?>"/><br/></td>
        </tr>
</table>
<input type="submit" value="Modifier">
</form>
<a href="membre.php">Retour au menu principe </a></br>
<a href="deconnexion.php"> Deconnexion </a>
</body>
</html>
<?php mysql_close() ;?>


Et voila l'autre page qui doit m'afficher les modifications dans un tableau

<?php
session_start();
$base=mysql_connect('localhost','root','');
mysql_select_db('dtc',$base);

$owner=$_SESSION['adm_login'];
$_SESSION['name']=$name;
$_GET['login']=$login;

##Mise a jour de la table
$sql="UPDATE ftp_access SET login='$login', password='$passwd' WHERE login='$login'";
mysql_query($sql) or die ('Error SQL ! '.$sql.'<br/>'.mysql_error());

echo" <html>";
echo" <head>";
echo" <title></title>";
echo" </head>";
echo" <body>";
$sql1="SELECT * from ftp_access WHERE hostname='$name'";
$resultat=mysql_query($sql1);

echo "<h1>Vos comptes ftp</h1> <br/>";
echo "<table width=50% align=center border=1>";
echo "<tr><td>Compte ftp</td><td>Modifier un compte</td><td>Supprimer un compte</td></tr>";
while($myftp=mysql_fetch_array($resultat) ){
$affiche=$myftp['login'];
echo "<tr>";
echo "<td>$affiche</td>";
echo "<td>";
echo "<a href='modiftp.php?login=$affiche'>Modifier</a></td>";
echo "<td>";
echo "<a href='suppftp.php?login=$affiche'>Supprimer</a></td>";
echo "</td>";
echo "</tr>";
}
echo "</table> <br />";

mysql_close();
echo "<a href='membre.php'>Retour au menu principe </a></br>";
echo "<a href='deconnexion.php'> Deconnexion </a>";
echo"</body>";
echo"</html>";
?>


Je pense que l'erreur vient de la requete Update surtout au niveau du WHERE car lorsque je met les variables en sql sa marche sans probleme si quelqu'un à une idee merci de bien vouloir me donne un coup de main
A voir également:

5 réponses

Salut,

La formulation de ta requete me parait incorrecte au niveau des variables. Essaye de l'afficher pour vérifier, je pense que ce serait plutôt un truc du genre :
$sql="UPDATE ftp_access SET login='".$login."', password='".$passwd."' WHERE login='".$login."'";
0
kakashi05 Messages postés 186 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 août 2011 32
2 nov. 2009 à 17:27
Merci pour ta reponse mais la formulation de ma requete marche et pourtant et j'ai le meme resultat avec ta requete aussi
Lorsque je l'affiche comme ici il recupere bien les variables modifier mais la modification ne se fait dans la base de donnee

<?php
session_start();
$base=mysql_connect('localhost','root','');
mysql_select_db('dtc',$base);
$owner=$_SESSION['adm_login'];
$_SESSION['name']=$name;
$_GET['login']=$login;
$_POST['passwd']=$passwd;
#Mise à jourr de la tablee

$sql="UPDATE ftp_access SET login='$login', password='$passwd' WHERE login='$login'";
mysql_query($sql) or die ('Error SQL ! '.$sql.'<br />'.mysql_error() );

echo "voila votre nouveau login $login <br />";
echo "voila le password $passwd";


mysql_close();

?>


Si quelqu'un a une idee merci
0
Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
2 nov. 2009 à 17:52

$sql="UPDATE ftp_access SET login='$login', password='$passwd' WHERE login='$login'";


Ajoute ensuite un echo $sql;
Et envoies ce que ça t'as mis ...
0
kakashi05 Messages postés 186 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 août 2011 32
3 nov. 2009 à 13:24
voila ce que sa me donne comme je l'avais imaginier en fait le champs reprend bien la meme valeur comme ici
voila le resultat du echo
UPDATE ftp_access SET login='robert99@hulk.com', password='robert' WHERE login='robert99@hulk.com'



et vu que ce nom n'existe pas dans la base il ne peut pas le remplacer
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kakashi05 Messages postés 186 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 août 2011 32
3 nov. 2009 à 14:10
c'est bon j'ai pu corriger mon probleme merci pour votre aide j'ai modifier un peu mon code et ma requete
0