n'insérer une ligne dans la BDD que si on égale une donnée

Eléphanteau du PHP | 27 Messages

01 juin 2014, 17:56

Bonjour,

Est-il possible de n'insérer une ligne dans la BDD que si on égale une donnée ?

Ici j'essaye de n'insérer la ligne que si la variable = N
$query = "INSERT INTO  `table` WHERE  '$on' LIKE  'N'(`table_nom`, `table_prenom`, `table_on`)VALUES ('$nom', '$prenom', '$on')";
Mais cela ne fonctionne pas...

Mammouth du PHP | 1339 Messages

01 juin 2014, 20:15

Je pense qu'il faut faire ca en 2 parties.
Une première requete (SELECT) pour savoir si la valeur existe et en PHP faire l'ajout ou non ...

Mais il semblerait que ce soit possible, adapte cette réponse : http://stackoverflow.com/questions/9138 ... nal-insert
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 27 Messages

01 juin 2014, 22:52

En fait, je ne dois par vérifier dans la bdd.

Un formulaire est rempli avec des input "radio" donc soit une donnée "O" pour oui soir une donnée "N" pour non (et d'autres données).
Et je souhaiterais insérer dans la base de donnée si le bouton radio est sur "O" mais ne rien insérer si il est sur "N"

ViPHP
ViPHP | 2577 Messages

02 juin 2014, 08:24

Ne faire l'insert que si la case est cochée avec un if en php. C'est le plus simple.

Mammouth du PHP | 1339 Messages

02 juin 2014, 09:18

<?php
if($_POST['ton_bouton_radion'] == 'O') {
$query = "INSERT INTO  `table` WHERE  '$on' LIKE  'N'(`table_nom`, `table_prenom`, `table_on`)VALUES ('$nom', '$prenom', '$on')";
}
?>
Bon sinon tu me fais un message privé et on se fait un TeamViewer