Artiphp - CMS open source et gratuit
Vous êtes ici » Accueil/Forum
Saisissez votre recherche
RechercherRechercher   Liste des MembresListe des Membres   S'enregistrerS'enregistrer    ProfilProfil 
Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 


Authentification Arti

 
Poster un nouveau sujet   Répondre au sujet    Artiloo.com Index du Forum -> Les scripts des membres
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
bert20



Inscrit le: 22 Juin 2007
Messages: 64

MessagePosté le: Jeu 07 Juin 2012 7:55    Sujet du message: Authentification Arti Répondre en citant

Bonjour,
j'ai regarde les sujets
page Perso http://www.artiloo.com/phpBB2/viewtopic.php?t=10257 et Intégration de pages html (Hérédis) http://www.artiloo.com/phpBB2/viewtopic.php?t=10203
mais je tourne en rond.
En fait je voudrai savoir si il est possible de se servir de authentification de Arti pour une simple page html/javascript, sans intégration dans le design de arti, que cette page soit accessible juste au membres?
Merci
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
fred35



Inscrit le: 23 Avr 2009
Messages: 637

MessagePosté le: Jeu 07 Juin 2012 10:16    Sujet du message: Répondre en citant

Bonjour Bert20,

tu crées un dossier à la base d'artiphp par exemple "test" (h*p://www.monsite.com/test/) et tu mets le fichier index.php suivant :

Code:
<?php
/**
*
* @Artiphp 5
*
*/

// Protection - Page
define('IN_ARTI', true);

// Chargement configuration
require('../artpublic/config.inc.php'); // ATTENTION : chemin relatif depuis racine Artiphp

// Debug de la page
//error_reporting(E_ALL ^ E_NOTICE);

// Connexion au noyau
include(ARTI_SYS_INT_FCT_PATH . 'identification.inc.php'); // zone membre
include(ARTI_SYS_INT_FCT_PATH . 'imprime.inc.php');

// Ouverture de cette page aux groupes autorisés (laisser au minimum le groupe 1 des admins dans le tableau PHP)
// ---------------------------------------------
if (empty($_SESSION['SESSION_ARTIGROUP']) || !in_array($_SESSION['SESSION_ARTIGROUP'], array('1', '2'))) {
    header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
    exit();
}

// Définition module
// -----------------
$mod_present = 'test';

// Langue
// ------
if ($_SESSION['SESSION_IDSKIN']) {
} else {
    include(ARTI_SYS_INT_FCT_PATH . 'donnees_skin.inc.php');
}
$SESSION_LANGSKIN = $_SESSION['SESSION_LANGSKIN'];
include(ARTI_SYS_INT_PATH . "langues/$SESSION_LANGSKIN/index.inc.php");

// Metatags
// --------
$metatitle = "test";
$metaDescription = $LG_METADESC;

// En-tête
// -------
$entete = "<a href=\"" . ARTI_WEB_PATH . "index.php\">$LG_ACCUEIL</a>/test\n";

if (!empty($_GET['f'])) {
    $f = str_replace('\\', '/', substr(ARTI_SYS_PATH, 0, -strlen(ARTI_WEB_PATH)) . htmlspecialchars($_GET['f']));
    $d = str_replace('\\', '/', dirname(__FILE__));
    $lien_ok = 0;

    if (strpos($f, $d) === false || strpos($f, '..') !== false || !in_array(pathinfo($f, PATHINFO_EXTENSION), array('htm', 'html'))) {
        header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
        exit();
    }

    // fopen()
    $file = @fopen($f, 'rb');
    if ($file) {
        $lien_ok = 1;
        $raw = '';
        while (!feof($file)) {
            $raw .= fread($file, 8192);
        }
        fclose($file);
    }

    if ($lien_ok == 0) {
        header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
        exit();
    }
}

// Présentation
// ------------
$milieu  = "<div id=\"mod_test\" class=\"mod_content\">\n";
$milieu .= $raw;
$milieu .= "</div>\n";

// Template
// --------
$SESSION_SKIN = $_SESSION['SESSION_SKIN'];
include(ARTI_SYS_INT_PATH . "templates/temp$SESSION_SKIN/temp.html");
echo $arti;
mysql_close($link);
?>


