Bonjour à tous,
je me permet de vous contacter que je souhaiterais faire un site en php5.6, et recycler quelques bouts de code.
Mais à peine commencer que ça coince déja.
j'utilisais à tour de bras le tableau $_server, mais pour une simple commande de ce genre,
include ($_SERVER['DOCUMENT_ROOT'].'/site/membre.php');
le site exprime un certain mécontement
Illegal use of $_SERVER. You must use the request class or request_var() to access input data. Found in /homepages/32/d412740872/htdocs/FFS2V5/index2.php on line 48. This error message was generated by deactivated_super_global.
BACKTRACE
comment puis je me sortir de ce mauvais pas?
Merci d'avance pour votre aide.
Flo
je ne sais pas trop comment dire, mais je vais essayer de ne pas dire trop de bétise.
Donc le frameWork phpbb est le fameux forum le plus répondu. Il est de la derniére génération et justement est prévue pour fonctionner sur cette version de php et fonctionne trés bien au passage.
Ce script permet de récupérer les sessions du forum donc toute les gestion d'accés a un site via les identifiant du forum.
je viens de faire un vardump de $_Server et il semblerai que ce soit le forum qui interdit la superglobal
Donc avant de charger un élément du forum,j'ai stocké $_SERVER dans un autre variable et je peux y accéder comme je veux.
Bonjour et bonne année, as-tu essayé ainsi ?
$fic = $_SERVER['DOCUMENT_ROOT'].'/site/membre.php';
include ($fic);
Bonjour.
Essais tout simplement comme ça :
include ($_SERVER["DOCUMENT_ROOT"] . '/site/membre.php');
Par contre, il est beaucoup plus conseillé, de créer des constantes et de les utiliser.
Tu te crée un fichier de constantes des variables que tu seras mené à utiliser à plusieurs reprises et tu inclus ce fichier avant tout autre fichier à inclure, si par exemple tu as un fichier qui te sert de base pour les inclusions, tu l'y ajoute en include avant tous les autres includes.
Alors je vais develloper un peu, voici le script qui tourner trés bien en php 5.2
<?php
define('PROTECTIONINCLUDE', TRUE);
define('IN_PHPBB', true);
$phpbb_root_path = './forum/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
$user->setup('');
$user->setup('viewforum');
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
if (isset($_GET['logout']))
{
$user->session_kill();
$user->session_begin();
?><meta http-equiv="refresh" content="0; URL=http://fsfrancesimulateur2.fr/"><?php
}
if (isset($_POST['login']))
{
$username = request_var('username', '', true);
$password = request_var('password', '', true);
$autologin = (!empty($_POST['autologin'])) ? true : false;
$viewonline = (!empty($_POST['viewonline'])) ? 0 : 1;
$admin = 0;
$result = $auth->login($username, $password, $autologin, $viewonline, $admin);
if ($result['status'] != LOGIN_SUCCESS)
{
$err = $user->lang[$result['error_msg']];
if ($result['error_msg'] == 'LOGIN_ERROR_USERNAME' || $result['error_msg'] == 'LOGIN_ERROR_PASSWORD')
{
$err = (!$config['board_contact']) ? sprintf($user->lang[$result['error_msg']], '', '') : sprintf($user->lang[$result['error_msg']], '<a href="mailto:' . htmlspecialchars($config['board_contact']) . '">', '</a>');
}
}
else
{
$auth->acl($user->data);
}
}
if ($user->data['user_id'] != ANONYMOUS)
{
include ($_SERVER["DOCUMENT_ROOT"].'/site/membre.php');
}
else
{
if($err)
{
echo "<font color=red><b>$err</b></font>";
}
include ($_SERVER["DOCUMENT_ROOT"].'/site/public.php');
}
?>
mais la partie en dessous est refusé
include ($_SERVER["DOCUMENT_ROOT"].'/site/membre.php');
voici le message d'erreur
Illegal use of $_SERVER. You must use the request class or request_var() to access input data. Found in /homepages/32/d412740872/htdocs/FFS2V5/index2.php on line 47. This error message was generated by deactivated_super_global.
À priori déja, cela concerne le Framework PHPBB, peut-être que tu n'as pas une version qui supporte cette version de PHP.
This error message was generated by deactivated_super_global.
Je pense que cette partie de message est explicite, les variables super globales sont désactivées.