[php/mysql] Probleme de requete
sylvainhours
-
Mimiste Messages postés 1159 Statut Membre -
Mimiste Messages postés 1159 Statut Membre -
Bonjour!
Je m'excuse par avance de l'absence d'accents, nos confreres anglo saxons les oublient bien vite
Je cherche a mettre en place un systeme permettant aux utilisateurs de mon forum de reactiver leur compte afin de mettre a jour leurs informations. J'ai donc cree une page php verifiant dans un premier temps l'identite de l'utilisateurs pour ensuite, si celle ci est correcte, envoyer un mail aux admins avec les infos actualisees puis rediriger vers la page adequoite. Et au cas ou l'identification est mauvaise, rediriger vers une page d'erreur.
Le probleme c'est que meme si l'identification est correcte, les utilisateurs sont rediriges vers la page d'erreur et aucun mail n'est envoye...
Donc si quelqu'un aurait la gentillesse de bien vouloir regarder mes codes et m'indiquer la ou j'ai pu faire une erreur ca me serait d'une grande aide parce que je suis vraiment pas doue en programmation....
Page PHP :
<?php
$mysql_host = 'mysql5-8';
$mysql_user = 'forumsce';
$mysql_pass = '-';
$mysql_base = 'forumsce';
$mysql_link = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_select_db($mysql_base);
$login = $_POST['login'];
$md_pass = md5($_POST['password']);
$query = "SELECT username FROM phpbb_users WHERE username='$login' AND user_password='$md_pass'";
$result = mysql_query($query) OR die(mysql_error());
if($array = mysql_fetch_array($result))
{
$msg = "Login:\t$login\n";
$msg .= "Classe:\t$niveau\n";
$recipient = "[email protected]";
$subject = "Reactivation d'un compte d'utilisateur";
$mailheaders = "From: <> \n";
$mailheaders .= "Reply-To: $email\n\n";
mail($recipient, $subject, $msg, $mailheaders);
header("Location: ok.htm" );
exit();
}
if ($_POST['niveau']=='-')
{
header("Location: erreur2.htm" );
}
else
{
header("Location: erreur.htm" );
}
?>
Merci!!
Je m'excuse par avance de l'absence d'accents, nos confreres anglo saxons les oublient bien vite
Je cherche a mettre en place un systeme permettant aux utilisateurs de mon forum de reactiver leur compte afin de mettre a jour leurs informations. J'ai donc cree une page php verifiant dans un premier temps l'identite de l'utilisateurs pour ensuite, si celle ci est correcte, envoyer un mail aux admins avec les infos actualisees puis rediriger vers la page adequoite. Et au cas ou l'identification est mauvaise, rediriger vers une page d'erreur.
Le probleme c'est que meme si l'identification est correcte, les utilisateurs sont rediriges vers la page d'erreur et aucun mail n'est envoye...
Donc si quelqu'un aurait la gentillesse de bien vouloir regarder mes codes et m'indiquer la ou j'ai pu faire une erreur ca me serait d'une grande aide parce que je suis vraiment pas doue en programmation....
Page PHP :
<?php
$mysql_host = 'mysql5-8';
$mysql_user = 'forumsce';
$mysql_pass = '-';
$mysql_base = 'forumsce';
$mysql_link = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_select_db($mysql_base);
$login = $_POST['login'];
$md_pass = md5($_POST['password']);
$query = "SELECT username FROM phpbb_users WHERE username='$login' AND user_password='$md_pass'";
$result = mysql_query($query) OR die(mysql_error());
if($array = mysql_fetch_array($result))
{
$msg = "Login:\t$login\n";
$msg .= "Classe:\t$niveau\n";
$recipient = "[email protected]";
$subject = "Reactivation d'un compte d'utilisateur";
$mailheaders = "From: <> \n";
$mailheaders .= "Reply-To: $email\n\n";
mail($recipient, $subject, $msg, $mailheaders);
header("Location: ok.htm" );
exit();
}
if ($_POST['niveau']=='-')
{
header("Location: erreur2.htm" );
}
else
{
header("Location: erreur.htm" );
}
?>
Merci!!
Configuration: Windows XP Internet Explorer 7.0
A voir également:
- [php/mysql] Probleme de requete
- Expert php - Télécharger - Langages
- Easy php - Télécharger - Divers Web & Internet
- Mysql community download - Télécharger - Bases de données
- Mysql error in file: /engine/classes/mysql.php at line 53 ✓ - Forum Réseaux sociaux
- Ide php - Télécharger - Web & Internet
1 réponse
Hello
pour vérifier si la personne c'est connecté correctement il vaut mieux vérifier le nombre de ligne que retourne la requête. Si elle retourne une ligne c'est que la personne est connectée, sinon il y a un problème.
$result = mysql_query($query) OR die(mysql_error());
$NbDeLignes = mysql_num_rows($result);
if($NbDeLignes > 0)
{
$msg = "Login:\t$login\n";
$msg .= "Classe:\t$niveau\n";
$recipient = "[email protected]";
$subject = "Reactivation d'un compte d'utilisateur";
$mailheaders = "From: <> \n";
$mailheaders .= "Reply-To: $email\n\n";
mail($recipient, $subject, $msg, $mailheaders);
header("Location: ok.htm" );
exit();
}
else
{
if ($_POST['niveau']=='-')
{
header("Location: erreur2.htm" );
}
else
{
header("Location: erreur.htm" );
}
}
pour vérifier si la personne c'est connecté correctement il vaut mieux vérifier le nombre de ligne que retourne la requête. Si elle retourne une ligne c'est que la personne est connectée, sinon il y a un problème.
$result = mysql_query($query) OR die(mysql_error());
$NbDeLignes = mysql_num_rows($result);
if($NbDeLignes > 0)
{
$msg = "Login:\t$login\n";
$msg .= "Classe:\t$niveau\n";
$recipient = "[email protected]";
$subject = "Reactivation d'un compte d'utilisateur";
$mailheaders = "From: <> \n";
$mailheaders .= "Reply-To: $email\n\n";
mail($recipient, $subject, $msg, $mailheaders);
header("Location: ok.htm" );
exit();
}
else
{
if ($_POST['niveau']=='-')
{
header("Location: erreur2.htm" );
}
else
{
header("Location: erreur.htm" );
}
}