Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/12/2007, 09h38   #1
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 116
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 116
Points : 27
Points : 27
Par défaut Connexion + membre en global_off

Bonjour, j'ai eu un script php il y a plus de 6 mois sur un site, je l'avait modifier mais hier l'hebergement a envoyer un email pour dire que leur site va passé en php5 et qu'il faut mettre 2 lignes dans le htaccess

depuis que j'ai mis les 2 lignes sa marche bien, j'ai modifier 90% de mon site pour mettre plein de variable['var'] ...

mais le seul probléme c'est le formulaire de connexion

donc il y a dans la page index le formulaire de connexion:

Code :
1
2
3
4
5
6
7
<input name="pseudo" type="text" id="pseudo" value="<?php if (isset($_POST['pseudo'])) echo stripslashes(htmlentities(trim($_POST['pseudo']))); ?>" size="10" />
<input name="passe" type="password" id="passe" value="<?php if (isset($_POST['passe'])) echo stripslashes(htmlentities(trim($_POST['passe']))); ?>" size="10" />
<input type="submit" name="connexion" value="Connexion" />
 
	  <?php 
	  if (isset($erreur)) echo '<br /><br />',$erreur;  
	  ?>

ensuite dans la meme page (index.php) mais tout en haut il y a ce script php:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
// on teste si le visiteur a soumis le formulaire de connexion  
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') { 
   if ((isset($_POST['pseudo']) && !empty($_POST['pseudo'])) && (isset($_POST['passe']) && !empty($_POST['passe']))) { 
 
      $base = mysql_connect ('localhost', 'LOGIN', 'PASSE'); 
      mysql_select_db ('NOM-DE-BDD', $base); 
 
      // on teste si une entrée de la base contient ce couple login / pass 
      $sql = 'SELECT count(*) FROM letchat WHERE pseudo="'.mysql_escape_string($_POST['pseudo']).'" AND passe="'.mysql_escape_string($_POST['passe']).'"'; 
      $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['pseudo'] = $_POST['pseudo']; 
         header('Location: membre.php'); 
         exit(); 
      } 
      // si on ne trouve aucune réponse, le visiteru s'est trompé soit dans son login, soit dans son mot de passe 
      elseif ($nb == 0) { 
         $erreur = 'Mauvais login / password. Merci de recommencer'; 
      } 
      // 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 = 'Vous devez indiquer un pseudo afin de pouvoir vous connecter.'; 
   }  
}  
 
?>

a mon avis c'est le script au dessu qui coince et que je sais pas gerer

par contre aprés sur la page membre rien ne se detecte:

membre.php
Code :
1
2
3
4
5
6
7
8
9
10
11
12
<?php
session_start();
if (!isset($_SESSION['pseudo'])) { 
   header ('Location: index.php'); 
   exit();  
}  
?>
ensuite toute les données ici ne s'affiche pas, meme si je met un :
<?php echo $_GET['pseudo'];?>
ou encore je remplace _GET par _POST , sa affiche une page toute blanche
et pas le pseudo, mais le membre est bien connecté . 

Ce script marche trés bien en global on , mais mon hebergement a dit de changer tout sa car y parait qu'un php va s'arreté et c'est remplacé par php5
sa serais bien de m'aidé de savoir se qui manque dans le script pour que la page membre.php detecte les variables ...


Merci d'avance
(dsl pour les fautes )
mecmec est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2007, 10h40   #2
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 116
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 116
Points : 27
Points : 27
c'est bon, j'ai trouvé car j'essayais plusieurs tactiques
et j'ai mis sa:

Code :
1
2
3
4
5
6
7
8
9
10
11
 
<?php
session_start();
if (!isset($_SESSION['pseudo'])) { 
   header ('Location: index.php'); 
   exit();  
}  
$pseudo = $_SESSION['pseudo'];
echo "$pseudo";
...
?>

sa a l'aire bon

Bonne journée
mecmec est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h56.


 
 
 
 
Partenaires

Hébergement Web