PHP Fonction Update

Résolu/Fermé
phil - Modifié par phil le 20/02/2012 à 13:54
 phil - 20 févr. 2012 à 14:19
Bonjour,

J'ai un souci avec la fonction Update j'arrive pas a remplacer les champs...

Si quelqu'un peu jetter un coup d'oeil à mon code pour voir si il y a un souci ...

Merci d'avance.

<?php
//

include("../connection.php");
$id=$_POST["id"];
$requete="select * from t_morceau where id=$id";
$result=mysql_query($requete);
$row=mysql_fetch_object($result);
$vloic=$_POST["vloic"];
$vharley=$_POST["vharley"];
$vfred=$_POST["vfred"];
$vphil=$_POST["vphil"];




$requete1="UPDATE 't_morceau' SET 'id'=[$id],'par'=[$row->par],'artiste'=[$row->artiste],'titre'=[$row->titre],'lien'=[$row->lien],'loic'=[$vloic],'harley'=[$vharley],'fred'=[$vfred],'phil'=[$vphil],'propo'=[$row->propo],'valid'=[$row->valid],'abooser'=[$row->abosser] WHERE id=$id ";

echo $id;
echo $requete1;

if ($execute=mysql_query($requete1))
{


}
else
{
echo "probleme d'enregistrement";
echo "<a HREF='form.html'>retour au formulaire</a>";
}


?>

Message d'erreur :

UPDATE 't_morceau' SET 'id'=[4],'par'=[Phil],'artiste'=[Elvis Presley],'titre'=[All Shook Up ],'lien'=http://www.youtube.com/watch?v=3rQEbQJx5Bo,'loic'=[1],'harley'=[1],'fred'=[1],'phil'=[1],'propo'=[1],'valid'=[0],'abooser'=[] WHERE id=4 probleme d'enregistrementretour au formulaire

A voir également:

3 réponses

maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
Modifié par maka54 le 20/02/2012 à 14:09
$requete1="UPDATE 't_morceau' SET 'id'=[$id],'par'=[$row->par],'artiste'=[$row->artiste],'titre'=[$row->titre],'lien'=[$row->lien],'loic'=[$vloic],'harley'=[$vharley],'fred'=[$vfred],'phil'=[$vphil],'propo'=[$row->propo],'valid'=[$row->valid],'abooser'=[$row->abosser] WHERE id=$id "; 


Si quelqu'un peu jetter un coup d'oeil à mon code pour voir si il y a un souci ...

on commence par quoi ??

1 - SET 'id'=[$id] tu veux modifier le id d'un enregistrement, pourquoi pas ...
mais pas quand c'est ta condition WHERE id=$id ";

2 - qu'est ce que c'est que tout ces crochets ???

$requete1 = "UPDATE t_morceau SET par = '".$row->par."', artiste = '".$row->artiste."', titre = '".$row->titre."', lien = '".$row->lien."',loic = '".$vloic."',harley = '".$vharley."',fred = '".$vfred."',phil = '".$vphil."',propo = '".$row->propo."',valid = '".$row->valid."',abooser = '".$row->abosser."' WHERE id = '".$id."'";


3 - tu fais une requete sur id, pour updater les memes valeurs, il n'y a aucun interet

4 - si tu mets des quotes au nom de champs et de table, il faut mettre les quotes du chiffre 7 (a titre d'indication dans le doute)
1
J'ai modifié :

$requete1="UPDATE t_morceau SET par=[$row->par],artiste=[$row->artiste],titre=[$row->titre],lien=[$row->lien], loic=[$vloic], harley=[$vharley], fred=[$vfred], phil=[$vphil], propo=[$row->propo], valid =[$row->valid], abooser=[$row->abosser] WHERE id=[$id] ";

Ca marche toujours pas ...
Merci du temps que vous y consacré .

Phil
0
maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
20 févr. 2012 à 14:15
et si tu reprend la requete que j'ai mis au dessus ?
0
Excellent Merci !! ça marche !!!

Au top merci beaucoup :)
0
Merci de ta réponse rapide, comme tu le vois je suis novice en php ...
les ' sont inutiles?

je cherche pas a remplacer l'id mais les autre champ après une mise a jour...
0
maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
20 févr. 2012 à 14:11
je viens de completer la réponse, j'avais valider trop vite, ils ne sont pas inutiles, mais pour ne pas d'induire en erreur, je les avaient supprimés

quote du 4 pour la valeur du champ
quote du 7 (Alt Gr + 7) pour le nom de champ et de table
0