espace membre qui ouvre aucune page

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : espace membre qui ouvre aucune page

Re: espace membre qui ouvre aucune page

par bostak » 01 déc. 2011, 14:51

je viens de résoudre mon problème j'avais un problème avec le fichier de destination qui me renvoyais directement sur le index.php du coup sa me faisait une boucle à l'infini.

Comment je peux faire maintenant si je veux faire un site de post de commentaires (un peu comme un blog) mais que seulement chaque membres puissent modifier ou supprimer que leur post et non celui des autres ?

Cordialement,

Re: espace membre qui ouvre aucune page

par Mazarini » 01 déc. 2011, 11:27

Oui, le tout est de voir ce qui se passe et dans quelles branche du traitement tu passes pour localiser le problème.

Re: espace membre qui ouvre aucune page

par bostak » 01 déc. 2011, 11:17

je vais tester avec des var_dump cela va revenir au même non ?

Re: espace membre qui ouvre aucune page

par Mazarini » 01 déc. 2011, 10:22

Il n'y a pas de secret, il faut mettre des "echo" pour voir ou le script passe et voir le contenu des variables.

espace membre qui ouvre aucune page

par bostak » 01 déc. 2011, 10:01

Bonjour,

J'ai un petit soucis avec mon espace membre, l'on peut s'enregistrer sans problème mais après lorsque l'on s'identifie il ne se passe rien, l'on est pas redirigé vers une page web je vous montre le code :

Code : Tout sélectionner

<?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 ('localhost', 'root', ''); mysql_select_db ('membre', $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="'.mysql_escape_string(md5($_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="index.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>
sa se passe ici pour que cela soit plus clair :

Code : Tout sélectionner

// 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(); }
et j'ai bien une page qui s’appelle membre.php qui est comme ceci :

Code : Tout sélectionner

<?php session_start(); // si la variable de session "pseudo" n'existe pas, le visiteur // n'a rien à faire ici if(!isset($_SESSION['pseudo'])) { header("location: index.php"); // redirection exit; // arrêt du script } echo 'Bienvenue dans la zone membre, ' . $_SESSION['pseudo'] . '<br>'; echo '<a href="log.php?action=logout">Logout</a><br><br>'; ?>
Donc voilà je ne comprend pas pourquoi cela ne fonctionne pas :(

Cordialement,