Comparer une information saisie / une base de données
Résolu
DOKTEK
Messages postés
28
Date d'inscription
Statut
Membre
Dernière intervention
-
DOKTEK Messages postés 28 Date d'inscription Statut Membre Dernière intervention -
DOKTEK Messages postés 28 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai encore un problème de débutant.
Cette fois il s'agit de vérifier si une adresse e-mail existe dans une base de données et dans ce cas envoyer le mot de passe.
Le code ci-après ne marche pas car la réponse est toujours la même (adresse e-mail inconnu ) que l'adresse e mail existe dans la base ou pas. (il n'y pas d'erreur au niveau d'exécution de ce code par contre et les passages pour les tests, comme par exemple afficher les adresses e-mail enregistrés, fonctionnement bien)
Si quelqu'un peut m'aider ou m'orienter vers un page web qui explique comment faire....
D'avance merci
Dan (DOKTEK)
Voici le code php
<?php
// Vérification existence adresse e-mail dans le base de données avant l'envoi du mot de passe
$courrielmatch = htmlspecialchars ($_POST['courrielmatch']);
echo '<p> Email saisi = '.$courrielmatch.'<p>';
$bdd = new PDO('mysql:host = localhost;dbname=test','root','');
$req = $bdd->prepare('SELECT * FROM base_espace_membre_bretcom');
$reponse = $bdd->query('SELECT * FROM base_espace_membre_bretcom');
header('Content-Type: text/html; charset=UTF-8');
echo '<p> On affiche les adresses e-mail enregistrées dans la base de données : </p>';
while ($donnees = $reponse->fetch())
{
echo '<p>'. $donnees ['Courriel']. '</p>';
}
echo '<p> Conclusion : </p>';
$req->execute(array(
'Courriel' => $donnees ['Courriel'],
'courrielmatch' => $courrielmatch));
$resultat = $req->fetch();
if (!$resultat)
{
echo 'Adresse e-mail inconnu';
}
else
{
echo 'Mot de passe envoyé à l\'adresse e-mail indiqué';
}
?>
J'ai encore un problème de débutant.
Cette fois il s'agit de vérifier si une adresse e-mail existe dans une base de données et dans ce cas envoyer le mot de passe.
Le code ci-après ne marche pas car la réponse est toujours la même (adresse e-mail inconnu ) que l'adresse e mail existe dans la base ou pas. (il n'y pas d'erreur au niveau d'exécution de ce code par contre et les passages pour les tests, comme par exemple afficher les adresses e-mail enregistrés, fonctionnement bien)
Si quelqu'un peut m'aider ou m'orienter vers un page web qui explique comment faire....
D'avance merci
Dan (DOKTEK)
Voici le code php
<?php
// Vérification existence adresse e-mail dans le base de données avant l'envoi du mot de passe
$courrielmatch = htmlspecialchars ($_POST['courrielmatch']);
echo '<p> Email saisi = '.$courrielmatch.'<p>';
$bdd = new PDO('mysql:host = localhost;dbname=test','root','');
$req = $bdd->prepare('SELECT * FROM base_espace_membre_bretcom');
$reponse = $bdd->query('SELECT * FROM base_espace_membre_bretcom');
header('Content-Type: text/html; charset=UTF-8');
echo '<p> On affiche les adresses e-mail enregistrées dans la base de données : </p>';
while ($donnees = $reponse->fetch())
{
echo '<p>'. $donnees ['Courriel']. '</p>';
}
echo '<p> Conclusion : </p>';
$req->execute(array(
'Courriel' => $donnees ['Courriel'],
'courrielmatch' => $courrielmatch));
$resultat = $req->fetch();
if (!$resultat)
{
echo 'Adresse e-mail inconnu';
}
else
{
echo 'Mot de passe envoyé à l\'adresse e-mail indiqué';
}
?>
A voir également:
- Comparer une information saisie / une base de données
- Fuite données maif - Guide
- Saisie gestuelle iphone - Guide
- Comment saisir une adresse url - Guide
- Base de registre - Guide
- Supprimer les données de navigation - Guide
2 réponses
Bonjour,
Il te faut une clause where pour faire une condition de recherche sur la base de données.
si l'adresse email que tu saisie est 'courielmatch'
$req = $bdd->prepare(' SELECT * FROM base_espace_membre_bretcom WHERE Email = : courrielmatch ');
$req->execute(array(': courrielmatch' => $courrielmatch));
$resultat = $req->fetch();
if (!$resultat)
{
echo 'Adresse e-mail inconnu';
}
else
{
echo 'Mot de passe envoyé à l\'adresse e-mail indiqué';
}
Bon courage
Il te faut une clause where pour faire une condition de recherche sur la base de données.
si l'adresse email que tu saisie est 'courielmatch'
$req = $bdd->prepare(' SELECT * FROM base_espace_membre_bretcom WHERE Email = : courrielmatch ');
$req->execute(array(': courrielmatch' => $courrielmatch));
$resultat = $req->fetch();
if (!$resultat)
{
echo 'Adresse e-mail inconnu';
}
else
{
echo 'Mot de passe envoyé à l\'adresse e-mail indiqué';
}
Bon courage