rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Charger URL avec PHP

Marilyne, le jeudi 21 avril 2005 à 05:44:29
Bonjour,

Je veux empêcher l'utilisateur d'accéder directement à certaines pages de mon site... s'il n'est pas "loguer".

Alors, je fais le test suivant :

if(!isset($_SESSION['login'])) // Session pas ouverte
header("location:index.php"); // Rediriger vers page connexion

Cependant, j'ai certaine pages qui ne sont utilisées avec la fonction include()...

Je ne peux donc pas utiliser la fonction header puisqu'il y a déjà du code HTML d'inscrit dans le fichier qui appelle le include...

Existe-t-il une autre fonction php qui permet d'ouvrir un URL...

Que me suggérez-vous ? Enlever les include() ???

Merci de vos conseils,

Marilyne
Répondre à Marilyne  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kilian, le jeudi 21 avril 2005 à 08:20:35
Salut,

Tu as bien la redirection Javascript, mais il suffit de desactiver le javascript pour l'éviter....

Sinon tu as aussi le meta refresh en html...(mais là encore, je me demande si ça marche en dehors du <head>....)

En solution de secours, tu peux toujours terminer la page avec die() et faire une redirection javascript tout en inscrivant un lien vers la page que tu veux rediriger. Comme ça même si la personne a desactivé le Javascript, elle pourra cliquer sur le lien....
Répondre à kilian

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kij_82, le jeudi 21 avril 2005 à 08:54:43
Moi je pense que c'est une question d'organisation du site, je parle point de vus arborescance de ton répertoire de travail. De toute façon, même avec des include tu peux toujours rediriger l'utilisateur : il te suffit de programmer d'une certaine facon : Par exemple, si tu veux afficher qqchose en fonction d'une action d'un utilisateur, ta page ressemblera à cela :
// Ici ;
if(! isset($_SESSION['valid_user']))
   header("location: bidule.php");

if(action == truc )
{
    include "monFormulaire1.php";
}
else
{
   include "présentationDeLaPage.php";
}

Mais tu peux laiser ton test au début de fichier, de cette facon, tu paeux afficher plusieur chose sans changer de fichier et que ton test soit effectif.

++ ~ iclic @ gauch,iclic,  iclic @ droate, iclic, iclic
             et ya pas de bôg môsieu !    ~
Répondre à kij_82

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kij_82, le jeudi 21 avril 2005 à 09:00:58
De même, si tu veux faire des traitements et des formulaires :

code de "page.php" :
if(! isset($_SESSION['valid_user']))
   header("location: bidule.php");

if( $_POST['val'] == 1 )
{
   include "traitement.php";
}
else if( $_POST['val'] == 2)
{
   echo "Vous avez répondu coorectement au formulaire !";
}
else
{
   include "formulaire.php";
}

Et dans ton formualaire la redirection sera la suivante :
<FORM action=page.php?val=1" ....
</ccode>
Dans le fichier traitement.php :
if( tout les traitement sur le formulaire sont bon)
   header("location: page.php?val=2");



Voilà, ca répond ou probleme ?

++ ~ iclic @ gauch,iclic,  iclic @ droate, iclic, iclic
             et ya pas de bôg môsieu !    ~
Répondre à kij_82

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
gaerebut, le vendredi 7 mars 2008 à 17:09:06
C'est simple, en effet la balise meta refresh marche bien en dehors de <head></head> ;)
donc sa donne sa :

f(!isset($_SESSION['login']))
echo"<META http-equiv=\"refresh\" content=\"0; URL=index.php\">";

Voila ^^

Heu je crois que ça marche pas avec des simple quote pour le echo ! A tester mais je promet rien !
Répondre à gaerebut

5


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
 gaerebut, le vendredi 7 mars 2008 à 17:10:24
C'est simple, en effet la balise meta refresh marche bien en dehors de <head></head> ;)
donc sa donne sa :

