Mettre une condition php dans une requete sql
Fermé
mont_dani
Messages postés
232
Date d'inscription
mardi 6 juin 2017
Statut
Membre
Dernière intervention
7 mai 2024
-
Modifié le 22 mai 2022 à 16:31
yg_be Messages postés 23524 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 11 avril 2025 - 9 juin 2022 à 20:41
yg_be Messages postés 23524 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 11 avril 2025 - 9 juin 2022 à 20:41
A voir également:
- Mettre une condition php dans une requete sql
- Excel cellule couleur si condition texte - Guide
- Easy php - Télécharger - Divers Web & Internet
- Requete sql pix - Forum PHP
- Requête sql date supérieure à ✓ - Forum Programmation
- Retour a la ligne php ✓ - Forum PHP
2 réponses
jordane45
Messages postés
38464
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 avril 2025
4 741
22 mai 2022 à 17:42
22 mai 2022 à 17:42
Bonjour,
Deux solutions.
Soit, dans la définition des tes champs dans ta table, tu définis une valeur par défaut ( ce qui implique ensuite que tu dois gérer au niveau de ton php les champs que tu veux insérer ou non ( en enlevant donc ceux qui sont NULL dans ton $_POST )
Soit, tu le gère au moment de récupérer les valeurs de ton formulaire, via, par exemple, l'écriture ternaire.
Par exemple, au lieu d'écrire :
tu fais
Deux solutions.
Soit, dans la définition des tes champs dans ta table, tu définis une valeur par défaut ( ce qui implique ensuite que tu dois gérer au niveau de ton php les champs que tu veux insérer ou non ( en enlevant donc ceux qui sont NULL dans ton $_POST )
Soit, tu le gère au moment de récupérer les valeurs de ton formulaire, via, par exemple, l'écriture ternaire.
Par exemple, au lieu d'écrire :
$LLUVIA=($_POST['LLUVIA']);
tu fais
// je stocke dans $LLUVIA la valeur de $_POST['LLUVIA'] si il n'est pas vide ou null, sinon j'y mets le texte : 'LUVIA' $LLUVIA= !empty($_POST['LLUVIA']) ? $_POST['LLUVIA'] : 'LUVIA';
mont_dani
Messages postés
232
Date d'inscription
mardi 6 juin 2017
Statut
Membre
Dernière intervention
7 mai 2024
23 mai 2022 à 07:30
23 mai 2022 à 07:30
En replcant la ligne sugéré cela ne fonctionne pas.
mon champ est defini ainsi dans ma table:
LLUVIA decimal(20,0) Sí NULL
J'ai cette erreur:
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1366 Incorrect decimal value: 'LUVIA' for column 'LLUVIA' at row 1 in C:\wamp64\www\lacansera\lacansera\es\noticias\guardar_datos.php on line 57
( ! ) PDOException: SQLSTATE[HY000]: General error: 1366 Incorrect decimal value: 'LUVIA' for column 'LLUVIA' at row 1 in C:\wamp64\www\lacansera\lacansera\es\noticias\guardar_datos.php on line 57
Mais cela fonctionne si je remplace la ligne que tu as suggéré par
Merci
mon champ est defini ainsi dans ma table:
LLUVIA decimal(20,0) Sí NULL
J'ai cette erreur:
( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 1366 Incorrect decimal value: 'LUVIA' for column 'LLUVIA' at row 1 in C:\wamp64\www\lacansera\lacansera\es\noticias\guardar_datos.php on line 57
( ! ) PDOException: SQLSTATE[HY000]: General error: 1366 Incorrect decimal value: 'LUVIA' for column 'LLUVIA' at row 1 in C:\wamp64\www\lacansera\lacansera\es\noticias\guardar_datos.php on line 57
Mais cela fonctionne si je remplace la ligne que tu as suggéré par
if (!empty($_POST['LLUVIA'])) {$LLUVIA = $_POST['LLUVIA'];}
Merci
jordane45
Messages postés
38464
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 avril 2025
4 741
23 mai 2022 à 09:11
23 mai 2022 à 09:11
Si c'est un champ décimal, tu peux faire autorisant le null
ou si tu veux mettre un 0 si il n'est pas rempli
$LLUVIA= !empty($_POST['LLUVIA']) ? $_POST['LLUVIA'] : NULL;
ou si tu veux mettre un 0 si il n'est pas rempli
$LLUVIA= !empty($_POST['LLUVIA']) ? $_POST['LLUVIA'] : 0 ;
yg_be
Messages postés
23524
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
11 avril 2025
1 577
>
jordane45
Messages postés
38464
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 avril 2025
9 juin 2022 à 20:41
9 juin 2022 à 20:41
@mont_dani, peux-tu donner suite, ou marquer comme résolu?