Bouton ENVOYER rien ne se passe
Posté : 02 déc. 2020, 17:11
Bonjour !! toute nouvelle, j'aimerai resoudre un souci que je rencontre et ne trouve pas !! j'ai du toucher un truc qu'il ne fallait pas mais quoi ! Je suis DEBUTANTE++ (pour mieux vous exposer mon cas) Merci pour votre indulgence. J'ai dans mon controller un dossier Post ( je suis entrain de faire un blog PHP MVC orienté POO) qui lui a un fichier new.php. Ensuite j'ai decoupé ma vue. J'ai une page ou je cree mon POST ( coté admin) et une fois rempli submit et RIEN ne se passe
je vous mets mon code : <?php
use\App\Attachment\PostAttachment;
use App \Connection;
use App \Table\PostTable;
use App\HTML\Form;
use App\Validators\PostValidator;
use App\ObjectHelper;
use App\Model\Post;
use App\Auth;
Auth::check();
$post = new Post();
$pdo = Connection:: getPDO();
$post->setCreatedAt(date('Y-m-d H:i:s'));
// l'article creee date du jour
$chapo=[];
$errors = [];
if (!empty($_POST)) {
$postTable = new PostTable($pdo);
$data = array_merge($_POST, $_FILES);
$v = new PostValidator($data, $postTable, $post->getID(),);
ObjectHelper::hydrate($post, $data, ['name', 'content', 'slug', 'chapo', 'author', 'created_at', 'image']);
if ($v->validate()) {
PostAttachment::upload($post);
$postTable->createPost($post);
header('Location: ' . $router->url('admin_post',['id'=> $post->getID()]) . '?created=1');
exit();
} else {
$errors = $v->errors();
}
}
$form = new Form($post, $errors);
require_once ('../views/admin/post/new.php');
et ma view : <?php if (!empty($errors)): ?>
<div class="alert alert-danger">
L'article n'a pas pu être enregistré, merci de corriger vos erreurs
</div>
<?php endif ?>
<h2>NOUVEAU POST </h2>
<?php require('_form.php') ?>
Mon souci c'est que lorsque je rempli tout ,ya rien qui se passe !! j'ai verifié mon header !! je trouve pas ! Auriez vous une idee? merci
use\App\Attachment\PostAttachment;
use App \Connection;
use App \Table\PostTable;
use App\HTML\Form;
use App\Validators\PostValidator;
use App\ObjectHelper;
use App\Model\Post;
use App\Auth;
Auth::check();
$post = new Post();
$pdo = Connection:: getPDO();
$post->setCreatedAt(date('Y-m-d H:i:s'));
// l'article creee date du jour
$chapo=[];
$errors = [];
if (!empty($_POST)) {
$postTable = new PostTable($pdo);
$data = array_merge($_POST, $_FILES);
$v = new PostValidator($data, $postTable, $post->getID(),);
ObjectHelper::hydrate($post, $data, ['name', 'content', 'slug', 'chapo', 'author', 'created_at', 'image']);
if ($v->validate()) {
PostAttachment::upload($post);
$postTable->createPost($post);
header('Location: ' . $router->url('admin_post',['id'=> $post->getID()]) . '?created=1');
exit();
} else {
$errors = $v->errors();
}
}
$form = new Form($post, $errors);
require_once ('../views/admin/post/new.php');
et ma view : <?php if (!empty($errors)): ?>
<div class="alert alert-danger">
L'article n'a pas pu être enregistré, merci de corriger vos erreurs
</div>
<?php endif ?>
<h2>NOUVEAU POST </h2>
<?php require('_form.php') ?>
Mon souci c'est que lorsque je rempli tout ,ya rien qui se passe !! j'ai verifié mon header !! je trouve pas ! Auriez vous une idee? merci