Problème Php

saraza Messages postés 103 Statut Membre -  
 toto -
Bonsoir,

J'ai réalisé ça mais lorsque on a sais son age il ne trouve pas la page car la variable $age n'est pas remplacée dans l'adresse.

Pourquoi elle n'est pas remplacée ?

<?php
if (isset($_POST['age']))
{
$age = $_POST['age'];
header('Location: index.php?age=$age');
}
else
{
?>
<p align="center">Bonjour,
Merci de saisir votre age :</br>
</p>
<form method="post">
<div align="center">
<input type="text" name="age" />
<input type="submit" value="Valider" />
</p>
</div>
</form>
<?php
}

?>

6 réponses

  1. iunity Messages postés 75 Statut Membre 9
     
    Il faut remplacer
    header('Location: index.php?age=$age');

    par
    header('Location: index.php?age='.$age);


    Dans ton code, la variable $age se trouve entre les quotes ( ' ), et elle n'est donc pas interprétée. Tu pourrais aussi remplacer les quotes par des guillemets ( " ). De cette manière les variables sont interprétées quand même, mais l'exécution est plus lente.
    1
  2. Alain_42 Messages postés 5413 Statut Membre 904
     
    Bonsoir,

    deux anomalies:

    header('Location: index.php?age=$age');

    entre les ' les variables ne sont pas interprétées

    mets:

    header("Location: index.php?age=$age"); 


    ou
    header('Location: index.php?age='.$age); 


    et revois les tutos sur les formulaires

    dans <form il faut name="...." method="...." action=".....">

    @lain
    1
  3. saraza Messages postés 103 Statut Membre 15
     
    Merci beaucoup
    Ça marche.
    0
  4. saraza Messages postés 103 Statut Membre 15
     
    Oui mais j'ai un problème, quand je l'ais essayé en ligne sur un site free.
    J'ai eu ce message :

    Warning: Cannot modify header information - headers already sent by (output started at /mnt/165/sda/f/9/*****/index.php:3) in /mnt/165/sda/f/9/****/index.php on line 9
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. saraza Messages postés 103 Statut Membre 15
     
    Sinon j'ai essayé ça mais ça ne fonctionne pas :
    echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php?age=index.php?age=$age>';
    0
  7. toto
     
    Bonjour

    Cannot modify header information ça, c'est presque à coup sûr parce que tu as laissé des lignes vides avant le <?php

    echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php?age=index.php?age=$age>';
    tu n'as pas lu les explications de iunity et Alian_42 ? Tu recommences exactement la même faute !
    0