Récupérer la valeur d'une liste déroulante
Slylia
Messages postés
64
Statut
Membre
-
sapma Messages postés 174 Statut Membre -
sapma Messages postés 174 Statut Membre -
Bonjour à tous,
J'ai fais un programme de recherche et je souhaite afficher le document correspondant à la recherche.
Le principe est simple, l'utilisateur entre un numéro de série et choisis l'année dans une liste déroulante. Ensuite mon programme effectue des contrôles pour vérifier les informations et il affiche la liste des résultats correspondant. L'utilisateur clique sur un bouton radio pour choisir le document à afficher et celui-ci apparaît.
Voila la liste de mes pages :
Le formulaire de recherche
Le contrôle des informations
Et l'affichage du résultat
Mon problème est le suivant, mes documents PDF sont répartis dans différents dossiers qui sont classés par année. Je souhaite que l'utilisateur choisisse l'année, que ma recherche s'éffectue dans le dossier correspondant et que le document PDF choisis s'affiche.
Seulement, quand j'effectue mon programme c'est ce message qui apparaît :
alt : http://localhost/nouvelle_recherche/PDF/
Notice: Undefined variable: Annee in C:\wamp\www\nouvelle_recherche\visu.php on line 20
/14813_s_10221_an_1999.pdf
Je ne comprends pas pourquoi il ne veut pas reconnaître l'année.
Pouvez-vous m'aider ? J'ai effectué plusieurs tests en mettant une année et ça fonctionne, par contre dès que je mets la variable ça ne fonctionne pas.
Merci d'avance pour votre aide.
J'ai fais un programme de recherche et je souhaite afficher le document correspondant à la recherche.
Le principe est simple, l'utilisateur entre un numéro de série et choisis l'année dans une liste déroulante. Ensuite mon programme effectue des contrôles pour vérifier les informations et il affiche la liste des résultats correspondant. L'utilisateur clique sur un bouton radio pour choisir le document à afficher et celui-ci apparaît.
Voila la liste de mes pages :
Le formulaire de recherche
<form name="form1" method="POST" action="NumSerie.php">
<div id="corp">
<div id="right">
<div id="contenu-right">
<h3>Recherche</h3>
<table>
Si un équipement n'a pas de numéro de série, tapez 00000.
<tr>
<td>
Numéro de série : </td><td><input type="text" name="NumSerie" maxlength=5/>
</td>
</tr>
<tr>
<td>
Année :
<select name="Annee" id="Annee">
<option value="1991">1991</option>
<option value="1992">1992</option>
<option value="1993">1993</option>
<option value="1994">1994</option>
<option value="1995">1995</option>
<option value="1996">1996</option>
<option value="1997">1997</option>
<option value="1998">1998</option>
<option value="1999">1999</option>
<option value="2001">2001</option>
</select>
</td>
</tr>
<tr>
<tr>
<td>
<input type="submit" value="Valider" name="Valider"/>
</td>
<td>
<input type="reset" value="Annuler" name="Annuler"/>
</td>
</tr>
</table>
</div>
</div>
</div>
</form>
Le contrôle des informations
<form name="form2" method="POST" action="visu.php" target="_blank">
<h3>Recherche</h3>
Le nom du fichier PDF est NumeroCommande_s_NumeroSerie_an_Annee.pdf
<br>
<br>
<?php
$NumSerie = $_POST['NumSerie'];
$Annee = $_POST['Annee'];
if ($NumSerie == NULL) { //on regarde si le numéro de série est nul
echo "Erreur, le numéro de série doit être renseigné !";
echo "<br>";
}
if (!preg_match ("(^[0-9]*$)", $NumSerie)) { //on regarde le type de caractères
echo "Le numéro de série ne doit contenir que des chiffres !";
echo "<br>";
}
if ((preg_match ("(^[0-9]*$)", $NumSerie)) && ($NumSerie != NULL)) {
foreach (new DirectoryIterator('C:/wamp/www/nouvelle_recherche/PDF/'.$Annee.'') as $fileInfo) { //$Annee correspond au sous-répertoire
if($fileInfo->isDot()) continue;
$nom_fic = $fileInfo->getFilename(); // $nom_fic correspond au nom du fichier
$posS = strrpos($nom_fic, "s_"); // trouve la position de s_
$posAn = strrpos($nom_fic, "_an"); // trouve la position de _an
$longChaine = $posAn - $posS; // différence entre $posAn et $posS
$champ = substr($nom_fic,$posS, $longChaine); // on récupère le champ entre $posS et $longChaine
if (strstr($champ,$NumSerie)) { // on regarde si le champ contient le numéro de série
echo "<input type=\"radio\" name=\"Choix\" value=\"".$nom_fic."\">"; //on affiche un bouton radio à chaque résultat
echo $nom_fic."<br>"; // on affiche les lignes correspondant à la recherche
}
}
echo "<br>";
?>
<input type="submit" value="Envoi" name="Envoi"/>
<?php
}
?>
<input type="button" value="Retour" onclick="history.go(-1)"> <!-- On retourne à la page d'avant -->
</form>
</body>
Et l'affichage du résultat
<body> <h3>Recherche</h3> <?php $Choix = $_POST['Choix']; ?> <object data="http://localhost/nouvelle_recherche/PDF/<?php echo $Annee ?>/<?php echo $Choix ?>" type="application/pdf" width="600" height="900"> <!-- On choisit d'insrer dans la page le document PDF --> alt : <a href="http://localhost/nouvelle_recherche/PDF/<?php $Annee ?>/<?php echo $Choix ?>">http://localhost/nouvelle_recherche/PDF/<?php echo $Annee ?>/<?php echo $Choix ?></a> <!-- On affiche le document correspondant la recherche --> </object> </body>
Mon problème est le suivant, mes documents PDF sont répartis dans différents dossiers qui sont classés par année. Je souhaite que l'utilisateur choisisse l'année, que ma recherche s'éffectue dans le dossier correspondant et que le document PDF choisis s'affiche.
Seulement, quand j'effectue mon programme c'est ce message qui apparaît :
alt : http://localhost/nouvelle_recherche/PDF/
Notice: Undefined variable: Annee in C:\wamp\www\nouvelle_recherche\visu.php on line 20
/14813_s_10221_an_1999.pdf
Je ne comprends pas pourquoi il ne veut pas reconnaître l'année.
Pouvez-vous m'aider ? J'ai effectué plusieurs tests en mettant une année et ça fonctionne, par contre dès que je mets la variable ça ne fonctionne pas.
Merci d'avance pour votre aide.
A voir également:
- Récupérer la valeur d'une liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Recuperer message whatsapp supprimé - Guide
- Comment recuperer une video sur youtube - Guide
- Récupérer mon compte facebook désactivé - Guide