et le .htacess (toujours dans le dossier (test)
Code:
# Interdire le listing des répertoires et sous-répertoires
Options -Indexes

<Files .htaccess>
order allow,deny
deny from all
</Files>

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on

# Un ou plusieurs RewriteCond (ne s'applique qu'au RewriteRule suivant)
RewriteCond %{REQUEST_URI} ^(.*/[^/]*\.htm) [OR]
RewriteCond %{THE_REQUEST} ^GET\ (.*/[^/]*\.htm)\ HTTP/

# Modifier le chemin depuis la racine Web si nécessaire
RewriteRule ^[^.]*\.htm$ /test/index.php?f=%1 [L]

</IfModule>


Avec ce system tu conserve le thème d'artiphp, tu as juste un lien à mettre dans ce thème vers ce que tu veux.

Dans le code que je viens de te donner c'est juste un système de gestion des droits d'accès.

Donc en somme tu défini le groupe autorisé dans index.php
dans ton dossier test tu te crées un dossier "pagehtml" par exemple et tu met ta page html à l'intérieur.

Depuis l'admin d'artiphp tu crées un menu en dur "h*p://www.monsite.com/test/mapagehtml/index.html" et le tour est joué.

Il ne te reste plus qu'à adapter comme tu le souhaite, si tu ne souhaite pas conserver le thème tu modifie ton index.php en conséquence ^^

J'espère que c'est assez clair, je viens de me réveillé, je suis même pas caféiné lol
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
bert20



Inscrit le: 22 Juin 2007
Messages: 64

MessagePosté le: Jeu 07 Juin 2012 15:37    Sujet du message: Répondre en citant

Merci pour la rapidité de la réponse mais ça ne marche pas?
Le dossier test est bien protégé mais pas le dossier test/GPX qui contient ma page perso qui est avec une extension php en fait ???
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
fred35



Inscrit le: 23 Avr 2009
Messages: 637

MessagePosté le: Jeu 07 Juin 2012 21:31    Sujet du message: Répondre en citant

ah, j'avais compris qu'il s'agissait d'une page html

essai en remplaçant ceci dans index.php
Code:
if (strpos($f, $d) === false || strpos($f, '..') !== false || !in_array(pathinfo($f, PATHINFO_EXTENSION), array('htm', 'html'))) {
        header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
        exit();
    }

par
Code:
if (strpos($f, $d) === false || strpos($f, '..') !== false || !in_array(pathinfo($f, PATHINFO_EXTENSION), array('php'))) {
        header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
        exit();
    }
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
bert20



Inscrit le: 22 Juin 2007
Messages: 64

MessagePosté le: Jeu 07 Juin 2012 21:58    Sujet du message: Répondre en citant

Non c'est pareil de toutes façons il y avait les 3 extensions dans le tableau
Code:
if (strpos($f, $d) === false || strpos($f, '..') !== false || !in_array(pathinfo($f, PATHINFO_EXTENSION), array('htm', 'html','php'))) {
        header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
        exit();
    }

Le fichier .htaccess fait bien une partie de son office car je ne peux lister le répertoire test ni le sous répertoire test/GPX, mais quand j'appelle directement test/GPX/index.php que je sois connecter a arti ou pas la page s'affiche
L'adresse du site est http://tracesdepistes.netne.net/ et la page est itinéraire GPX dans le menu gauche ou le menu supérieur...???
Merci de ton aide...
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
fred35



Inscrit le: 23 Avr 2009
Messages: 637

MessagePosté le: Jeu 07 Juin 2012 23:47    Sujet du message: Répondre en citant

j'essaierai de jeter un oeil dès que j'ai un peu de temps, ce ne doit pas être sorcier...
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
bert20



Inscrit le: 22 Juin 2007
Messages: 64

MessagePosté le: Dim 10 Juin 2012 11:29    Sujet du message: Répondre en citant

Le problème ne pourrai t il pas venir du fichier htaccess???
Je comprend aucune instruction dans ce fichier donc je suis incapable de corriger quoi que ce soit DSL
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
bert20



Inscrit le: 22 Juin 2007
Messages: 64

MessagePosté le: Dim 09 Juin 2013 16:17    Sujet du message: Répondre en citant

J'ai tjrs pas résolu le problème si quelqu'un a une idée?
Merci
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Artiloo.com Index du Forum -> Les scripts des membres Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com