Probleme menu et zone de texte [Résolu]

Signaler
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010
-
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010
-
Bonjour à tous,
je souhaite faire afficher un texte d'un fichier texte dans une zone de texte et ce sur la même page (self) mais j'ai deux problèmes:
-mon choix dans le menu revient à sa valeur initiale même si je choisie le second choix
-rien ne s'affiche dans ma zone texte
-la variable text n'est pas définie
si vous pouvez m'aider ,d'avance merci
voici le code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans nom</title>
<?php $self=$_SERVER['PHP_SELF'];?>
<style type="text/css">
<!--
#Layer1 {
 position:absolute;
 width:966px;
 height:115px;
 z-index:1;
}
#Layer2 {
 position:absolute;
 width:885px;
 height:382px;
 z-index:1;
}
#Layer3 {
 position:absolute;
 width:50px;
 height:38px;
 z-index:1;
}
#Layer4 {
 position:absolute;
 width:78px;
 height:31px;
 z-index:2;
 left: 204px;
 top: 4px;
}
#Layer5 {
 position:absolute;
 width:740px;
 height:249px;
 z-index:3;
 left: 101px;
 top: 97px;
}
-->
</style>
</head>



<form id="formule" name="formule" method="post" action="<?php $self ?>">


 

   

      <label></label>
      <label>
      <select name="choixtex" id="choixtex">
        <option value="txt_polu">polution</option>
        <option value="txt_reg">reglement</option>
      </select>
 
      </label>
 
   

   

      <label>
     
      </label>
   

   

      <label>
      <textarea name="zone_texte" id="zone_texte"  ><?php echo ("$text") ; ?></textarea>
      </label>
   

 

</form>
 <?php
 $text="";
 if (!isset($_POST['choixtex']))$_POST['choixtex']=0;
$valeur_tex=$_POST['choixtex'];
switch($valeur_tex)
{case "txt_polu": $filename="polu.txt";break;
case "txt_reg": $filename="reg.txt";break;
$file=fopen($filename,"r");
$filesize=filesize($filename);
$text=fread($file,$filesize);
fclose($file);};


?>

</html>

11 réponses

Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
35
re,

   

      //ici
      <?php 
       $text="";
       if (!isset($_POST['choixtex']))$_POST['choixtex']=0;
      $valeur_tex=$_POST['choixtex'];
      switch($valeur_tex)
      {case "txt_polu": $filename="polu.txt";break;
      case "txt_reg": $filename="reg.txt";break; 
      $file=fopen($filename,"r");
      $filesize=filesize($filename);
      $text=fread($file,$filesize);
      fclose($file);};
      ?>
      <label>
      <textarea name="zone_texte" id="zone_texte"  ><?php echo ("$text") ; ?></textarea>
      </label>
   

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
24
Bonjour.
Il me semble que tu fais ton echo("$text"); avant de mettre le contenu dans la variable.
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
35
Salut,

laurent1024++

Et tu peus virer les doubles quotes qui sont autour de ta variable, elle ne servent a rien...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010

Bonjour ,merci pour ta réponse Laurent
mais alors où puis-je placer?
<?php
 $text="";
 if (!isset($_POST['choixtex']))$_POST['choixtex']=0;
$valeur_tex=$_POST['choixtex'];
switch($valeur_tex)
{case "txt_polu": $filename="polu.txt";break;
case "txt_reg": $filename="reg.txt";break;
$file=fopen($filename,"r");
$filesize=filesize($filename);
$text=fread($file,$filesize);
fclose($file);};
?>
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
24
Tu peux le mettre n'importe où, du moment que ce soit avant la ligne echo($text);
Cdt
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010

Merci pour vos réponses :
j'ai enlevé les quotes et mis le code à la bonne place mais cela ne change pas et lorsque je clique sur mon bouton submit ,même si je choisie le second choix de titre du texte que je veux faire afficher ,le menu se replace au niveau du premier choix.
que faire de plus?
merci
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010

Merci pour vos réponses :
j'ai enlevé les quotes et mis le code à la bonne place mais cela ne change pas et lorsque je clique sur mon bouton submit ,même si je choisie le second choix de titre du texte que je veux faire afficher ,le menu se replace au niveau du premier choix.
que faire de plus?
merci
Messages postés
3472
Date d'inscription
lundi 16 juillet 2007
Statut
Membre
Dernière intervention
28 février 2014
35
Si ça ne marche pas, je ne vois pas l'intéret de mettre ma réponse en réponse acceptée...

Il me semble que tu ferme ton switch tout a la fin, ferme le après le dernier break...

a++

Si la réponse vous convient, pensez : Réponse acceptée !
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010

désolé,je suis nouveau sur le forum!
Merci  ,il y a  du mieux en changeant le switch: le texte s'affiche bien dans ma zone texte,! super mais maintenant, je ne peux toujours pas choisir le second choix,un clic sur le second me renvoie au premier choix!
j'attend ta réponse
merci encore
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
24
rajoute des tests au niveau de option pour rajouter "selected" en fasse de l'option qui correspond au parametre $post["choixtex"]
Messages postés
33
Date d'inscription
vendredi 22 août 2008
Statut
Membre
Dernière intervention
17 septembre 2010

merci laurent cela marche (presque) ,je peux sélectionner maintenant ce que je veux et le bon texte apparait dans la zone de texte mais chaque fois que je clique sur le bouton, le titre du menu que je vise disparait au profit du titre du premier (ici polution) que faire? (rajouter un 3iéme vide et le sélectionner initialement?)

 <select name="choixtex" id="choixtex">
        <option value="txt_polu" SELECTED>polution</option>
        <option value="txt_reg">reglement</option>
      </select>

merci de ton aide...