Problème Include.

Résolu
cs_Aaron Messages postés 116 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 19 janvier 2009 - 26 août 2005 à 02:25
JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 - 27 août 2005 à 01:13
B
onsoir,



J
'écris ce message parce que j'ai un soucis au
niveau des includes dans une mes pages. En effet, j'ai créé un
espace-membres avec une page d'authentification
(http://simslayer.free.fr/iden.inc.php) que j'inclue par le biais de la
fonction Include() dans ma page index (http://simslayer.free.fr), et là
le formulaire d'authentification ne marche plus! (Login : "lollollo",
pass : "lollollo"). De même que pour une page inclue dans l'index après
s'être identifié (sur http://simslayer.free.fr/iden.inc.php étant donné
que le formulaire sur l'index ne fonctionne pas) qui contient des
variables de sessions... Après l'identification, il y'a deux lignes qui
contiennent des variables de sessions mais qui sont appellée
directement par l'index, et deux autres (les mêmes) qui sont contenues
dans un fichier inclue par le biais de la fonction Include.



Le code PHP dans l'entête de l'index est le suivant :



<?PHP

session_start();

Require 'core/cfg.inc.php';

?>



Le code PHP dans le corps de l'index est le suivant :



<?PHP

if (!isset($_SESSION['login'])) {

include($site.'/iden.inc.php'); // <--- Le formulaire fonctionne sur http: //simslayer.free.fr/iden.inc.php mais pas sur cette page !

}

else {

echo 'Bienvenue '.$_SESSION['login'].' !
', // <--- La variable de sessions fonctionne !

'Vous avez '.$_SESSION['base_coins'].' jetons !'; // <--- La variable de sessions fonctionne !

include($site.'/account.inc.php'); // <--- Les variables de sessions de ce fichier ne fonctionnent plus !

}

?>



S
i quelqu'un avait la gentillesse et la patience de m'aider, je lui en serait très reconnaissant.



Merci par avance,



Arsenine.

6 réponses

JoJo738 Messages postés 1267 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 29 juin 2010 2
27 août 2005 à 01:13
Lu,

$Form .= '<' . '?php if (isset($_GET[\'err\'])) {'; // <-- J'obtiens une erreur*.
Et voila ^^
<hr>Si ma reponse te convient, merci de l'accepter !
3
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
26 août 2005 à 09:26
Faudrais que tu post egalement le code de tes fichier que tu inclue et qui ne marche pas, et que tu expliques en quoi elles ne marchent pas tes pages ? erreur, pas de variable...


<HR>
Loi du plagiat industriel de Felson : <CITE>Voler les idées d'une personne, c'est du plagiat. En voler à plusieurs, c'est de la recherche.</CITE>
0
cs_Aaron Messages postés 116 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 19 janvier 2009
26 août 2005 à 11:33
B
onjour, et merci pour ta contribution,



L
e fichier "cfg.inc.php" contient les variables
globales que j'utilise pour tout le site (identifiants de connection à
la database par exemple), les variables de sessions sont contenues dans
le fichier "login.php" (Qui est la cible du formulaire de la page
"iden.inc.php").



"a
ccount.inc.php" est appellé lorsque le membre
est loggué. (On peut tester uniquement par
http://simslayer.free.fr/iden.inc.php étant donné que le même
formulaire inclu sur l'index ne fonctionne pas.)



Le code source de index.php est dans mon message précédent.




Le code source de login.php :

<?

require('cfg.inc.php');



$db = mysql_connect($sql_path, $sql_login, $sql_pwd);

mysql_select_db($sql_dbname,$db);



if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {

extract($_POST);

// on recupère le password de la table qui correspond au login du visiteur

$sql = "SELECT * FROM clients_tbl WHERE clogin='".$login."'";

$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());



$data = mysql_fetch_assoc($req);



if($data['cpwd'] != $pass) {

include($site.'/iden.inc.php?err=1'); // On inclus le formulaire d'identification

exit;

}

else {

session_start();

$_SESSION['login'] = $login;

$_SESSION['base_coins'] = $data['base_coins'];

echo 'Vous êtes bien loggué.';

}

}

else {

include($site.'/iden.inc.php?err=2'); // On inclut le formulaire d'identification

exit;

}

?>

Le code source de account.php :

<?PHP

session_start();

Require 'core/cfg.inc.php';

?>

<HTML>



<HEAD>

</HEAD>





Bienvenue
<?php

echo $_SESSION['login']; ?>

! (Déconnection)
Vous avez
<?php

echo $_SESSION['base_coins']; ?>

&nbsp;jetons !





</HTML>



Le code source de iden.inc.php (nettoyé par rapport à la version de mon site) :



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<HTML>

<?PHP Require 'core/cfg.inc.php'; ?>

<HEAD>

<TITLE>Identification</TITLE>

</HEAD>





<!--Formulaire d'identification-->

<FORM ACTION ="<?php echo $site.'/core/login.php'?>" METHOD="POST" NAME="Identification">

<?PHP


If
(isset($_GET['err'])) {



Switch($err)



{



Case '1':



Echo
'Identifiants incorrects.';



Break;



Case '2':



Echo
'Veuillez remplir TOUS les champs.';



Break;



Case '3':



Echo
'Votre mot de passe vous a été envoyé par mail.';




Break;



}



}

?>





Login


Password




</FORM>





</HTML>





V
oilà, je pense que tout y est...



Arsenine.
0
morpheus262 Messages postés 461 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 16 février 2012
26 août 2005 à 13:31
Je comprends pas trop pourquoi tu dis que ton formulaire ne marche pas ? tu as quoi comme erreur ? ca ne lance pas la page login ?


<HR>
Loi du plagiat industriel de Felson : <CITE>Voler les idées d'une personne, c'est du plagiat. En voler à plusieurs, c'est de la recherche.</CITE>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Aaron Messages postés 116 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 19 janvier 2009
26 août 2005 à 20:26
O
ui je pense que c'est le problème. Le formulaire
ne marche pas sur la page index, mais il marche sur la page
iden.inc.php. Donc dès que je fait appel à cette page (qui marche à la
base) par la fonctionne include, elle ne marche plus.
0
cs_Aaron Messages postés 116 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 19 janvier 2009
27 août 2005 à 00:28
S
ans passer par un include j'ai essayé :



<?PHP

if(!IsSet($_SESSION['login'])) {

$Form = "<FORM
ACTION="<?php echo $site.\'/core/login.php\'\?\>"
METHOD="POST" NAME="Identification">";

$Form .= "<?PHP if (isset($_GET[\'err\'])) {"; // <-- J'obtiens une erreur*...

$Form .= "Switch($err){ Case \'1\': Echo \'Identifiants incorrects.\'; Break;";

$Form .= "Case \'2\': Echo \'Veuillez remplir TOUS les champs.\'; Break;";

$Form .= "Case \'3\': Echo
\'Votre mot de passe vous a été envoyé par mail.\'; Break; }}?\>

";

$Form .= "Login
";

$Form .= "Code ";

$Form .= "</FORM>";

Echo $Form;

}

Else {

Echo 'Bienvenue '.$_SESSION['login'].' !
',

'Vous avez '.$_SESSION['base_coins'].' jetons !';

?>



* Parse error: parse error, unexpected T_BAD_CHARACTER, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /var/www/free.fr/a/5/simslayer/index.php on line 28
0
Rejoignez-nous