Bonjour à tous,
Je débute en PHP et SQL et j’ai besoin d’aide
J’ai récupéré sur le net un script de modification de données ( je ne sais plus ou ni qui l’a fait) par un interface web qui se trouve en partie admin d’un site.
Ma base sql (agence) comprend la table t_images qui elle comprend les champs id_im, nom , lamy, date, comment, cota, parte, embal
Lorsque j’ai un enregistrement dans ma table et que je veux le modifier, je passe par le fichier modification 1 qui me liste tous les enregistrements présents dans ma table classés par ordre de référence ( lamy ) avec un bouton modifier à coté de chaque enregistrement. En cliquant sur ce dernier j’ouvre le fichier modification 2 qui me dresse une liste de mon enregistrement sélectionné. Je fais la modif dans le champs concerné et je clique sur modifier pour lancer le fichier modification 3 et là je n’ai pas de message d’erreur mais mon enregistrement est vidé de toutes ses données ??? : par cette opération j’ai vidé toutes les données de cet enregistrement mais celui-ci n’est pas effacé
Si quelqu’un peut m’aider ou me donner une autre solution car ce système est bien alors j’aimerai l’utiliser pour mon site
Merci
Voici les 3 fichiers de modification ( en partie) cela fait beaucoup de code mais indispensable pour comprendre le fichier 3 qui est je pense la source d’erreur mais je n’arrive pas trouver laquelle
Fichier modification 1
<?php
//requête SQL:
$sql = "SELECT *
FROM t_images
ORDER BY nom asc" ;
//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idnom"] ;
//requête SQL:
$sql = "SELECT *
FROM t_images
WHERE id_im = ".$id ;
//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;
//récupération de l'identifiant de la personne:
$id = $_POST["id"] ;
//création de la requête SQL:
$sql = "UPDATE t_images
SET nom = '$nom',
lamy = '$lamy',
cota = '$cota',
embal = '$embal',
date = '$date',
parte = '$parte',
comment = '$comment'
WHERE id_im = '$id' " ;
//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si l'insertion a marchée:
if($requete)
echo("La modification à été correctement effectuée") ;
else
echo("La modification à échouée") ;
?>
Je me permet de répondre même si le message date de plus de 3 ans :) :)
En faite, les <input name="ref agence" correspondent au nom des variables qui vont circuler de page en page. En suite, on les récupères grâce à $lamy = $_POST["lamy"] ; à condition biensur qu'elles portent le même nom. Ce qui n'est pas le cas ici puisque tous les "name" sont différents des "$_POST[]"