Problème formulaire validation captcha [Fermé]

Signaler
-
 Kinja -
Bonjour,

Je souhaite créer un formulaire de validation de captcha.
Lorsque je charge la page aucune erreur ne s'affiche, mais lorsque j'entre quelque chose dans le champs (que ce soit le bon code ou le mauvais), j'ai ce message qui apparait après avoir validé :

Notice: Undefined variable: _SESSION in C:\Program Files\EasyPHP 2.0b1\www\include\carnet-add2_test.php on line 17

Le code source du formulaire validation est le suivant :

<?php
if (sizeof($_POST)>0)
{
$frm=$_POST;

$message_erreur=valide_form($frm, $erreurs);

$_SESSION['textCaptcha']="";
}
function valide_form(&$frm, &$erreurs)
{
Global $connex;

$erreurs = array();
$msg = array();

if ($_SESSION['textCaptcha']!=$frm['textCaptcha'])
{
$erreurs['textCaptcha']=true;
$msg['textCaptcha'] = "Erreur de saisie";
}
return $msg;
}
?>
<html><body>
Ajouter un contact dans le carnet :
<form enctype="multipart/form-data" name="fcoord" method="post" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">

<table width="500" border="0" cellspacing="2" cellpadding="2">

<tr>
<td>Captcha</td>
<td><img src="fct_captcha.inc.php">
<input type="text" name="textCaptcha" size='10'> *
<?php if (isset($erreurs['textCaptcha'])) echo $message_erreur['textCaptcha'] ?></td>
</tr>
<tr>
<td colspan=2><hr></td>
</tr>
<tr>
<td colspan="2" align=center>
<input type="submit" name="action" value="Confirmer">
<input type="submit" name="action" value="Annuler">
</td>
</tr>
</table>
</form>
</body>
</html>

Qelqu'un pourrait-il m'aider? Ce serait gentil.
Merci d'avance

5 réponses

Est-ce que quelqu'un peut m'aider? J'ai essayé d'autres en cherchant sur google mais ils ne marchent pas non plus

Bonjour,
Démarrer une session avant toute utilisation de $_SESSION est obligatoire sinon ça plante...
Tu veux dire qu'il faut un session_start(); ?
Messages postés
22994
Date d'inscription
samedi 22 octobre 2005
Statut
Modérateur
Dernière intervention
16 septembre 2020
2 105
obligé au départ !!!
Il suffit de mettre
<?php
session_start();
?>
en début de page.
Le php te signale qu'il n'y a pas de session ouverte tout simplement.

Je sais que le sujet date mais sait on jamais ça peut servir ;)