Page 1 sur 1

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

Posté : 01 juin 2014, 17:56
par subran
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...

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

Posté : 01 juin 2014, 20:15
par Elie
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

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

Posté : 01 juin 2014, 22:52
par subran
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"

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

Posté : 02 juin 2014, 08:24
par Mazarini
Ne faire l'insert que si la case est cochée avec un if en php. C'est le plus simple.

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

Posté : 02 juin 2014, 09:18
par Elie
<?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')";
}
?>