Espace membre problème

Répondre
The Bart
le 26/10/2009 à 18:26
The Bart
Hello,
Tout d'abord grand merci pour ce tuto mais j'ai un problème c'est que quand je m'inscris je peut allez dans l'espace membre et quand je me deconnecte et je rentre mes identifiant sa m'affiche une page d'erreur sur membre.php

Regarder :
http://hbestof.free.fr

Pouvez vous m'aider ??
LA GLOBULE
le 26/10/2009 à 18:44
LA GLOBULE
A priori, tu as un truc qui tourne en boucle, et c'est le navigateur qui arrete les redirections.

Sans regarder ton code on ne pourra pas t'aider.
The Bart
le 26/10/2009 à 19:04
The Bart
message1.php
<?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {

$base = mysql_connect ('.....', '...', '*******');
mysql_select_db ('...', $base);

// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

mysql_free_result($req);
mysql_close();

// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<title>Accueil</title>
</head>

<body>
Connexion à l'espace membre :<br />
<form action="membre.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="inscription.php">Vous inscrire</a>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html>


index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>


<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="robots" content="index, follow" />
<meta name="keywords" content="h, serie, jamel, streaming, debbouze, tv, stream, episode, saison, video, gratuit, humour" />
<meta name="description" content="Serie H - Tous les épisodes des Simpsons en streaming" />
<title>H - Tout les episodes de H en streaming</title>


<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<link href="css1.css" rel="stylesheet" type="text/css" />
<link href="css2.css" rel="stylesheet" type="text/css" />
<link href="css3.css" rel="stylesheet" type="text/css" />
<link href="css4.css" rel="stylesheet" type="text/css" />
<link href="facivon.ico" />

<style type="text/css">
td.left, td.right { width: 180px; }
div.wrapper { margin: 0 auto; width: 868px;}
</style>

</head>
<body id="page_bg" class="f-default">
<div id="template" class="wrapper">
<div id="header">
<div class="rk-1">
<div class="rk-2">
<a href="index.php" class="nounder"><img src="/images/site/logo.png" style="border:0;" alt="" id="logo" /></a>
<div id="top">
<div class="padding">
</div>
</div>
</div>
</div>
</div>

<div id="horiz-menu" class="suckerfish">
<ul><li class='active'><a href="index.php">Accueil</a></li>
<li><a href="saison1.php">Saison 1</a></li>
<li><a href="saison2.php">Saison 2</a></li>
<li><a href="saison3.php">Saison 3</a></li>
<li><a href="saison4.php">Saison 4</a></li>
<li><a href="livre_or.php">Livre d'or</a></li>
<li><a href="contact.php">Contact</a></li>
<li><a href="merci.php">NOUS AIDEZ</a></li>
</ul>
</div>



<div class="clr" id="mainbody">
<table class="mainbody" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="left">
<div class="padding">
<div id="vert-menu">
</div>
<div class="moduletable">

<div class="moduletable">
<h3>
<?php
include('titre1.php');
?>
</h3>


</div>
<div class="moduletable">
<?php
include('message1.php');
?>
</div>
</div>
</td>

<td class="divider"></td>
<td class="mainbody">
<table class="sections" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="section w99">
<div class="moduletable">
</div>
</td>
</tr>
</table>

<div class="padding">
<table class="blog" cellpadding="0" cellspacing="0">
<tr>
<td valign="top">
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td valign="top" width="100%" class="article_column">
<table class="contentpaneopen">
<tr>
<td class="contentheading" width="100%">

Bienvenue sur hbestof.free.fr

</table>
<table class="contentpaneopen">
<td valign="top" colspan="2">
<html>
<head>
<title>Accueil</title>
</head>
</body>
</html>
Hbestof est un site de streaming sur la série H<br />
Comme tous les autres site le streaming est gratuit est les vidéo ne snt pas héberger sur notre serveur il sont héberger sur des sites de vidéo diverse comme dailymotion, youtube, wat, ... et bien d'autres<br />
Hbestof est le premier site de streaming de la série H<br >
<br />
<h3>Ce site est il légal ?</h3>
Oui ce site est légal car nous avont <font color="red"><b>aucune</b></font> vidéo héberger sur notre serveur<br />
<br />
<h2>Les 5 dernieres news :</h2>
<br />
<h3><u>Saison 1 terminer</u></h3>
Hello, je vous annonces que la saison 1 de h est terminer nous attaquont la saison 2.<br />
Amuser vous bien :)<br />
<i>Le 28 août 2009 à 01h00<i> <b>par Cena25</b>

</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>



<div id="hdiv"></div>


<div class="clr" id="section2">
<table class="sections" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="section w99">
<div class="moduletable">
<center>
<?php
include('partenaire.php');
?>
</center>
</div>
</td>
</tr>
</table>
</div>


<div class="clr" id="section3">
<table class="sections" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="section w99">
<div class="moduletable">
<center>
<?php
include('connectes.php');
?>
</center>
</div>
</td>
</tr>
</table>
</div>


<div id="footer" class="clr">
<div class="rk-1">
<div class="rk-2">
<div id="the-footer">
</div>
</div>
</div>
</div>
</div>
</body>
</html>
LA GLOBULE
le 27/10/2009 à 21:59
LA GLOBULE
Humm, en lisant ton code, je viens de voir qu'il y'a une erreur dans ce comment faire.

Au niveau SQL, il faut appliquer la fonction md5 avant d'appliquer la fonction mysql_escape_string.

Sinon, dans ton code, il y'a un truc qui va provoquer une erreur : tu includes message1.php dans index.php.
Or message1.php fait un header et ton index.php contient du html avant d'include message1.php.
Comme il ne faut rien afficher avant de faire un header sous peine de se manger des erreurs (d'ailleurs, c'est bizarre que tu ne te manges pas d'erreur au moment de la rediction sur membre.php : est ce que ton hebergement affiche les erreurs PHP ? Tu peux le vérifier en faisant une erreur volontaire), il va te falloir modifier la structure de tes fichiers afin de ne pas afficher le moindre caractère de texte avant de faire l'header (l'idéal serait de virer ces include).

Sinon, en ne voyant pas membre.php (c'est lui le fautif a priori), difficile de se prononcer.

De toutes facons, il n'y a pas de méthode miracle. Vas y par étape pour débuguer : vire les redirections, fais des echo, affiche ce que tu as en session, et re active les fonctionnalités au fur et à mesure quand tu es sur du truc.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours