Bonjour,
Alors que j'ai souvent utilisé ce type de variable j'arrive quand même à me planter. En gros j'ai créer une page php (form_soumission_1.php) que j'intègre à Joomla 1.5 grâce au composant JUMI. Dans cette page il y un formulaire dans lequel j'y ai rajouté un captcha repris sur "phpcs" Le captcha en lui même est crée à l'aide d'une autre page php (generateurcode.php). Dans cette page il y a une variable de SESSION.
Ainsi, si je fais un echo sur cette variable elle est vide, en faisant un "isset" elle n'existe pas. Pourtant j'ai bien vérifier dans le répertoire c:/wamp/tmp la variable de SESSION existe bel et bien avec le bon code de sécurité.
Voici, ci-dessous, une petite partie du code de "form_soumission_1.php" qui fait appel à "generateurcode.php"
Ensuite voici un bout de code que j'ai créer pour faire un test de récupération de la variable SESSION:
Et maintenant voici le code complet de generateurcode.php:
Information supplémentaire: dans l'optique de tests, j'ai voulu rajouté un include... le résultat est désastreux mais par contre je récupère, cette fois-çi, la variable SESSION.
voici une image du résultat:
Quelqu'un aurai - t - il une idée, car là je bloque?
En vous remerciant d'avance de votre aide.
Florent
Alors que j'ai souvent utilisé ce type de variable j'arrive quand même à me planter. En gros j'ai créer une page php (form_soumission_1.php) que j'intègre à Joomla 1.5 grâce au composant JUMI. Dans cette page il y un formulaire dans lequel j'y ai rajouté un captcha repris sur "phpcs" Le captcha en lui même est crée à l'aide d'une autre page php (generateurcode.php). Dans cette page il y a une variable de SESSION.
Ainsi, si je fais un echo sur cette variable elle est vide, en faisant un "isset" elle n'existe pas. Pourtant j'ai bien vérifier dans le répertoire c:/wamp/tmp la variable de SESSION existe bel et bien avec le bon code de sécurité.
Voici, ci-dessous, une petite partie du code de "form_soumission_1.php" qui fait appel à "generateurcode.php"
<form name="myform" class=cssforms method="post" onsubmit="return validate_form(this)" action="<?php echo $return_url; ?>">
...
...
<img src="<?php $_SERVER['DOCUMENT_ROOT'] ?>/starn/go/images/JUMIScript/generateurcode.php" alt="" />
<p><label for="securityCode">*Code de sécurité : </label><input type="text" name="securityCode" id="securityCode"></p><br />
<input type="submit" value="Envoyer" class="button"/>
<input type="reset" class="button"/>
</form>
Ensuite voici un bout de code que j'ai créer pour faire un test de récupération de la variable SESSION:
if ( isset ($_SESSION['code']))
{
echo $_SESSION['code']."tata<br />";
}
else
{
echo "pas de variable SESSION code<br />";
}
Et maintenant voici le code complet de generateurcode.php:
<?php
session_start();
srand(); //initialisation du générateur mais plus obligatoire > PHP 4.2
// Définition du content-type
header("Content-type: image/png");
$lettres = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
$code = $lettres[rand(0,25)].rand(100,1000000); //si on met que des chiffres, il faut mettre (string)
$longueurcode = strlen($code);
$_SESSION['code'] = $code;
$largeur = $longueurcode * 25;
$hauteur = 40;
$image = imagecreatetruecolor($largeur, $hauteur);
$couleurfond = imagecolorallocate($image, rand(150,255),rand(150,255),rand(150,255));
imagefilledrectangle($image, 0, 0, $largeur, $hauteur, $couleurfond);
$fontchiffre = array("1.ttf","2.ttf");
$fontlettre = array("3.ttf");
imagettftext($image, rand(15,30), rand(-45,15), 10, 35, imagecolorallocate($image, rand(10,100) ,rand(10,100),rand(10,100)), $fontlettre[0], $code[0]);
for ($i = 1; $i < $longueurcode; $i++) {
$largeurx = 20 * $i + 30;
$hauteury = rand(25,40);
imagettftext($image, rand(27,32), rand(0,45), $largeurx,$hauteury, imagecolorallocate($image, rand(10,100) ,rand(10,100),rand(10,100)), $fontchiffre[rand(0,1)], $code[$i]);
// imagestring($image, rand(1,15), $largeurx,$hauteury, $codegenere[$i], imagecolorallocate($image, rand(100,255) ,rand(100,255),rand(100,255)) );
}
imagepng($image);
imagedestroy($image);
?>
Information supplémentaire: dans l'optique de tests, j'ai voulu rajouté un include... le résultat est désastreux mais par contre je récupère, cette fois-çi, la variable SESSION.
voici une image du résultat:

Quelqu'un aurai - t - il une idée, car là je bloque?
En vous remerciant d'avance de votre aide.
Florent