Redirection d'une page PHP vers une autre page mvc

WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, je suis actuellement en stage et je rencontre un problème face a ma 1ere architecture MVC que j'ai crée.
Dans divers forum il est conseiller d'utiliser le header() qui permettrait de faire une redirection de page. Pour autant, dans le modèle mvc cette astuce ne marche pas ou du moins je l'ai peut être mal appliquer. Je vous donne mon exemple.
( Travail en local sur EasyPhp )
(La vue) test/vue/Demarrer.php

<?php

?>
<h3>Bienvenu sur ...</h3>
<p>bla bla bla<br/>
Est tu pret?</p>

<h3>
<a href="C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\test\Controleur\Demarrer.php">Demarrer</a>
</h3>



(le Controleur) test/Controleur/Demarrer.php
<?php
header("Location: C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\test\Vue\DureeEtude.php");
exit;

?>

L'idée derrière est lorsque l'utilisateur clique sur Demarrer dans la vue, le contrôleur lance une fonction dans le modèle pour le rajouter dans la base de donnée (je sais faire) et le revoie dans une autre page pour la suite de son activité.

Merci de votre aide d'avance ! :)
A voir également:

3 réponses

Danelectro Messages postés 1737 Date d'inscription   Statut Membre Dernière intervention   371
 
Salut,
Qu'est-ce qui ne "marche pas" ? Tu as un message d'erreur ?
1
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Salut Danelectro,
Au contraire aucun message d'erreur. Ce qui ne marche pas c'est l'utilisation du header() dans le controleur pour la redirection. L'ai-je mal utiliser ou bien estce autre chose a faire? :) merci de ton aide ^^
0
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
PS : pour être plus précis, après avoir cliquer sur Demarrer, c'est comme si l'on effectuait aucune action. Comme si il n'y avait pas de lien , j'ai essayer une redirection vers page web , c'a marche pour autant ^^
0
Danelectro Messages postés 1737 Date d'inscription   Statut Membre Dernière intervention   371
 
Demarrer.php contient uniquement le code que tu as posté ?
Sinon fait un tour dans tes logs PHP pour voir s'il t'engueulent.
Et essaie avec des liens relatifs aussi.
0
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Oui avec vos conseils je vais jeter un tour pour les liens relatifs.
"Demarrer.php contient uniquement le code que tu as posté ? "
Oui il n'y pas autre chose avant. Je sais qu'il faut pas mettre autre chose avant le header.
Pour ceux qui liront peut-être ce post plus tard , le fichier de log se trouve en effectuant un clic droit sur l'icone de easyphp > fichier log
J'ai parcourut le fichier log des erreur d'apache mais je n'ai aucun retour dessus pour ce jour-ci.
0
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
(La vue) test/vue/Demarrer.php
<?php

?>
<h3>Bienvenu sur ...</h3>
<p>bla bla bla<br/>
Est tu pret?</p>
<h3>
<a href="test\Controleur\Demarrer.php">Demarrer</a>
</h3>
(le Controleur) test/Controleur/Demarrer.php
<?php
header("Location:Vue\DureeEtude.php'");
exit;

?>

Avec cela c'a ma resorti une erreur 404 ^^
0
CptRomaiin Messages postés 315 Date d'inscription   Statut Membre Dernière intervention   58
 
Salut,

Ton header n'est pas bon, il manque Location :

header("Location: C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\test\Vue\DureeEtude.php");

Par contre tu devrais utiliser des chemins relatifs parce que quand tu vas mettre en ligne ton site sur une autre machine tes liens ne fonctionneront plus.
1
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Salut CptRomaiin
En effet, j'avais oublier de remettre Location. Cependant, il n'y a aucune action. :/ Mais merci j'avais oublier de le remettre ^^ .
0
WolfoMir Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Le problème vient de la vue, vu que je suis sous easyPhp bah en mettant le lien vers le fichier c'a ne marche pas par les répertoire. Donc j'ai bricoler un truc au niveau de la vue de départ.
<h3>
	<a href="http://127.0.0.1/test/Controleur/Demarrer.php">Demarrer</a>
</h3>
0