Afficher tous les messages d'erreur

Eléphant du PHP | 214 Messages

19 févr. 2011, 13:30

Bonjour,

Je voudrais afficher tous les messages d'erreur de mon formulaire en jQuery, mais il m'affiche seulement le premier message:
if (name == '') {
	$("#msg").slideDown(1000).html('<b>Veuillez entrer votre nom</b>');
	return false;
}

if (username == '') {
	$("#msg").slideDown(1000).html('<b>Veuillez entrer votre pseudo</b>');
	return false;
}
<div id="msg"></div>
<form id="formulaire" action="#" method="POST">
Name: <input type="text" name="name" id="name" /><br />
Username: <input type="text" name="username" id="username" /><br />
<input type="submit" name="send" value="GO" id="send" />
</form>
Merci

ViPHP
xTG
ViPHP | 7331 Messages

19 févr. 2011, 13:40

Enlèves le return false;

Eléphant du PHP | 214 Messages

19 févr. 2011, 13:58

Enlèves le return false;
Et par cette methode, ca marche pas aussi:
if (name == '') {
	$("#msg").slideDown(1000).html('<b>Veuillez entrer votre nom</b>');
	//return false;
}

else if (username == '') {
	$("#msg").slideDown(1000).html('<b>Veuillez entrer votre pseudo</b>');
	//return false;
}

else
{
	$("#loading").html('<img src="loading.gif">');
/..
}

ViPHP
xTG
ViPHP | 7331 Messages

19 févr. 2011, 16:13

Bah aussi si tu rajoutes des else...
Le but d'une telle structure c'est justement de ne tomber que sur un seul cas.
Si tu souhaites détecter les erreurs utilises plutôt un compteur ou un booléen que tu vérifierais en tout dernier if pour afficher le loading.

Eléphant du PHP | 214 Messages

20 févr. 2011, 05:13

et le loop ca se fait comment?

ViPHP
xTG
ViPHP | 7331 Messages

20 févr. 2011, 12:41

Qu'appelles-tu par loop ? Une boucle ?

Eléphant du PHP | 214 Messages

20 févr. 2011, 13:07

Qu'appelles-tu par loop ? Une boucle ?
Je dis vraiment n'importe quoi, est ce de cette maniere, definir une variable a mes erreur et verifier si la variable existe sinon on affiche le loading.

ViPHP
xTG
ViPHP | 7331 Messages

20 févr. 2011, 14:12

Code : Tout sélectionner

var erreur = 0; if (name == '') { $("#msg").slideDown(1000).html('<b>Veuillez entrer votre nom</b>'); erreur++; } //... if( erreur != 0 ) { $("#loading").html('<img src="loading.gif">'); }

Eléphant du PHP | 214 Messages

21 févr. 2011, 11:57

Code : Tout sélectionner

var erreur = 0; if (name == '') { $("#msg").slideDown(1000).html('<b>Veuillez entrer votre nom</b>'); erreur++; } //... if( erreur != 0 ) { $("#loading").html('<img src="loading.gif">'); }
Je l'ai teste c'est bien, j'aimerais verifier du code PHP, et transmettre la reponse au navigateur afin d'afficher le message (erreur ou ok), le probleme c'est que je veux afficher "Merci! Votre commentaire etait bien sousmis" et non "C\'est bien recu ok":

voila le code form.php:

Code : Tout sélectionner

<head> <style type="text/css"> #msg { /* padding-top: 0px; */ margin-top: 0px; width: 500px; background-color: #FF33cc; color: #000000; text-align: center; cursor: pointer; } </style> <script src="jquery.js" type="text/javascript"></script> <script type="text/javascript" > $(document).ready(function() { $("#send").click(function(){ //Récupération des valeurs du formulaires var name = $("#name").val(); var username = $("#username").val(); var dataString = 'name=' + name + '&username=' + username; //var dataString = 'id='+ id + '&name='+ name; $.ajax({ type: 'POST', url: 'process2.php', data : dataString, success: function(response) { if (response != 'ok') { $("#msg").slideDown('normal').html(response); } else { $("#msg").slideDown('normal').html('<b>Merci! Votre commentaire etait bien sousmis'); } } }); //console.log(username); return false; }); }); </script> </head> <body> <div id="msg" align="center"></div> <form id="formulaire" action="#" method="POST"> Name: <input type="text" size="10" name="name" id="name" /><br /> Username: <input type="text" size="10" name="username" id="username" /><br /> <input type="submit" name="send" value="GO" id="send" /> <span id="loading"></span> </form> </body> </html>
et process2.php:

