par
michel47 » 18 févr. 2022, 18:32
Bonjour,
J'essaie de faire une sorte d'annuaire local.
J'ai deux formulaires. Un pour l'inscription qui demande de renseigner le nom, le numéro de téléphone et un commentaire (qui fonctionne parfaitement, les inscriptions se font dans la base de données) et un pour la recherche à partir du nom (donc qui ne comporte que le champ nom et un bouton de validation).
Mon problème : Lorsque je tape un nom existant dans la base de données, j'ai bien le nom qui s'affiche mais pour le reste des données (numéro de téléphone, commentaire) j'ai le message d'erreur suivant :
Warning: Undefined array key "nom" in C:\xampp\htdocs\sitesweb\recherche.php on line 29
Voici le code du formulaire et le script de ma requête
Code : Tout sélectionner
<form method="POST" id="form2" action="recherche.php" target="_blank">
<div>
<input type="text" id="nom" name="nom" size="30" placeholder="Saisissez le nom" value="<?php if (isset($_POST['nom'])) echo htmlspecialchars($_POST['nom']);?>">
<?php
if (isset($_POST['nom']) && !empty($_POST['nom'])){
echo '';
}
?>
</div>
<input type="button" id="envoyer" name ="envoyer" value="Envoyer" />
</form>
Code : Tout sélectionner
$requete = $connexion->prepare("SELECT * FROM membres WHERE nom=?");
$requete->execute([$_POST['nom']]);
$recherche = $requete->fetch();
echo '<span class="titre_form">';
echo '<u>Résultat de la recherche</u><br /><br />';
if ($recherche) {
echo 'le nom '.$_POST['nom'].' figure bien dans l\'annuaire';
echo '<br />Son numéro de téléphone est '.$_POST['telephone'];
echo '<br />Son commentaire est '.$_POST['message'];
} else {
echo 'Cette personne ne figure pas dans l\'annuaire';
}
echo '</span>';
Merci pour votre possible aide