Bonjour,
Je suis rendu à la suppression des catégories et j'ai un problème de header location : http://d.pr/i/1a0E
voilà le contenu de mon auth.php et category.php :
///////////////////////
/// auth.php
///////////////////////
<?php
session_start();
if(!isset($auth)) {
if(!isset($_SESSION'Auth']'id'])){
header('Location:' . WEBROOT .'login.php');
die();
}
}
if(!isset($_SESSION'csrf'])){
$_SESSION'csrf'] = md5(time() + rand());
}
function csrf(){
return 'csrf=' . $_SESSION'csrf'];
}
function checkCsrf(){
if(!isset($_GET'crsf']) || $_GET'crsf'] != $_SESSION'csrf']){
header('Location: ' . WEBROOT . 'csrf.php');
die();
}
}
///////////////////////
/// category.php
///////////////////////
<?php
include '../lib/includes.php';
include '../partials/admin_header.php';
/**
* SUPPRESSION
**/
if(isset($_GET'delete'])){
checkCsrf();
$id = $db->quote($_GET'delete']);
$db->query("DELETE FROM categories WHERE id=$id");
Setflash('La catégorie a bien été supprimée');
header('Location:category.php');
die();
}
/**
* LISTE DES CATEGORIES
**/
$select = $db->query('SELECT id, name, slug FROM categories');
$categories = $select->fetchAll();
?>
J'ai volontairement pas mis le reste formulaire html et la boucle car elle fonctionne bien.
Merci pour votre aide
Edit à moi même :
if(!isset($_GET'crsf']) || $_GET'crsf'] != $_SESSION'csrf']){
remplacer : crsf par csrf
Setflash('La catégorie a bien été supprimée');
remplacer : Setflash par setFlash
mais toujours un problème de header : http://d.pr/i/DYr7
par contre quand je reviens sur la page admin/category.php la catégorie est bien supprimé et le flash s'affiche correctement ><
Voilà le contenu de mes 2 fichiers :
///////////////////////
/// includes.php
///////////////////////
<?php
include 'constants.php';
include 'db.php';
include 'form.php';
// Session_start();
include 'auth.php';
include 'session.php';
///////////////////////
/// admin_header.php
///////////////////////
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<title>Mon administration</title>
<!-- Bootstrap core CSS -->
<link href="<?php echo WEBROOT ?>css/bootstrap.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="<?php echo WEBROOT; ?>js/html5shiv.js"></script>
<script src="<?php echo WEBROOT; ?>js/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="<?php echo WEBROOT ?>admin/">Administration</a>
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="category.php">Catégories</a></li>
<li><a href="<?php echo WEBROOT ?>logout.php">Logout</a></li>
</ul>
</div>
</div>
</div>
<div class="container" style="margin-top:60px;">
<?php echo flash(); ?>
Effectivement, j'ai reproduit ton image http://i.imgur.com/HouUKnX.png et je n'ai plus le problème du header
Merci