Petit soucis PHP
13 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
Petit soucis PHP
Bonjour,
j'ai une page index.php avec un formulaire les données de ce formulaire son récupérées dans une seconde page index2.php dans cette meme page il y à un include de la page procedure.php
je vais vous exposer mon code ça sera plus simple :
voila mon soucis c'est que même lorsque le login ou le mot de passe est érronné il m'affiche la page procedure.php et m'envoi un mail.
Ce que je cherche à faire c'est faire en sorte qu'il n'envoi pas de mail et n'affiche pas la page procedure.php tant que l'identification n'a pas eu lieu.
pouvez vous m'aider?
j'ai une page index.php avec un formulaire les données de ce formulaire son récupérées dans une seconde page index2.php dans cette meme page il y à un include de la page procedure.php
je vais vous exposer mon code ça sera plus simple :
- Code: Tout sélectionner
<?php
$db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error());
mysql_select_db('test',$db) or die('Erreur de selection '.mysql_error());
if(isset($_POST['magasin'])) $magasin=$_POST['magasin'];
else $magasin="";
if(isset($_POST['nom'])) $nom=$_POST['nom'];
else $nom="";
if(isset($_POST['prenom'])) $prenom=$_POST['prenom'];
else $prenom="";
if(isset($_POST['teldom'])) $teldom=$_POST['teldom'];
else $teldom="";
if(isset($_POST['telmob'])) $telmob=$_POST['telmob'];
else $telmob="";
if(isset($_POST['mdp'])) $mdp=$_POST['mdp'];
else $mdp="";
if(isset($_POST['horraires'])) $horraires=$_POST['horraires'];
else $horraires="";
if(isset($_POST['dat'])) $dat=$_POST['dat'];
else $dat="";
if(isset($_POST['fonction'])) $fonction=$_POST['fonction'];
else $fonction="";
if(isset($_POST['rempl'])) $rempl=$_POST['rempl'];
else $rempl="";
if(isset($_POST['login'])) $login=$_POST['login'];
else $login="";
if(isset($_POST['mdpsup'])) $mdpsup=$_POST['mdpsup'];
else $mdpsup="";
if(empty($magasin) OR empty($nom) OR empty($prenom) OR empty($fonction) OR empty($teldom) OR empty ($telmob) OR empty ($mdp) OR empty ($horraires) OR empty ($dat) OR empty ($rempl) OR empty ($login) OR empty ($mdpsup))
{
echo '<center><font color="red" size ="14">Merci de renseigner tous les champs!<br><a href="javascript:history.go(-1)">Retour au formulaire</a></font></center>';
}
$sql= "SELECT * from superviseurs WHERE login='$login'AND mdpsup='$mdpsup'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
if ($data['mdpsup'] != $mdpsup) {
echo '<center><font color="red" size ="14">Mauvais Login ou Mot de Passe<br><a href="javascript:history.go(-1)">Retour au formulaire</a></font></center>';
}
else{
$mail = new MyMailer;
// configuration pour le mail
$mail->IsHTML(true);
$mail->AddAddress("moadresse@mail.com", "toto");
$mail->Subject = "le sujet";
$mail->Body = "le corps du message";
}
if(!$mail->Send()){
echo '<br><br><br><center><font color="white" size ="14">Erreur envoi</font></center>';
}
else{
include ('procedure.php');
}
?>
voila mon soucis c'est que même lorsque le login ou le mot de passe est érronné il m'affiche la page procedure.php et m'envoi un mail.
Ce que je cherche à faire c'est faire en sorte qu'il n'envoi pas de mail et n'affiche pas la page procedure.php tant que l'identification n'a pas eu lieu.
pouvez vous m'aider?
et si tu met :
---------------------------------------
if(!$mail->Send()){
echo '<br><br><br><center><font color="white" size ="14">Erreur envoi</font></center>';
}
else{
include ('procedure.php');
}
---------------------------------------
avant le '}' de ton else ?
---------------------------------------
if(!$mail->Send()){
echo '<br><br><br><center><font color="white" size ="14">Erreur envoi</font></center>';
}
else{
include ('procedure.php');
}
---------------------------------------
avant le '}' de ton else ?
- Code: Tout sélectionner
<?php
if(empty($magasin) OR empty($nom) OR empty($prenom) OR empty($fonction) OR empty($teldom) OR empty ($telmob) OR empty ($mdp) OR empty ($horraires) OR empty ($dat) OR empty ($rempl) OR empty ($login) OR empty ($mdpsup))
{
echo '<center><font color="red" size ="14">Merci de renseigner tous les champs!<br><a href="javascript:history.go(-1)">Retour au formulaire</a></font></center>';
}
$sql= "SELECT * from superviseurs WHERE login='$login' AND mdpsup='$mdpsup'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if(mysql_num_rows($req)<1){
echo '<center><font color="red" size ="14">Mauvais Login ou Mot de Passe<br><a href="javascript:history.go(-1)">Retour au formulaire</a></font></center>';
}else{
$mail = new MyMailer;
// configuration pour le mail
$mail->IsHTML(true);
$mail->AddAddress("moadresse@mail.com", "toto");
$mail->Subject = "le sujet";
$mail->Body = "le corps du message";
if(!$mail->Send()){
echo '<br><br><br><center><font color="white" size ="14">Erreur envoi</font></center>';
}else{
include ('procedure.php');
}
}
?>
un mauvais placemeent de tes conditions à la fin (le test si le mail a bien été envoyé ne se fait que si la personne s'est authentifié
Bonjour,
Si je me trompe pas, la ligne :
$sql= "SELECT * from superviseurs WHERE login='$login'AND mdpsup='$mdpsup'";
te permets de vérifier si tu as une correspondance Nom/Pass
Donc, si tu as 0 réponse, on retourne à la page d'authentification :
if (mysql_num_rows($req)==0)
{ On retourne à la page de login }
else
{ On envoi le mail et on affiche procedure.php }
J'espere t'avoir aidé
A+
Si je me trompe pas, la ligne :
$sql= "SELECT * from superviseurs WHERE login='$login'AND mdpsup='$mdpsup'";
te permets de vérifier si tu as une correspondance Nom/Pass
Donc, si tu as 0 réponse, on retourne à la page d'authentification :
if (mysql_num_rows($req)==0)
{ On retourne à la page de login }
else
{ On envoi le mail et on affiche procedure.php }
J'espere t'avoir aidé
A+
- Code: Tout sélectionner
<?php
if(empty($magasin) OR empty($nom) OR empty($prenom) OR empty($fonction) OR empty($teldom) OR empty ($telmob) OR empty ($mdp) OR empty ($horraires) OR empty ($dat) OR empty ($rempl) OR empty ($login) OR empty ($mdpsup))
{
echo '<center><font color="red" size ="14">Merci de renseigner tous les champs!<br><a href="javascript:history.go(-1)">Retour au formulaire</a></font></center>';
}else{
$sql= "SELECT * from superviseurs WHERE login='$login' AND mdpsup='$mdpsup'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if(mysql_num_rows($req)<1){
echo '<center><font color="red" size ="14">Mauvais Login ou Mot de Passe<br><a href="javascript:history.go(-1)">Retour au formulaire</a></font></center>';
}else{
$mail = new MyMailer;
// configuration pour le mail
$mail->IsHTML(true);
$mail->AddAddress("moadresse@mail.com", "toto");
$mail->Subject = "le sujet";
$mail->Body = "le corps du message";
if(!$mail->Send()){
echo '<br><br><br><center><font color="white" size ="14">Erreur envoi</font></center>';
}else{
include ('procedure.php');
}
}
}
?>
juste un else si les champs sont bien remplis
ce n'est pas seulement pour le nombre de fois appelées mais surtout pour la clareté du code ainsi que pour son évolution
sur un code long, ça permet aussi de ne pas par des variables temporaires surcharger puisque celles produites par les fonctions sont (en théorie) détruites après les executions de fonctions
rog
sur un code long, ça permet aussi de ne pas par des variables temporaires surcharger puisque celles produites par les fonctions sont (en théorie) détruites après les executions de fonctions
rog
13 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Froogle, l'annuaire du shopping selon Google
- Petit PR Noël : la chanson au Père Noël Google :-)
- Google met à jour sa recherche locale
- Parts de marché des moteurs aux USA (Mai 2008)
- Google rachète JotSpot, spécialiste du wiki
- Nuage de tags Wordle pour WebRankInfo
- Plein de chiffres incroyables sur Google Maps
- La Google Dance existe-elle encore ?
- Google reconnait-il les différentes formes de mots ? (singulier/pluriel et autres)
- Parts de marché des moteurs aux USA (Janvier 2008)
Consultez la description détaillée des produits ou services de Google suivants : JotSpot
- Analyser le référencement Google
Cet outil vous donne un petit résumé de l'état de référencement de votre site dans Google. - Détection de pages similaires
Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités









le forum