[RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
6 messages
• Page 1 sur 1
- hx.jonathan
- WRInaute discret

- Messages: 162
- Inscription: 2 Mar 2005
[RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
Salut à tous,
Voici mon souci.
J'ai une page php qui contient un formulaire (2 champs) servant à ajouter des albums dans une table "Album". Seul hic, lorsque que je clique sur le bouton d'envoi de mon formulaire et que celui-ci est vide, il me crée quand même 2 nouveau enregistrements.
Voici mon code :
Quelqu'un a une petite idée.
Merci à tous.
Rien à voir mais comment on fait pour mettre un sujet en statut RESOLU après un délai de 6 heures ? Car j'ai oublié de le faire pour mon post précédent.
John
Voici mon souci.
J'ai une page php qui contient un formulaire (2 champs) servant à ajouter des albums dans une table "Album". Seul hic, lorsque que je clique sur le bouton d'envoi de mon formulaire et que celui-ci est vide, il me crée quand même 2 nouveau enregistrements.
Voici mon code :
- Code: Tout sélectionner
if (isset($_POST['album'])AND $_POST['album']!==""){
foreach($_POST['album'] as $index=>$valeur){
//echo $valeur;
$insertalbum ="INSERT INTO Album(album_name) values('$valeur')";
mysql_query($insertalbum) or die(mysql_error());
}
}
?>
<h3>Ajouter des albums</h3>
<FORM method="POST" action="Admin.php?page=galerie_001_02">
<p><INPUT type="text" name="album[]" size=30></input> <INPUT TYPE=RESET value="Effacer la zone"></input></p>
<p><INPUT type="text" name="album[]" size=30></input> <INPUT TYPE=RESET value="Effacer la zone"></input></p>
<p><input type="submit"value="Créer le(s) album(s)"></input></p>
</FORM>
Quelqu'un a une petite idée.
Merci à tous.
Rien à voir mais comment on fait pour mettre un sujet en statut RESOLU après un délai de 6 heures ? Car j'ai oublié de le faire pour mon post précédent.
John
-

mrPringle - WRInaute impliqué

- Messages: 592
- Inscription: 11 Mar 2006
Re: [RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
Essaie ça, je pense que ça devrait marcherdésolé pour l'indentation.
- Code: Tout sélectionner
if (isset($_POST['album']){
foreach($_POST['album'] as $index=>$valeur){
//echo $valeur;
if((!empty($valeur))&&($valeur!='')) {
$insertalbum ="INSERT INTO Album(album_name) values('$valeur')";
mysql_query($insertalbum) or die(mysql_error());
}
}
}
?>
<h3>Ajouter des albums</h3>
<FORM method="POST" action="Admin.php?page=galerie_001_02">
<p><INPUT type="text" name="album[]" size=30></input> <INPUT TYPE=RESET value="Effacer la zone"></input></p>
<p><INPUT type="text" name="album[]" size=30></input> <INPUT TYPE=RESET value="Effacer la zone"></input></p>
<p><input type="submit"value="Créer le(s) album(s)"></input></p>
</FORM>
-

spout - WRInaute accro

- Messages: 4382
- Inscription: 14 Mai 2003
Re: [RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
Afin de ne pas avoir de warning au foreach si $_POST['album'] est vide ou pas un array, je rajouterai:
@mrPringle
C'est 2 fois la même condition, avec empty() c'est le plus propre
- Code: Tout sélectionner
if (isset($_POST['album'] && is_array($_POST['album'])){
...
}
@mrPringle
- Code: Tout sélectionner
if((!empty($valeur))&&($valeur!=''))
C'est 2 fois la même condition, avec empty() c'est le plus propre
- hx.jonathan
- WRInaute discret

- Messages: 162
- Inscription: 2 Mar 2005
Re: [RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
Ok c'est bon,
J'ai mis le sujet en RESOLU.
Voici ce que j'ai fais :
J'ai mis le sujet en RESOLU.
Voici ce que j'ai fais :
- Code: Tout sélectionner
if (isset($_POST['album'])){
foreach($_POST['album'] as $index=>$valeur){
//echo $valeur;
if ($valeur!='') {
$insertalbum ="INSERT INTO Album(album_name) values('$valeur')";
mysql_query($insertalbum) or die(mysql_error());
}
}
}
-

spout - WRInaute accro

- Messages: 4382
- Inscription: 14 Mai 2003
Re: [RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
Dans ton code final, si on met un simple espace ou un ALT+0160, ça s'ajoutera quand même dans la BDD.
- Code: Tout sélectionner
if (isset($_POST['album']) && is_array($_POST['album'])){
foreach($_POST['album'] as $index=>$valeur){
$valeur = trim($valeur);
if (!empty($valeur)) {
$insertalbum ="INSERT INTO Album(album_name) values('$valeur')";
mysql_query($insertalbum) or die(mysql_error());
}
}
}
- hx.jonathan
- WRInaute discret

- Messages: 162
- Inscription: 2 Mar 2005
Re: [RESOLU] PHP Empêcher Ajout enregistrement si formulaire vide
Ouais c'est vrai. Je vais opter pour cette solution.
Encore merci. Ça m'évite d'avoir encore des soucis par la suite.
John
Encore merci. Ça m'évite d'avoir encore des soucis par la suite.
John
6 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- [resolu]p/ vers p.php OK, mais comment empecher p.php?
- empêcher ajout de paramètres bizarres derrière l'URL d'un site
- [résolu]rss et enregistrement
- [RESOLU]PB sortie BDD 1 seul enregistrement
- [résolu] Insérer dans sql un enregistrement avec un '
- [Résolu] Recharger une page après chaque enregistrement
- empécher l'ajout d'un fichier php au bout d'une url php
- Remplacer too.php par tutu.php avec ajout 1 parametre en plu
- [Résolu] Empêcher le listage du dossier
- [Résolu] documentElement vide sous IE ? Firefox tout bon ?
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
