Page 1 sur 1

le code php "modifier" ne fonctionne pas

Posté : 19 juil. 2013, 15:41
par imani
Bonjour,

Je change un peu le sujet car une partie de mon problème est déjà résolu.
Au fait, à présent, avec mon code php suivant, je ne parviens pas à modifier les informations dans ma base de données via un formulaire.

Voici à présent mon code (retouché) pour la modification :

<?php
//--------------------------------connexion avec la base de donnees

require_once("connectionMYSQL.inc.php");

//------------------------initialisation de l'Id

$id =$_REQUEST['IdClient'];

//---------------------requete de recherche

$requete= "SELECT * FROM client WHERE IdClient='$id'";
$resultat = mysql_query($requete);
$client = mysql_fetch_array($resultat);

//----------------------------- requete pour la modification
if(isset($_POST['modif'])){
$requete2 = ("UPDATE client SET nom = '".$_POST['nom']."',prenom = '".$_POST['prenom']."',etatcivil = '".$_POST['etatcivil']."',nationalite= '".$_POST['nationalite']."',adresse = '".$_POST['adresse']."',telephone = '".$_POST['telephone']."'
,occupation = '".$_POST['occupation']."',sexe = '".$_POST['sexe']."' WHERE IdClient = $id'") or die (mysql_error());

if($requete2){
echo "la modification a reussi avec succes!";

}
}
mysql_close();

?>

Je pense qu'il y a encore quelque chose que omis dans ce code afin que je puisse faire correctement la modification. Mais je crois bien que je ne suis pas loin de la solution.
Veuillez m'aider SVP !!!

Merci d'avance pour votre aide et bon après midi.

Re: le code php "modifier" ne fonctionne pas

Posté : 19 juil. 2013, 16:05
par Zahnzao
salut,
<?php
//--------------------------------connexion avec la base de donnees

require_once("connectionMYSQL.inc.php");

//------------------------initialisation de l'Id

$id =$_REQUEST['IdClient'];

//---------------------requete de recherche

$requete= "SELECT * FROM client WHERE IdClient='$id'";
$resultat = mysql_query($requete);
$client = mysql_fetch_array($resultat);

//----------------------------- requete pour la modification
if(isset($_POST['modif'])){
     $requete2 = ("UPDATE client SET nom = '".$_POST['nom']."',prenom = '".$_POST['prenom']."',etatcivil = '".$_POST['etatcivil']."',nationalite= '".$_POST['nationalite']."',adresse = '".$_POST['adresse']."',telephone = '".$_POST['telephone']."',occupation = '".$_POST['occupation']."',sexe = '".$_POST['sexe']."' WHERE IdClient = $id'") or die (mysql_error());

     if($requete2){
          echo "la modification a reussi avec succes!";
     }
}
mysql_close();

?> 
C'est quoi cette ligne ?
$requete2 = ("UPDATE client SET nom = '".$_POST['nom']."',prenom = '".$_POST['prenom']."',etatcivil = '".$_POST['etatcivil']."',nationalite= '".$_POST['nationalite']."',adresse = '".$_POST['adresse']."',telephone = '".$_POST['telephone']."'
,occupation = '".$_POST['occupation']."',sexe = '".$_POST['sexe']."' WHERE IdClient = $id'") or die (mysql_error());
Pas de mysql_query ?

Re: le code php "modifier" ne fonctionne pas

Posté : 21 juil. 2013, 08:39
par sirakawa
Il faudrait penser à passer à mysqli (mysql est deprecated, obsolete si tu préfèeres);
sans quoi:
if (isset($_POST['nom']))
{
//pour bien faire il faudrait vérifier la validité du nom
 $p_nom = $_POST['nom'];
}
//similaire pour les autres
$p_prenom = $_POST['prenom'];
$p_etatcivil = $_POST['etatcivil'];
$p_nationalite = $_POST['nationalite'];
$p_adresse = $_POST['adresse'];
$p_telephone = $_POST['telephone'];
$p_occupation = $_POST['occupation'];
$p_sexe = $_POST['sexe'];
//Au passage, il y a une erreur sur l'état civil
$requete2 = ("UPDATE client SET nom = '".$_POST['nom']."',prenom = '".$_POST['prenom']."',etatcivil = '".$_POST['nom']."',
nationalite= '".$_POST['nationalite']."',adresse = '".$_POST['adresse']."',telephone = '".$_POST['telephone']."'
,occupation = '".$_POST['occupation']."',sexe = '".$_POST['sexe']."' WHERE IdClient = $id'") or die (mysql_error());
$requete2 = "UPDATE client SET nom = '$p_nom', prenom = '$p_prenom', etatcivil = '$_p_etat_civil',
nationalite= '$_p_nationalite', adresse = '$_p_adresse', telephone = '$_p_telephone' ,occupation = '$p_occupation',
sexe = '$_p_sexe' WHERE IdClient = $id";
//a tout hasard en cas d'erreur
print "<br> >>>$requete<<<<";
$resultat = mysql_query ($requete_2);
if ($resultat  == false)
{
}