f(!isset($_SESSION['login']))
echo"<META http-equiv=\"refresh\" content=\"0; URL=index.php\">";

Voila ^^

Heu je crois que ça marche pas avec des simple quote pour le echo ! A tester mais je promet rien !

Salut ;)
Répondre à gaerebut
[PHP-Access]prise en charge d'une BD. (Résolu)Bonjour, j'ai une base de donnée de type Access que j'aimerais prendre en charge avec php. Savez- vous ce que je dois faire ? J'utilise easyPhp sous windows XP. Merci tom@ www.commentcamarche.net/forum/affich-2015863-php-access-prise-en-charge-d-une-bd
Passage de variable par URL PHP 4.3.10 (Résolu)Bonjour les amis. Je voudrais faire de passages de variables par URL en php(). Tt se passait bien jusqu'a ce que je me decide à utiliser Easyphp 1.8(Apache 1.3.33, Mysql 4.1.9, PHP4.3.10). page.php ne reçoit pas la variable... www.commentcamarche.net/forum/affich-1403381-passage-de-variable-par-url-php-4-3-10
[PHP] Transformer une URL en lien hypertexte cliquableGrâce aux expressions régulières, il est possible de transformer en lien hypertexte toute URL de la forme http://URL (ou ftp://URL) ou bien commençant par www. : www.commentcamarche.net/faq/sujet-891-php-transformer-une-url-en-lien-hypertexte-cliquable
[PHP] Upload de fichiersLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La... www.commentcamarche.net/faq/sujet-889-php-upload-de-fichiers
[Windows] Erreur de chargement RunDLL (rundll32.exe)Le processus [t/processus/rundll32-exe.php3 rundll32.exe] (rundll32 signifiant Run a DLL as a 32-bit application) est un processus générique de Windows NT/2000/XP servant à charger les librairies dynamiques (DLLs) en mémoire afin de les rendre... www.commentcamarche.net/faq/sujet-2577-windows-erreur-de-chargement-rundll-rundll32-exe
Passage de paramètre par URL [php] (Résolu)re-Bonjour, Cette fois ci je bloque sur le passage de variable par URL. Voici ma structure, j'ai un tableau (une liste) qui se charge d'url $query = "SELECT DISTINCT type,marque FROM vehicule WHERE type='voiture' ORDER BY nom"; ..... www.commentcamarche.net/forum/affich-7736367-passage-de-parametre-par-url-php
Syntaxe url php + Mysql (Résolu)Salut ! Pouvez-vous m'aider à résoudre un petit soucis que j'ai, s'il vous plaît ? voila : Je récupère une url dans une base de données et j'essaie de l'afficher avec ce code : $query = "SELECT urlimage FROM produits WHERE... www.commentcamarche.net/forum/affich-6598099-syntaxe-url-php-mysql
Comment récupérer l'url d'une page php ? (Résolu)Bonjour, je cherche comment récupérer l'url de la page web, dans laquelle une personne se trouve. Quelle fonction existe-t-il en php ? Merci d'avance pour votre aide. www.commentcamarche.net/forum/affich-1557182-comment-recuperer-l-url-d-une-page-php
Internet - Uniform Resource Locator Une URL (Uniform Resource Locator) est un format de nommage universel pour désigner une ressource sur Internet. Il s'agit d'une chaîne de caractères ASCII imprimables qui se décompose en cinq parties : Le nom du protocole : c'est-à-dire en quelque... www.commentcamarche.net/internet/url.php3
Attaques - Cross-Site Scripting Les attaques de type Cross-Site Scripting (notée parfois XSS ou CSS) sont des attaques visant les sites web affichant dynamiquement du contenu utilisateur sans effectuer de contrôle et d'encodage des informations saisies par les utilisateurs. Les... www.commentcamarche.net/attaques/cross-site-scripting.php3
Toutes les réponses pour « Charger URL avec PHP »