Bonjour, j'ai un petit souci de redirection (fin de la vidéo), après mon Log (ma connection)
je reste sur ma page login.php qui reste toute blanche, pareil pour logout.
j'utilise mamp ( sous domaine à la place de portfolio ( c'est studio)
http://localhost:8888/studio/login.php#
http://localhost:8888/studio/lib/auth.php#
Si quelqu'un sait m'aider!!
merci d'avance!
/**
* login.php
**/
<?php
$auth= 0;
include 'lib/includes.php';
/**
* TRAITEMENT DU FORMULAIRE
**/
if(isset($_POST'username']) && isset($_POST'password'])){
$username = $db->quote($_POST'username']);
$password = sha1($_POST'password']);
$select = $db->query("SELECT * FROM users WHERE username=$username AND password='$password'");
if($select->rowCount() > 0){
$_SESSION'Auth'] = $select->fetch();
setFlash('connected');
header('Location:' . WEBROOT . 'admin/index.php');
die();
}
}
/**
* INCLUSION DU HEADER
**/
include 'partials/header.php';
?>
<form action="#" method="post">
<div class="form-group">
<label for="username"> user </label>
<?php echo input('username'); ?>
</div>
<div class="form-group">
<label for="password"> password </label>
<input type="password" class="form-control" id="password" name="password">
</div>
<button type="submit" class="btn btn-default"> connect </button>
</form>
<?php include 'lib/debug.php' ; ?>
<?php include 'partials/footer.php' ; ?>
/**
* auth.php
**/
<?php
session_start();
if(!isset($auth)){
if (!isset($_SESSION'Auth']'id'])){
header('location:' . WEBROOT . 'login.php');
die();
}
}
/**
* form.php
**/
<?php
function input($id){
$value = isset($_POST$id]) ? $_POST$id] : '';
return "<input type='text' class='form-control' id='$id' name='$id' value='$value'>";
}
/**
* constants.php
**/
<?php
define('WEBROOT', dirname($_SERVER'SCRIPT_NAME']) . '/');
/**
* includes.php
**/
<?php
include 'constants.php';
include 'db.php';
include 'form.php';
// Session_start();
include 'auth.php';
include 'session.php';
?>
/**
* logout.php
**/
<?php $auth = 0;
include ('lib/includes.php');
$_SESSION = array();
header('Location:' . WEBROOT . 'index.php');
/**
* session.php
**/
<?php
function flash(){
if (isset($_SESSION'Flash'])) {
extract($_SESSION'Flash']);
unset($_SESSION'Flash']);
return "<div class='alert alert-$type'>$message</div>";
}
}
function setflash($message, $type = 'success'){
$_SESSION'Flash']'message'] = $message;
$_SESSION'Flash']'type'] = $type;
}
Je pense que t'as mis un point d’exclamation de plus au niveau de ton fichier auth.php
Essaies de l'enlever de ton premier test
if(isset($auth))
Je vien de tester mais ça ne change rien! merci quand même! j ai suivi à la lettre le tuto
au niveau de ton code login.php, tu as mis
type="submint"
au lieu de
type="submit"
Essaies de la corriger.
Bien vu merci! mais pas de redirection ! ^^
j'ai oublié la db.php
/**
* db.php
**/
<?php
try{
$db = new PDO ('mysql:host=localhost;dbname=studio','root','root');
$db ->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$db ->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
} catch (PDOException $e){
echo 'no connection';
echo $e->getMessage();
die();
}
J'ai réussi!(je ne sais pas comment ^^)
en changeant de navigateur tout simplement!
sur chrome j'ai la redirection mais pas via mozilla!
si ça peut aidé quelqu'un!
;-)