2010-04-29 6 views
1

J'ai créé un dossier dans le répertoire joomla. Dans ce dossier j'ai un fichier.joomla: authentification

Je veux authentifier ces fichiers à partir d'un accès direct en utilisant l'URL par nom?

Comment cela peut-il être réalisé?

+0

Vous pouvez utiliser .htaccess pour elle: regard sur cette : http://stackoverflow.com/questions/11728976/how-to-deny-access-to-a-file-in-htaccess – user3097489

Répondre

2

Je ne suis pas sûr que ce soit la meilleure façon, mais vous pouvez créer un script PHP (appelons-le joomla-auth.php) contenant ceci:

<?php 

define('_JEXEC', 1); 
define('JPATH_BASE', dirname(__FILE__)); 
define('DS', DIRECTORY_SEPARATOR); 
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php'); 
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php'); 

$mainframe =& JFactory::getApplication('site'); 

if (JFactory::getUser()->id == 0) 
    die("Access denied: login required."); 

?> 

Puis, au sommet de scripts PHP qui ont besoin Joomla l'authentification, faites:

<?php 
include 'joomla-auth.php'; 
?> 

Si vous avez un script PHP, et vous avez besoin pour obtenir des informations sur l'utilisateur authentifié, utilisez JFactory::getUser(). Si vous avez un fichier .html, vous pouvez remplacer l'extension par .php et ajouter les 3 lignes ci-dessus.

Les chances sont, la création d'un composant ou d'un module est la «bonne façon» de faire ce que vous essayez de faire. Cependant, je ne peux pas vous conseiller à ce sujet parce que c'est une leçon que j'ai encore besoin d'apprendre moi-même. Vous devriez également regarder dans Jumi, qui vous permet d'intégrer PHP, HTML, JavaScript, fichiers, etc. directement dans des articles en utilisant une syntaxe comme ceci:

{jumi myfile.html}{/jumi} 
+0

bon ça marche bien – tom