$_GET

Résolu
Salut :)

J'ai un problème avec ce code ; l'erreur est dans $_GET.

d'abord j'ai 2 fichier liée par include : code1.php et code2.html.php

code1.php

<?php 
if(!isset($_COOKIE['fidelio'])){
include "code2.php";

$fidelio=$_GET['x'];
setcookie('fidelio',$fidelio,time()+3600*24*365);
}
?>


code2.html.php

<html>
<head><title></title></head>
<body>

<a href="formulaire.php?x=1000">
Gagnez 1000 DH , en ponts fidélio  , en souscrivant à la carte fidélité 
</a>


<?php

?>

</body>

</html>

3 réponses

  1. Salut,

    Quel est le problème ?

    Ton deuxième fichier se nomme code2.html.php mais dans le premier fichier ti inclus le fichier code2.php.

    Bonne journée,
    0
    1. Salut ! :)
      Merci pour votre réponse :)
      j'ai corrigé la faute mais il reste toujours le problème dans la ligne 5 et 6 du code1.php

      erreur 1 est ->>>> Unified index : x in C:\wamp\www\...
      erreur 2 est ->>>> Unified variable: fidelio in C:\wamp\www\...
      0
    2. La variable $_GET['x'] n'est pas définie.
      Quel est l'URL utilisée pour charger ta page ?
      0
    3. Voici l'URL de mon page ; elle est écrit en code2.html.php :)

      <a href="formulaire.php?x=1000">
      0
    4. Le lien pointe donc sur le fichier formulaire.php.
      Où est appelé le fichier code1.php qui utilise le paramètre $_GET['x'] ?
      0
    5. @PitetSalut !
      Voilà j'a crée un compte .

      non , je veux que $_GET['x'] s'initialise avec x=1000 qui est dans
      <a href="formulaire.php?x=1000">
      0
  2. Au premier chargement de la page TD2exo2.php, le paramètre GET PointsSouscription n'existe pas encore puisque l'URL ne contient pas de paramètre.
    Il faut donc ajouter un contrôle dans TD2exo2.php pour vérifier si le paramètre existe dans l'URL, autrement dit pour vérifier que l'utilisateur ai cliqué sur le lien :
    if(!isset($_cookie['fidelio'])){
        include "SimultationSouscripton.html.php";
    
        if (!empty($_GET['PointsSouscription'])) {
            // si le paramètre existe, on créé le cookie
            $fidelio=$_GET['PointsSouscription'];
    
            setcookie('fidelio',$fidelio,time()+3600*24*365);
            include "templatefidelio.html.php";
        } // else { le paramètre n'existe pas, on ne fait rien }
    
    }
    


    Attention également aux coquilles :
    include "SimultationSouscripton.html.php";
    // devrait surement s'écrire
    include "SimulationSouscription.html.php";
    
    
    $fidelo = $_GET['PointsSouscription']; // variable $fidelo
    setcookie('fidelio',$fidelio,time()+3600*24*365); // variable $fidelio
    
    0
    1. ça marche bien :)

      Je vous remercie beaucoup pour votre aide et votre efforts ^_^
      0