Identification avec tableau-->page blanche [Résolu/Fermé]
Signaler
Patoch250
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
A voir également:
- Identification avec tableau-->page blanche
- Identification avec tableau-->page blanche ✓ - Forum - Programmation
- Supprimer page blanche après tableau - Forum - Word
- Comment supprimer une page blanche à la fin d'un document word ✓ - Forum - Word
- Supprimer deuxième page après un tableau - Forum - LibreOffice / OpenOffice
- Word - Supprimer une page ✓ - Forum - Word
12 réponses
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
Bonjour,
euh Waou.....
je copie-colle ce script, page blanche.
je met en commentaire successivement les lignes, page blanche
j'arrive a la dernière ligne a mettre en commentaire, page blanche
je met tout en commentaire et met un echo "coucou" en 1ere ligne, page blanche.
juste Waou ^^
euh Waou.....
je copie-colle ce script, page blanche.
je met en commentaire successivement les lignes, page blanche
j'arrive a la dernière ligne a mettre en commentaire, page blanche
je met tout en commentaire et met un echo "coucou" en 1ere ligne, page blanche.
juste Waou ^^
Signaler
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
qu'est ce que ca veut dire?
Signaler
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
la réponse est en dessous ^^
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
trouvé^^
ca vient des balises php
remplace <? par <?php et ca ira tout seul
je dois avouer que ca fait peur au début ^^
ca marche chez ktm620enduro parce que son serveur web/php doit etre configurer pour reconnaitre ces balises et pas le tien ; ) (ni le mien d'ailleurs^^)
RISE OF THE GEEK IS COMMING SOON!!! BWAHAHAHAHA
ca vient des balises php
remplace <? par <?php et ca ira tout seul
je dois avouer que ca fait peur au début ^^
ca marche chez ktm620enduro parce que son serveur web/php doit etre configurer pour reconnaitre ces balises et pas le tien ; ) (ni le mien d'ailleurs^^)
RISE OF THE GEEK IS COMMING SOON!!! BWAHAHAHAHA
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
euh ben oui c'est normal
if ($key = array_search($login, $identifiants))
cherche $login dans le tableau $identifiants et dans le tableau il y a '' donc si tu mets rien ca valide les tests et donc redirige
if ($key = array_search($login, $identifiants))
cherche $login dans le tableau $identifiants et dans le tableau il y a '' donc si tu mets rien ca valide les tests et donc redirige
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
if ($key = array_search($login, $identifiants))
ce test regarde si dans le tableau $identifiants que tu as définit plus haut avec cette ligne:
$identifiants=array('','bureau_sushiba','standard_sushiba','responsable_sushiba','cuisine_sushiba');
si tu ne remplit pas ton formulaire $login va valoir '' (vide).
ce vide EST dans ton tableau, la première valeur.
donc le test va être validé, pareil pour le mot de passe et si l'on valide les 2 tests on est a la redirection.
donc c'est normal que si tu ne remplis pas ton formulaire et que tu valides ca te rediriges
compris?
ce test regarde si dans le tableau $identifiants que tu as définit plus haut avec cette ligne:
$identifiants=array('','bureau_sushiba','standard_sushiba','responsable_sushiba','cuisine_sushiba');
si tu ne remplit pas ton formulaire $login va valoir '' (vide).
ce vide EST dans ton tableau, la première valeur.
donc le test va être validé, pareil pour le mot de passe et si l'on valide les 2 tests on est a la redirection.
donc c'est normal que si tu ne remplis pas ton formulaire et que tu valides ca te rediriges
compris?
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
*fais des tests* ^^
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
Bon je viens de tester tout ce plus en détail. la version de départ était bonne. il faut bien laisser la chaine vide en 1ere valeur car array_search renvoi la position de la chaine et vu que le tableau commence a 0 la valeur de retour sera 0 et le test ne sera pas validé.
je viens de tester en remettant la chaine vide et en mettant un login mdp vide aussi, et ça me jette correctement. je ne vois pas pourquoi toi ça t'acceptais.
je viens de tester en remettant la chaine vide et en mettant un login mdp vide aussi, et ça me jette correctement. je ne vois pas pourquoi toi ça t'acceptais.
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
<?php
$login='';
$pass='';
$identifiants=array('','bureau_sushiba','standard_sushiba','responsable_sushiba','cuisine_sushiba');
$passwords=array('','756b25da610ecf7fe6f751ccc9947f6a','pass-2','pass-3','pass-4');
$headers=array('','FAQ-bureau.php','FAQ-standard.php','FAQ-responsable.php','FAQ-cuisine.php');
if (!preg_match('#[a-z0-9]+#i',$pass) or !preg_match('#[a-z_]+#i',$login))
die('mot de passe ou login inexistant ou invalide');
$pass=md5($pass);
if ($key = array_search($login, $identifiants))
{
if ($passwords[$key]==$pass)
{
$header=$headers[$key];
$_SESSION['_login'] = $login;
$_SESSION['_pass'] =$pass;
header('location: '.$header);
exit();
}
else die ('mauvais mot de passe');
}
else die('mauvais login');
?>
$login='';
$pass='';
$identifiants=array('','bureau_sushiba','standard_sushiba','responsable_sushiba','cuisine_sushiba');
$passwords=array('','756b25da610ecf7fe6f751ccc9947f6a','pass-2','pass-3','pass-4');
$headers=array('','FAQ-bureau.php','FAQ-standard.php','FAQ-responsable.php','FAQ-cuisine.php');
if (!preg_match('#[a-z0-9]+#i',$pass) or !preg_match('#[a-z_]+#i',$login))
die('mot de passe ou login inexistant ou invalide');
$pass=md5($pass);
if ($key = array_search($login, $identifiants))
{
if ($passwords[$key]==$pass)
{
$header=$headers[$key];
$_SESSION['_login'] = $login;
$_SESSION['_pass'] =$pass;
header('location: '.$header);
exit();
}
else die ('mauvais mot de passe');
}
else die('mauvais login');
?>
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
et bien ta valeur vient bien de ton formulaire. c'est bien en fait un $_POST['login'] et $_POST['pass'], non?
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
J'ai pas meilleur temp de faire ca sur chaque page :
<?php
if (! (isset( $_SESSION['_login'] && (isset( $_SESSION['_pass'])))
die ('Invalide');
}
?>
Cependant j'ai une erreur de syntaxe je ne sai pa pk
<?php
if (! (isset( $_SESSION['_login'] && (isset( $_SESSION['_pass'])))
die ('Invalide');
}
?>
Cependant j'ai une erreur de syntaxe je ne sai pa pk
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
<?php
if (!isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
die ('Invalide');
}
?>
if (!isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
die ('Invalide');
}
?>
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
voila l'erreur qu'il m'affiche
Notice: Undefined index: login in C:\Program Files\EasyPHP-5.3.1\www\INTRANET\templates\identification2.php on line 3
Notice: Undefined index: mdp in C:\Program Files\EasyPHP-5.3.1\www\INTRANET\templates\identification2.php on line 4
mot de passe ou login inexistant ou invalide
Notice: Undefined index: login in C:\Program Files\EasyPHP-5.3.1\www\INTRANET\templates\identification2.php on line 3
Notice: Undefined index: mdp in C:\Program Files\EasyPHP-5.3.1\www\INTRANET\templates\identification2.php on line 4
mot de passe ou login inexistant ou invalide
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
Bonjour,
vérifie l'état de tes variables $_SESSION['_login'] et $_SESSION['_pass'] avec un print_r($_SESSION) et cherche pourquoi elles ont ces valeurs.
tu verra quelle page les leur a donnée
vérifie l'état de tes variables $_SESSION['_login'] et $_SESSION['_pass'] avec un print_r($_SESSION) et cherche pourquoi elles ont ces valeurs.
tu verra quelle page les leur a donnée
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
je l'ai mis sur une des pages comme tu viens de me dire et voila ce que j'ai :
Notice: Undefined variable: _SESSION in C:\Program Files\EasyPHP-5.3.1\www\INTRANET\templates\identification2.php on line 5
Notice: Undefined variable: _SESSION in C:\Program Files\EasyPHP-5.3.1\www\INTRANET\templates\identification2.php on line 5
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
lol, bon je t'explique le fonctionnement des session parce que la t'as l'air perdu...
pour que les sessions soient pris en comptes sur n'importe quelle page il faut que tout au debut, vraiment tout au debut, tu mette un
<?php
session-start();
?>
a partir de la tu peux utiliser un tableau associatif qui s'appel $_SESSION[]
donc pour pouvoir utiliser ce $_SESSION tu dois avoir mis le session_start()
donc la met le session start tout en haut de la page ou tu as mis ca : print_r($_SESSION)
pour que les sessions soient pris en comptes sur n'importe quelle page il faut que tout au debut, vraiment tout au debut, tu mette un
<?php
session-start();
?>
a partir de la tu peux utiliser un tableau associatif qui s'appel $_SESSION[]
donc pour pouvoir utiliser ce $_SESSION tu dois avoir mis le session_start()
donc la met le session start tout en haut de la page ou tu as mis ca : print_r($_SESSION)
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
ok ça ça veut dire que tes variables de session n'existent pas donc
<?php
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
echo "Vous n'etes pas identifié";
}
?>
a la place du print_r($_SESSION)
devrait te dire que tu n'est pas identifié.
si ensuite tu redirige directement vers ta page d'identification, ca ira =)
<?php
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
echo "Vous n'etes pas identifié";
}
?>
a la place du print_r($_SESSION)
devrait te dire que tu n'est pas identifié.
si ensuite tu redirige directement vers ta page d'identification, ca ira =)
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
Merci, par contre il ne manque pas quelque chose entre les deux accolade?
<?php
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
Parce que quand je met ca à la place de print_r($_SESSION) il m'interdit meme quand je me logue correctement
<?php
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
Parce que quand je met ca à la place de print_r($_SESSION) il m'interdit meme quand je me logue correctement
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
non c bon ca marche ! juste un petit détail j'ai mi ca dans mes pages
<?php
session_start();
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
echo "Vous n'etes pas identifié";
header("location: accueil.php") ;
}
?>
Niveau secu ca marche par contre j'ai pa le message echo "Vous n'etes pas identifié"; qui s'affiche
<?php
session_start();
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
echo "Vous n'etes pas identifié";
header("location: accueil.php") ;
}
?>
Niveau secu ca marche par contre j'ai pa le message echo "Vous n'etes pas identifié"; qui s'affiche
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
Quand tu te log correctement tu mets des valeurs a tes variables de session $_SESSION['_login'] et $_SESSION['_pass'].
ensuite en haut de TOUTES les pages que tu ne veux pas avoir accès sans être identifié tu mets
<?php
session_start();
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
header("location:tapage_didentification.php");
}
?>
//tout le code HTML de ta page
si tu est identifié rien ne se passe et ta page s'affiche, si tu ne l'est pas tu est redirigé vers tapage_didentification.php
ok?
ensuite en haut de TOUTES les pages que tu ne veux pas avoir accès sans être identifié tu mets
<?php
session_start();
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
header("location:tapage_didentification.php");
}
?>
//tout le code HTML de ta page
si tu est identifié rien ne se passe et ta page s'affiche, si tu ne l'est pas tu est redirigé vers tapage_didentification.php
ok?
Patoch250
- Messages postés
- 66
- Date d'inscription
- lundi 4 avril 2011
- Statut
- Membre
- Dernière intervention
- 29 avril 2011
c bon j'ai mis ca et ca marche bien !
<?php
session_start();
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
echo '<p><b style="color:red">espace sécurisé</b><br />Connecté vous pour accéder à cette page</p>';
include("accueil.php") ;
exit();
}
?>
<?php
session_start();
if (isset( $_SESSION['_login']) && isset( $_SESSION['_pass']))
{
}
else
{
echo '<p><b style="color:red">espace sécurisé</b><br />Connecté vous pour accéder à cette page</p>';
include("accueil.php") ;
exit();
}
?>
Gremy87
- Messages postés
- 352
- Date d'inscription
- mercredi 19 mai 2010
- Statut
- Membre
- Dernière intervention
- 19 mars 2014
pour ca dans ton header(location:....) tu rajoutes une variable GET
exemple:
header("location:tapage_didentification.php?nonident=true");
et dans ta page d'identification ( celle-ci tapage_didentification.php )
tu mets:
if (isset($_GET['nonident']))
{
echo "<p>Vous n'estes pas identifié</p>";
}
exemple:
header("location:tapage_didentification.php?nonident=true");
et dans ta page d'identification ( celle-ci tapage_didentification.php )
tu mets:
if (isset($_GET['nonident']))
{
echo "<p>Vous n'estes pas identifié</p>";
}