Code : Tout sélectionner

<head> <script src="jquery.js" type="text/javascript"></script> </head> <body> <?php //if (IsSet($_POST['send'])) //{ $name = $_POST['name']; $username = $_POST['username']; if (strlen($username) <= 2) { $error = 'Veuillez saisir au moins 2 caracteres pour votre pseudo<br>'; } if (strlen($username) > 10) { $error .= 'Veuillez saisir moins de 10 caracteres pour votre pseudo<br>'; } if (strlen($name) <= 2) { $error .= 'Veuillez saisir au moins 2 caracteres pour votre nom<br>'; } if (strlen($name) > 10) { $error .= 'Veuillez saisir moins de 10 caracteres pour votre nom<br>'; } if (IsSet($error)) { echo $error; echo 'erreur'; } else { //echo 'Merci! votre formulaire a ete bien soumis'; include 'get_data2.php'; echo 'ok'; } ?>
et get_date2.php:

Code : Tout sélectionner

<?php $count = 'C\'est bien recu<br>'; echo $count; ?>
Merci

ViPHP
xTG
ViPHP | 7331 Messages

21 févr. 2011, 12:00

Je ne répondrai pas à une demande de cette envergure...
J'y perdrai surement mes cheveux.

Eléphant du PHP | 214 Messages

21 févr. 2011, 22:31

Je ne répondrai pas à une demande de cette envergure...
J'y perdrai surement mes cheveux.
C'est quoi le probleme dans mon code?

ViPHP
xTG
ViPHP | 7331 Messages

21 févr. 2011, 22:37

Je vais tenter de t'expliquer sans être vulgaire.
Le code est certes à baffer mais ce n'est pas sa faute. Le soucis provient essentiellement d'entre la chaise et l'écran.
Quand on se lance dans un projet il serait bon de s'investir, auquel cas il est voué à l'échec sauf si quelqu'un d'autre le fait à ta place. Or je ne me considère pas comme ce quelqu'un d'autre.

Eléphant du PHP | 214 Messages

22 févr. 2011, 03:01

Je vais tenter de t'expliquer sans être vulgaire.
Le code est certes à baffer mais ce n'est pas sa faute. Le soucis provient essentiellement d'entre la chaise et l'écran.
Quand on se lance dans un projet il serait bon de s'investir, auquel cas il est voué à l'échec sauf si quelqu'un d'autre le fait à ta place. Or je ne me considère pas comme ce quelqu'un d'autre.
Si on recours a un forum c'est d'avoir demande de l'aide :)

ViPHP
xTG
ViPHP | 7331 Messages

22 févr. 2011, 10:25

Certes, quand on a la connaissance suffisante pour comprendre les réponses.
Dans ton cas le problème se résout en décommentant une ligne, c'est donc un manque certain de compréhension du langage ou bien de raisonnement tout court.
Or pour cela nous ne pouvons rien faire pour toi, si ce n'est te conseiller de lire des cours.

Eléphant du PHP | 214 Messages

22 févr. 2011, 10:47

Certes, quand on a la connaissance suffisante pour comprendre les réponses.
Dans ton cas le problème se résout en décommentant une ligne, c'est donc un manque certain de compréhension du langage ou bien de raisonnement tout court.
Or pour cela nous ne pouvons rien faire pour toi, si ce n'est te conseiller de lire des cours.
Je pense que vous voulez dire en decommentant cette ligne:
      //echo 'Merci! votre formulaire a ete bien soumis';
Je l'ai commente, et je voudrais afficher ce message "Merci! votre formulaire a ete bien soumis", du cote jQuery et ne pas PHP, je pense que le message etait mal transmis :)