2010-11-26 5 views
0

Je me demandais comment empêcher une valeur vide d'être entrée dans ma base de données MySQL dans l'exemple ci-dessous qui n'entre rien dans la base de données, de sorte que ma valeur MySQL par défaut est affichée dans la base de données?PHP & MySQL question

if(empty($_POST['username'])){ 
    $u = NULL; 
} 

Répondre

0
$u='NULL' 

alors votre requête SQL pourrait être

UPDATE myTable(user) INSERT user=$u WHERE id='12345'; 

Ne pas oublier de désinfecter les données que vous avez reçu de l'utilisateur!

+0

mais mon nom d'utilisateur doit être unique ou cela ne compte-t-il pas? – HELP

+1

Vous aurez besoin d'une clé primaire pour trouver des lignes uniques. Si c'est le nom d'utilisateur, alors oui, il devrait être unique - et vous ne devriez pas insérer de valeurs NULL dans une clé primaire. Dans mon exemple, j'ai utilisé 'id' comme champ unique (clé primaire), donc le nom d'utilisateur peut être non unique. – Ben

+0

Mais avoir un nom d'utilisateur non-unique dans tous les cas serait sûrement une mauvaise idée! Un nom d'utilisateur devrait être unique par définition afin qu'il identifie un seul utilisateur. –