Update : un champ à vide ("") impossible

Fermé
SandwichMagique Messages postés 4 Date d'inscription mercredi 23 septembre 2015 Statut Membre Dernière intervention 24 septembre 2015 - 23 sept. 2015 à 18:15
SandwichMagique Messages postés 4 Date d'inscription mercredi 23 septembre 2015 Statut Membre Dernière intervention 24 septembre 2015 - 24 sept. 2015 à 00:36
Bonjour,

J'ai un formulaire de modification de profil du membre connecté; J'arrive à set l'objet membre avec les nouvelles valeurs une fois le formulaire envoyé ! En actualisant la page, je peux voir que les propriétés de l'objet membre dont la valeur devait être vide, sont bien en string ""; Seulement, dans la bdd, ces champs auront gardés l'ancienne valeur .... En effet, une fois le membre déconnecté puis reconnecté, les valeurs ne sont plus vides, elles n'ont pas été changées !

En résumé : si la nouvelle valeur est différente de "", la modification est effectuée, sinon elle ne l'est pas. Malgré que la valeur soit bien Set , et que les champs sont nullable dans la bdd.

Je vous remercie d'avance pour votre aide !
A voir également:

3 réponses

DelNC Messages postés 2234 Date d'inscription samedi 25 octobre 2014 Statut Membre Dernière intervention 22 février 2020 1 999
23 sept. 2015 à 23:33
Bonjour,

essayez le code ci-dessous pour mettre à jour les données

<? php
if(isset($_REQUEST["nom" ])) {$nom = $_REQUEST["nom" ];}
else {$nom = "";}
if(isset($_REQUEST["prenom" ])) {$prenom = $_REQUEST["prenom" ];}
else {$prenom = "" ;}
if(isset($_REQUEST["id" ])) {$id = $_REQUEST["id" ];}
else {$id = "";}


$query = "UPDATE users ";
$query .= "SET ";
$query .= " nom = '" . $nom. "',";
$query .= " prenom = '" . $prenom. "',";
$query .= "WHERE id = '$id' ";
$query .= "; ";
$result = execute_query($query);

?>
0
SandwichMagique Messages postés 4 Date d'inscription mercredi 23 septembre 2015 Statut Membre Dernière intervention 24 septembre 2015
24 sept. 2015 à 00:07
Merci de m'aider DelNC,

ce code revient donc a set la valeur ("") lorsque le champ retourné en REQUEST est vide. J'ai donc directement, dans mon code, fait en sorte que peu importe la modification, la nouvelle valeur sera "". Et cela , fait le même bug, la valeur de la propriété correspondante de l'objet membre est bien string "", mais aucune modification effectuée dans la bdd =/
0
SandwichMagique Messages postés 4 Date d'inscription mercredi 23 septembre 2015 Statut Membre Dernière intervention 24 septembre 2015
24 sept. 2015 à 00:15
j'ai d'ailleurs aussi essayé avec la valeur null, mais c'est le même resultat . De plus, je peux , à partir de phpmyadmin directement, insérer des valeurs vides sans problème.

précision suppplémentaire : Les champs sont en varchar
0
SandwichMagique Messages postés 4 Date d'inscription mercredi 23 septembre 2015 Statut Membre Dernière intervention 24 septembre 2015
24 sept. 2015 à 00:36
Voici la structure de la table, seul signature pourra être vide

0