URGENT !! validation formulaire avec php

Signaler
Messages postés
6
Date d'inscription
vendredi 10 décembre 2004
Statut
Membre
Dernière intervention
26 août 2005
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour j'ai un énorme problème que je dois résoudre rapidement c'est pour ça que j'en appelle à votre aide,
J'ai créé récemment ce formulaire de vote pour un concours et celui-ci se génère automatiquement en fonction des
participants de la base sql...
Le problème est que ma fonction de vérification ne daigne pas marcher lorsque je valide le formulaire alors que j'ai vu
le code de ce formulaire fonctionner sur un autre site..
résultat : http://romainst.free.fr/test06581/index2.php
En Espérant que vous pourrez m'aider ...

Le code de vérif :
<script type="text/javascript">
document.getElementById('vote').onsubmit = verif()
function verif() {
if(document.getElementById('pseudo').value == '') {
showError('Le champ de votre Pseudo');
return false;
} else if(!document.getElementById('courriel').value.match(new RegExp(/^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\w]*[0-9a-zA-Z])*\.)+[a-zA-Z]{2,9})$/))) {
showError('Le champ de votre e-mail');
return false;
} <? do { ?> else if((document.getElementById('notec' + '<?php echo $row_verif['numero']; ?>').value == '') || (document.getElementById('notec' + '<?php echo $row_verif['numero']; ?>').value > 20) || (document.getElementById('notec' + '<?php echo $row_verif['numero']; ?>').value < 0) || (!document.getElementById('notec' + '<?php echo $row_verif['numero']; ?>').value.match(new RegExp(/^[0-2]{0,1}[0-9]{1}$/))) {
showError('La note de ' + '<?php echo $row_verif['noms_concurents']; ?>');
return false;
} <? } while ($row_verif = mysql_fetch_assoc($verif)); ?>
}
function showError(field) {
alert( '' + field + ' est vide ou n\'est pas valide');
}
</script>

Le formulaire :
<form action="..." method="post" name="vote" id="vote" onsubmit = "verif()">
Pseudo sur TeV :



E-Mail :

">
">




&nbsp;&nbsp;Pseudo&nbsp;&nbsp;,
&nbsp;&nbsp;<?php echo $row_admin_concours['nom_img1']; ?>&nbsp;&nbsp;,
&nbsp;&nbsp;<?php echo $row_admin_concours['nom_img2']; ?>&nbsp;&nbsp;,
&nbsp; Notes &nbsp;,

<?php do { ?>
----

&nbsp;&nbsp;<?php echo $row_donnees_tableau['noms_concurents']; ?>&nbsp;&nbsp;
,
<?php if ($row_donnees_tableau['noimg1'] != 1) { ?>
href="javascript:PopupCentrer('popupimg.php?img=<?php echo $row_donnees_tableau['img1']; ?>',1000,765,' resizable=yes, statusbar=no, directories=no, menubar=no, location=no, scrollbars=yes')" <? ;} if ($row_admin_concours['infobulle'] == 1) { ?> onMouseOver="AffBulle('\'>')" onMouseOut="HideBulle()" <? ;} ?> >
<? ;} else { ?>

<? ;} ?>
,
<?php if ($row_donnees_tableau['noimg2'] != 1) { ?>
href="javascript:PopupCentrer('popupimg.php?img=<?php echo $row_donnees_tableau['img2']; ?>',1000,765,' resizable=yes, statusbar=no, directories=no, menubar=no, location=no, scrollbars=yes')" <? ;} if ($row_admin_concours['infobulle'] == 1) { ?> onMouseOver="AffBulle('\'>')" onMouseOut="HideBulle()" <? ;} ?> >
<? ;} else { ?>

<? ;} ?>,

" type="text" class="Style1" id="notec<?php echo $row_donnees_tableau['numero']; ?>" size="3" maxlength="2">
/20,

<?php } while ($row_donnees_tableau = mysql_fetch_assoc($donnees_tableau)); ?>







</form>

ROMAINst

5 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
bonjour,
et si on avait la page générée et pas la page php,
on pourrait essayer et peut-être aider.
car là, comme on ne dispose pas de la
base de données, c'est difficile. @+
Messages postés
6
Date d'inscription
vendredi 10 décembre 2004
Statut
Membre
Dernière intervention
26 août 2005

j'ai déjà donné l'adresse : http://romainst.free.fr/test06581/index2.php mais je ne sais pas si ça va plus vous aider ....

ROMAINst
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
des erreurs de syntaxe déjà,
toutes les instructions du style :
(!document.getElementById('notec' + '3').value.match(new RegExp(/^[0-2]{0,1}[0-9]{1}$/)))
en activant le debugger on voit
immédiatement ces erreurs. @+
Messages postés
6
Date d'inscription
vendredi 10 décembre 2004
Statut
Membre
Dernière intervention
26 août 2005

Je ne vois pas exactement ou est le problème dans cette instruction, a part peut-être le ('notec' + '3') , j'ai déjà vu cette cette fonction marcher ...
le code original est :



Message&nbsp;:

Votre nom&nbsp;...

Votre e-mail&nbsp;...

S'inscrire à la mailing list







document.getElementById('mailform').onsubmit = verif
function verif() {
if(document.getElementById('nom').value == '') {
showError('nom');
return false;
} else if(document.getElementById('comment').value == '') {
showError('comment');
return false;
} else if(!document.getElementById('email').value.match(new RegExp(/^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\w]*[0-9a-zA-Z])*\.)+[a-zA-Z]{2,9})$/))) {
showError('email');
return false;
}
}
function showError(field) {
alert('Le champ "' + field + '" est vide ou n\'est pas valide');
}





mais si tu connais une autre solution je suis ouvert à tout (si elle marche !)
merci d'avance

ROMAINst
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
Bonjour,
si tu es sous IE, je parie que tu n'as pas installé le debugger !
il me signale qu'il manque une )
sans préjuger de rien d'autre
je l'ajoute ( sur toutes les mêmes lignes ) ==> plus d'erreurs :
} else if((document.getElementById('notec' + '3').value == '') || (document.getElementById('notec' + '3').value > 20) || (document.getElementById('notec' + '3').value < 0) || (!document.getElementById('notec' + '3').value.match(new RegExp(/^[0-2]{0,1}[0-9]{1}$/)))) {
ah si, ligne 424 retour à la ligne intempestifs,
peut-être du à mon copier/coller ?
j'ai mis pour passer :
http://www.microsoft.com/downloads/details.aspx?FamilyID=2f465be0-94fd-4569-b3c4-dffdf19ccd99&displaylang=en&Hash=7SCPHJC

documentation
script
http://www.microsoft.com/downloads/thankyou.aspx?FamilyId=01592c48-207d-4be1-8a76-1c4099d7bbb9&DisplayLang=en

ce debugger affiche l'erreur, la ligne.
on peut visualiser le contenu des variables,
faire du pas à pas, sauter des instructions...
utilise aussi pour écrire ses scripts
( complétion code, aide... )
un debugger et beaucoup plus quoi.
( commun à VBScript et J[ava]Script )

Cordialement. Bul. Site[mailto:marcelBultez@Tiscali.fr Mail]