Update - PHP / MySQL (Avec Formulaire)

Résolu
djsquinje Messages postés 736 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 31 mai 2017 - 15 juil. 2014 à 12:13
djsquinje Messages postés 736 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 31 mai 2017 - 15 juil. 2014 à 13:29
Bonjour à vous tous,

Alors voila j'ai ma base de donnée avec des infos afficher dans un tableaux qui dans une cellule contiens un lien "modifier" jusqu'à la tous vas bien.

Quand je clique sur modifier il m'affiche bien toute ma base mais le problème arrive, quand je veux la modifier j'ai un message suivant qui apparait :

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = '1'' at line 4 sur ma page modification3.php


Pourtant j'ai suivi ce tuto : http://forums.mediabox.fr/wiki/tutoriaux/php/bdd/inserer-modifier-supprimer-des-donne-php qui fonctionne très bien quand on le suis (j'ai suivi uniquement la partie modifier)


Voici mes sources :

Modification1.php

<html>
<head>
<title>modification de données en PHP :: partie 1</title>
</head>
<body>
<?php
//connection au serveur:
$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db = mysql_select_db( "victor" ) ;

//requête SQL:
$sql = "SELECT *
FROM recherche" ;

//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;

//affichage des données:
while( $result = mysql_fetch_object( $requete ) )
{
echo(
"<div>"
.$result->entreprise." ".$result->mail_rh
." <a href=\"modification2.php?idPersonne=".$result->id."\">modifier</a></div>"
) ;
}
?>
</body>
</html>

Modification2.php

<html>
<head>
<title>modification de données en PHP :: partie2</title>
</head>
<body>

<?php
//connection au serveur:
$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db = mysql_select_db( "victor" ) ;

//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idPersonne"] ;

//requête SQL:
$sql = "SELECT *
FROM recherche
WHERE id = ".$id ;

//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;

//affichage des données:
if( $result = mysql_fetch_object( $requete ) )
{
?>

<form name="insertion" action="modification3.php" method="POST">
<input type="hidden" name="id" value="<?php echo($id) ;?>">
<table>
<tr>
<td>Entreprise</td>
<td><input type="text" name="entreprise" value="<?php echo($result->entreprise) ;?>"></td>
</tr>
<tr>
<td>mail_rh</td>
<td><input type="text" name="mail_rh" value="<?php echo($result->mail_rh) ;?>"></td>
</tr>

<tr>
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>

<?php
}//fin if
?>

</body>
</html>

Modification3.php

<?php
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db = mysql_select_db( "victor" ) ;

//récupération des valeurs des champs:
$entreprise = $_POST["entreprise"] ;
$mail_rh = $_POST["mail_rh"] ;


//récupération de l'identifiant de la personne:
$id = $_POST["id"] ;

//création de la requête SQL:
$sql = "
UPDATE personnes
SET entreprise = '$entreprise',
mail_rh = '$mail_rh',
WHERE id = '$id' " ;



//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;


//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("La modification à été correctement effectuée") ;
}
else
{
echo("La modification à échouée") ;
}
?>

Merci de votre aide (Débutant en php)
A voir également:

1 réponse

djsquinje Messages postés 736 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 31 mai 2017 3
15 juil. 2014 à 13:29
Erreur trouver, pas de virgule avant le where

UPDATE personnes SET entreprise = '$entreprise', mail_rh = $mail_rh' WHERE id = '$id' " ;
1
Rejoignez-nous