PHP : gérer erreur dans formulaire
Résolu/Fermé
A voir également:
- PHP : gérer erreur dans formulaire
- Easy php - Télécharger - Divers Web & Internet
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Href php ✓ - Forum PHP
- Bouton php - Forum PHP
- Echo image php ✓ - Forum PHP
12 réponses
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
22 oct. 2009 à 11:51
22 oct. 2009 à 11:51
http://www.php.net/manual/en/function.is-int.php
voir aussi is numeric
voir aussi is numeric
Il y a bien un problème dans le formulaire, c'est le type="int" au lieu de "text"
Mais ça n'est pas ça qui empêche de marcher
Il faut utiliser is_numeric et non pas is_int. Le rôle n'est pas exactement le même et c'est is_numeric qui convient dans ton cas.
Mais ça n'est pas ça qui empêche de marcher
Il faut utiliser is_numeric et non pas is_int. Le rôle n'est pas exactement le même et c'est is_numeric qui convient dans ton cas.
Merci pour ton site...
Malheureusement, je n'arrive pas à l'appliquer pour mon script.
Voici mon bout de code :
if (is_int($quantite)){
$sql = "INSERT INTO voir_conso VALUES ('','$type_machine', '$type_materiel', '$quantite','$lieu_conso', '$fournisseur_conso')";
}else{
echo 'Le champs Quantite est invalide';
}
Mais, que je mette un nombre ou des lettre dans le champ "quantité", il m'affiche : 'Le champs Quantite est invalide'
Merci de ton aide
Malheureusement, je n'arrive pas à l'appliquer pour mon script.
Voici mon bout de code :
if (is_int($quantite)){
$sql = "INSERT INTO voir_conso VALUES ('','$type_machine', '$type_materiel', '$quantite','$lieu_conso', '$fournisseur_conso')";
}else{
echo 'Le champs Quantite est invalide';
}
Mais, que je mette un nombre ou des lettre dans le champ "quantité", il m'affiche : 'Le champs Quantite est invalide'
Merci de ton aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
On ne voit pas tout ton script, mais on peut supposer que $quantite ne contient pas ce que tu crois. Comment s'appelle exactement (en respectant les majuscules et les accents) ton champ Quantité dans le formulaire ?
Si c'est quantite, tu récupères sa valeur dans $_POST['quantite'] . Il faut donc que tu commences par faire $quantite = $_POST['quantite'] pour récupérer sa valeur.
On ne voit pas tout ton script, mais on peut supposer que $quantite ne contient pas ce que tu crois. Comment s'appelle exactement (en respectant les majuscules et les accents) ton champ Quantité dans le formulaire ?
Si c'est quantite, tu récupères sa valeur dans $_POST['quantite'] . Il faut donc que tu commences par faire $quantite = $_POST['quantite'] pour récupérer sa valeur.
Oui voila.. c'est ce que j'ai fais... Mais ca ne marche pas
.
Voici mon script :
<?php
$connexion = mysql_connect("localhost","root","");
$selection_base = mysql_select_db("test",$connexion);
$type_machine = $_POST['type_machine'];
$type_materiel = $_POST['type_materiel'];
$quantite = $_POST['quantite_conso'];
$lieu_conso = $_POST['lieu_conso'];
$fournisseur_conso = $_POST['fournisseur_conso'];
if (is_int($quantite)){
$sql = "INSERT INTO voir_conso VALUES ('','$type_machine', '$type_materiel', '$quantite','$lieu_conso', '$fournisseur_conso')";
}else{
echo 'Le champs Quantite est invalide';
}
$ok = mysql_query($sql,$connexion);
if($ok){echo 'Votre conso a bien été ajouté dans la base de données.';}
else {'Impossible d`ajouter votre conso. Veuillez réessayer.';}
mysql_close();
?>
.
Voici mon script :
<?php
$connexion = mysql_connect("localhost","root","");
$selection_base = mysql_select_db("test",$connexion);
$type_machine = $_POST['type_machine'];
$type_materiel = $_POST['type_materiel'];
$quantite = $_POST['quantite_conso'];
$lieu_conso = $_POST['lieu_conso'];
$fournisseur_conso = $_POST['fournisseur_conso'];
if (is_int($quantite)){
$sql = "INSERT INTO voir_conso VALUES ('','$type_machine', '$type_materiel', '$quantite','$lieu_conso', '$fournisseur_conso')";
}else{
echo 'Le champs Quantite est invalide';
}
$ok = mysql_query($sql,$connexion);
if($ok){echo 'Votre conso a bien été ajouté dans la base de données.';}
else {'Impossible d`ajouter votre conso. Veuillez réessayer.';}
mysql_close();
?>
Oui , le voici :
<form method="post" action="ajouter_bdd_conso.php">
<table>
<tr>
<TD>Type de machine : </TD>
<TD>
<SELECT name="type_machine">
<OPTION VALUE="xerox-dp75">Xerox DP75</OPTION>
<OPTION VALUE="4112">Xerox 4112</OPTION>
<OPTION VALUE="autre">Autre</OPTION>
</SELECT>
</TD>
</tr>
<tr>
<td>Type de matériel : </td>
<td><input type="text" name="type_materiel"></td>
</tr>
<tr>
<td>Quantité : </td>
<td><input type="int" name="quantite_conso"></td>
</tr>
<tr>
<td>Lieu du conso : </td>
<td><input type="text" name="lieu_conso"></td>
</tr>
<tr>
<td>Fournisseur du conso: </td>
<td><input type="text" name="fournisseur_conso"></td>
</tr>
<tr>
<td align="center" colspan="2"><input type="submit" value="envoyer" name="envoi_conso"><input type="reset" value="effacer"></td>
</tr>
</table>
</form>
<form method="post" action="ajouter_bdd_conso.php">
<table>
<tr>
<TD>Type de machine : </TD>
<TD>
<SELECT name="type_machine">
<OPTION VALUE="xerox-dp75">Xerox DP75</OPTION>
<OPTION VALUE="4112">Xerox 4112</OPTION>
<OPTION VALUE="autre">Autre</OPTION>
</SELECT>
</TD>
</tr>
<tr>
<td>Type de matériel : </td>
<td><input type="text" name="type_materiel"></td>
</tr>
<tr>
<td>Quantité : </td>
<td><input type="int" name="quantite_conso"></td>
</tr>
<tr>
<td>Lieu du conso : </td>
<td><input type="text" name="lieu_conso"></td>
</tr>
<tr>
<td>Fournisseur du conso: </td>
<td><input type="text" name="fournisseur_conso"></td>
</tr>
<tr>
<td align="center" colspan="2"><input type="submit" value="envoyer" name="envoi_conso"><input type="reset" value="effacer"></td>
</tr>
</table>
</form>
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
22 oct. 2009 à 14:05
22 oct. 2009 à 14:05
je pense que par défaut, le champ post est toujours considéré comme une chaine.
essayes ca: https://phpf1.com/tutorial/php-string-to-int.html
essayes ca: https://phpf1.com/tutorial/php-string-to-int.html
Nabla's
Messages postés
18203
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 192
22 oct. 2009 à 14:29
22 oct. 2009 à 14:29
ha ben c'est cool, ca veut dire que j'avais la réponse dans mon premier post ;)