Retour d'erreur php
Résolu/Fermé
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
-
6 sept. 2010 à 14:29
brutalus Messages postés 16 Date d'inscription lundi 6 septembre 2010 Statut Membre Dernière intervention 10 septembre 2010 - 8 sept. 2010 à 15:57
brutalus Messages postés 16 Date d'inscription lundi 6 septembre 2010 Statut Membre Dernière intervention 10 septembre 2010 - 8 sept. 2010 à 15:57
A voir également:
- Retour d'erreur php
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Retour à la ligne excel - Guide
- Erreur 1001 outlook - Accueil - Bureautique
- Retour arrière clavier - Guide
5 réponses
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
705
6 sept. 2010 à 14:33
6 sept. 2010 à 14:33
Bonjour,
Pour cela tu peut utiliser le javascript qui te permet de verifié directement ce que l'utilisateur a entrer dans le formulaire.
Voici un tutoriel tres bien expliqué a ce sujet avec un tres bon exemple, en 1-2h tu sera capable de resoudre ton probleme si tu le lit correctement:
Cours sur les formulaire
exercice corrigé sur le formulaire
Pour cela tu peut utiliser le javascript qui te permet de verifié directement ce que l'utilisateur a entrer dans le formulaire.
Voici un tutoriel tres bien expliqué a ce sujet avec un tres bon exemple, en 1-2h tu sera capable de resoudre ton probleme si tu le lit correctement:
Cours sur les formulaire
exercice corrigé sur le formulaire
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
6 sept. 2010 à 14:49
6 sept. 2010 à 14:49
En faite je ne m'y connais pas du tout en Javascripite et j'aimerais simplement optimiser mon site tout en restant dans le php.
Faut-il que je stock la date dans une variable puis que dans la code php je mette un truc du genre
<?php
if ( (isset($date)) < ($dateallowed = date('Y/m/d', strtotime('+7 day'))))
//message d'erreur puis retour de page.
else
//faire le submit
?>
Faut-il que je stock la date dans une variable puis que dans la code php je mette un truc du genre
<?php
if ( (isset($date)) < ($dateallowed = date('Y/m/d', strtotime('+7 day'))))
//message d'erreur puis retour de page.
else
//faire le submit
?>
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
705
6 sept. 2010 à 15:19
6 sept. 2010 à 15:19
Je ne connait pas d'autre methode pour la verification d'un formaulaire que le javascript...que je ne connaissait pas quand j'en avais besoin et en lisant les deux pages que je t'ai donné plus haut, le soir meme j'était capable de le faire.
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
6 sept. 2010 à 15:28
6 sept. 2010 à 15:28
Merci de ta réponse c'est vrai que c'est assez rapide en visitant tes 2 pages,mon code a l'air bon mais sa m'a l'air trop simple
<form method="post" action="cible.php" onsubmit="return verify(x);">
//mon formulaire
<p>Date souhaitée de livraison (prévoir votre commande une semaine à l'avance) (JJ/MM/AAAA) :</p> <input type="text" name="date"/>
</form>
<?php
function verify(x) {
if( $_POST['date'] > date('Y/m/d', strtotime('+7 day')) )
return true;
else
{
alert('La date de livraison doit être dune semaine au plus tôt.');
return false;
}
?>
<form method="post" action="cible.php" onsubmit="return verify(x);">
//mon formulaire
<p>Date souhaitée de livraison (prévoir votre commande une semaine à l'avance) (JJ/MM/AAAA) :</p> <input type="text" name="date"/>
</form>
<?php
function verify(x) {
if( $_POST['date'] > date('Y/m/d', strtotime('+7 day')) )
return true;
else
{
alert('La date de livraison doit être dune semaine au plus tôt.');
return false;
}
?>
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
705
6 sept. 2010 à 15:32
6 sept. 2010 à 15:32
Oui, c'est justement le principe, c'est d'une simplicité...effrayante ^^
test le le en local
test le le en local
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
705
6 sept. 2010 à 15:34
6 sept. 2010 à 15:34
oui, justement, c'est le principe, c'est d'une facilité effrayante. Test ton code en local pour etre sur du bon fonctionnement.
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
6 sept. 2010 à 15:41
6 sept. 2010 à 15:41
Merci bien de tes réponses je vais tester sa :).
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
6 sept. 2010 à 16:24
6 sept. 2010 à 16:24
<?php
if ( (isset($date)) < ($dateallowed = date('Y/m/d', strtotime('+7 day'))))
//message d'erreur puis retour de page.
else
//faire le submit
//si tu est arrivé la c'est que le submit s'est déja fait
//il vaut mieux faire ici le traitement de ta commande
//et mets des { } avec tes if else
?>
if ( (isset($date)) < ($dateallowed = date('Y/m/d', strtotime('+7 day'))))
//message d'erreur puis retour de page.
else
//faire le submit
//si tu est arrivé la c'est que le submit s'est déja fait
//il vaut mieux faire ici le traitement de ta commande
//et mets des { } avec tes if else
?>
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
6 sept. 2010 à 21:43
6 sept. 2010 à 21:43
et par rapport a mon dernier code envoyé les acollades sont obligatoires au niveau de mon if / else ?
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
7 sept. 2010 à 08:39
7 sept. 2010 à 08:39
les accolades ne sont pas obligatoires si tu n'as qu'une seule ligne d'instruction a chaque, mais il vaut mieux les mettre systématiquement, pour un meilleur lisibilité du code et si tu veux rajouter une ligne de plus, un echo par exemple tu vas te retrouver coincé, il faudra les rajouter à ce moment la, donc des risques d'erreur
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
705
7 sept. 2010 à 09:07
7 sept. 2010 à 09:07
c'est exact, accolade non obligatoire si une ligne de code après, mais perso je les met toujours par principe.
Apatik
Messages postés
5304
Date d'inscription
mercredi 28 janvier 2009
Statut
Contributeur
Dernière intervention
29 mai 2016
782
7 sept. 2010 à 09:12
7 sept. 2010 à 09:12
Les accolades sont obligatoire pour garantir une meilleur lisibilité au code, tout comme l'indentation et les commentaires =)
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
7 sept. 2010 à 09:28
7 sept. 2010 à 09:28
ah d'accord c'est comme en C merci bien de vos réponses :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
7 sept. 2010 à 12:09
7 sept. 2010 à 12:09
un exemple de methode pour répondre à ton soucis:
<?php /* en procedant ainsi la page s'appelle elle même (action="" )donc le formulaire va se réafficher en cas d'erreur avec les valeurs déja saisies (value="< ?php echo ...) */ //init des variables à vide $msg=""; //message d'erreur eventuel $affich_form=true; //affichage ou reaffichage du formulaire //champs du formulaire $nom=""; $prenom=""; //etc.. $date_livraison_souhaitee=""; //partie traitement des erreurs et du formualire if(isset($_POST['envoyer_cde'])){ //le formualire a été posté on recupère les valeurs des champs $nom=$_POST['nom']; $prenom=$_POST['prenom']; //etc.. $date_livraison_souhaitee=$_POST['date_liv_souh']; //la tu fais tes tests $dateAllowed = date('Y/m/d', strtotime('+7 day')) if($date_livraison_souhaitee < $dateAllowed){ $msg="La date de livraison doit être 7 jours aprsè la date du jour !"; $affich_form=true; //reaffichage du formulaire }else{ $affich_form=false; //c'est bon donc on ne réaffichera pas le formulaire //et la tu poursuit le traitement de ta commande /// ..... } } if($affich_form){ ?> <form name="form1" method="post" action=""> Nom:<input type="text" name="nom" value="<?php echo $nom; ?>" /><br /> Prenom:<input type="text" name="prenom" value="<?php echo $prenom; ?>" /><br /> Date de livraison souhaitée:<input type="text" name="date_liv_souh" value="<?php echo $date_livraison_souhaitee; ?>" /><br /> <?php if($msg!=""){echo '<font color="red">Date de livraison non conforme !</font>';} ?> <br /> <input type="submit" name="envoyer_cde" value="Envoyer le commande" /><br /> </form> <?php } //fin du if ($affich_form) ?>
brutalus
Messages postés
16
Date d'inscription
lundi 6 septembre 2010
Statut
Membre
Dernière intervention
10 septembre 2010
8 sept. 2010 à 15:57
8 sept. 2010 à 15:57
merci beaucoup de ta réponse je pense que je vais utiliser cette solution la