UPDATE données via un menu déroulant php
Bonjour,
Je cale depuis plusieurs jours sur un code que je voudrais vous soumettre.
Je souhaite faire un UPDATE dans ma bdd si et seulement si une option d'un menu déroulant est sélectionné (IF ma variable est isset), sinon je souhaite ne rien faire.
J'ai utilisé IF et ELSE.
Si ma variable est isset, je fais un UPDATE et là c'est OK.
Mais si c'est else (=ne rien faire) j'ai le message d'erreur suivant :
Citation:
Parse error: syntax error, unexpected 'else' (T_ELSE) in /sites/paleocet/www/web_main/trait_modif.php on line 37
J'ai consulté les forums, il y a beaucoup de posts similaires mais aucun ne solutionne mon problème. J'ai consulté la doc https://www.php.net/ : rien à faire.
les "echo" sont là pour vérification.
Je vous remercie par avance si vous aviez une piste à me donner pour corriger mon erreur.
Evelyne31
Mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| // // TRAITEMENT du formulaire de modifications
// on teste la déclaration de notre variable d'envoi
if (isset($_POST['submit']) )
//{
// traitement du menu déroulant TYPE
if (isset($_POST['ID_type']) ) {
echo 'variable ID type pleine : ' . $_POST['ID_type'] . '<br>';
// INSERT du nouveau TYPE
$sql='UPDATE OBJECT
SET ID_type = ?
WHERE ID_object = ?';
try {
//la ligne qui lance la requête préparée
$stmt = $base->prepare($sql);
//on affecte les marqueurs précis sur les filtres
//en vrai, vous aurez plutôt des variables de type POST envoyées par un formulaire
$ID_type = $_POST['ID_type'];
$ID_object=$_SESSION['ID_object'];
//Attention, bien mettre dans l'ordre de la requête !
$stmt->execute(array($ID_type,$ID_object)) ;
} catch (Exception $e) {
//s'il y a un problème PHP ou SQL, tout s'affichera ici
print "Erreur ! " . $e->getMessage() . "<br/>";
}
else {
echo 'variable ID type vide : ' . $_POST['ID_type'] . '<br>';
}
}
} |