Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
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 05/03/2006, 05h21   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2004
Messages : 48
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 48
Points : 14
Points : 14
Par défaut Espace membres

J'ai fait un espace membre pour un client... voila... mon système a pas trop l'air de marcher parce que parfois il me renvoie sur le form sans aucune raison.. il oublie que j'était identifié.. etc..

Essayez par vous même et vous verrez!

Je vous demande pas d'examiner le code au complet mais si vous pensez a quelquechose, dite moi le.

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
<?
session_start();
?>
<body bgcolor="#000080">
<font face="verdana" size="2" color="#FFFFFF">
<?
//////////////////////////////////
//	 Administration principale  //
//							SSR							//
//															//
//															//
//					 main.php					  //
//////////////////////////////////
include "config.php";
	$db = mysql_connect($host, $login, $password);  // 1 
			mysql_select_db($base,$db); 
if (isset($_GET['mode'])) { 
	$mode = $_GET['mode']; 
  switch ( $mode ) { 
  	case 'auth':
	$user = $_POST['user']; 
	$pass = $_POST['pass']; 
	$db = mysql_connect($host, $login, $password);  // 1 
	mysql_select_db($base,$db);                    // 2 
	$req = mysql_query("SELECT * FROM phpbb_users WHERE username='".$user."'"	);          // 3 
	$data = mysql_fetch_assoc($req);
	$encryptpass = md5($pass);
	if ($encryptpass = $data['user_password']) {
		echo "Vous êtes correctement identifié.";
		$loginOK = true;
		$_SESSION['loginOK'] = $loginOK;
		$_SESSION['user'] = $user;
		redirect("main.php?mode=edit");
		}
	break;	   
	 case 'edit':
		if ($_SESSION['loginOK']) {
			$user = $_SESSION['user'];	
			$req = mysql_query("SELECT * FROM phpbb_users WHERE username='".$user."'"	);          // 3 
			$data = mysql_fetch_assoc($req);
			$req2 = mysql_query("SELECT user_id FROM phpbb_user_group WHERE group_id='".$groupid."'");          // 3 
  		$data2 = mysql_fetch_assoc($req2);
  		if ($data2['user_id'] = $data['user_id']) {
    	echo "<br>Bienvenue dans l'interface des membres officiels du SSR. <br>
			C'est ici que vous pourez changer toutes informations qui vont apparaître sur la page <br>
			des membres du SSR. <br>";   
			$db = mysql_connect($host, $login, $password);  // 1 
			mysql_select_db($base,$db);                    // 2 
			$req3 = mysql_query("SELECT * FROM phpbb_users WHERE username='".$user."'"	);          // 3 
			$data3 = mysql_fetch_assoc($req3);
			echo "<form name=\"infos\" method=\"post\" action=\"main.php?mode=update\">";  // LE FORMULAIRE DE DONNÉES COMMENCE ICI //			
			?>
			<table width="726" height="225" border="1" bordercolor="#000000" bgcolor="#000033"> 
			  <tr>
			    <td height="32" colspan="3" bordercolor="#000000"><span class="style5"><? echo $user; ?> - </span></td>
			  </tr>
			  <tr>
			    <td width="146" rowspan="5" bordercolor="#000000"><div align="center"><span class="style5"><a href="<? echo $data2['image'];?>"><img src="<? echo $data2['image'];?>" weight="\100" height="100"></a></span></div></td>
			    <td width="130" bordercolor="#000000" bgcolor="#000066"><span class="style5">Vrai nom </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000066"><span class="style6"><? echo "<input type=\"text\" name=\"nom\" size=\"48\" value=\"".$data3['vrainom']."\"><br>"; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000033"><span class="style5">Voiture(s)</span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000033"><span class="style6"><? echo 	"<input type=\"text\" name=\"cars\" size=\"48\" value=\"".$data3['cars']."\"><br>";  ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000066"><span class="style5">Age</span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000066"><span class="style6"><? echo "<input type=\"text\" name=\"age\" size=\"48\" value=\"".$data3['age']."\"><br> "; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000033"><span class="style5">C&eacute;libataire?:</span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000033"><span class="style6"><? echo "<input type=\"text\" name=\"cel\" size=\"48\" value=\"".$data3['celibataire']."\"> "; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000066"><span class="style5">Exp&eacute;riene en tuning: </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000066"><span class="style6"><? echo "<input type=\"text\" name=\"exp\" size=\"48\" value=\"".$data3['exp']."\"><br> "; ?></span></td>
			  </tr>
			  <tr>
			    <td rowspan="5" bordercolor="#000000"><div align="center"><span class="style5"><a href=" <? echo $data2['monchar']; ?> ">Plus de photos</a> </span></div></td>
			    <td bordercolor="#000000" bgcolor="#000033"><span class="style5">Lien Monchar (Très Important, mettre au format http://...): </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000033"><span class="style6">
			    <? echo "<input type=\"text\" name=\"char\" size=\"48\" value=\"".$data3['monchar']."\"><br>"; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000066"><span class="style5">Courriel : </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000066"><span class="style6"><? echo "<input type=\"text\" name=\"mail\" size=\"48\" value=\"".$data3['user_email']."\"><br> "; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000033"><span class="style5">Voiture de r&ecirc;ves?: </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000033"><span class="style6"><? echo "<input type=\"text\" name=\"dreamcar\" size=\"48\" value=\"".$data3['dreamcar']."\"><br> "; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000066"><span class="style5">Temps 1/4 milles : </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000066"><span class="style6"><? echo "<input type=\"text\" name=\"quart\" size=\"48\" value=\"".$data3['quart']."\"><br> "; ?></span></td>
			  </tr>
			  <tr>
			    <td bordercolor="#000000" bgcolor="#000033"><span class="style5">Site web personnel: </span></td>
			    <td width="436" bordercolor="#000000" bgcolor="#000033"><span class="style6"><? echo "<input type=\"text\" name=\"web\" size=\"48\" value=\"".$data3['user_website']."\"><br> "; ?></span></td>
			  </tr>
			</table>
			<?
			echo "<input type=\"submit\" value=\"OK\"><br>"; 
			?> 
			<form name="imgupload" method="POST" action="main.php?mode=imgupload" enctype="multipart/form-data">
				<!-- Limiter la taille des fichiers à 500Ko -->
			<input type="hidden" name="MAX_FILE_SIZE" value="150000" /> 
			<fieldset><legend>Envoi de fichiers</legend>
			<!-- champs d'envoi de fichier, de type file --><p>
			<label for="photo">Photo :</label><input type="file" name="photo" />
			</p>
			<!-- bouton d'envoi --><p>
			<input type="submit" name="envoi" value="Envoyer les fichiers" />
			</p></legend>
			</fieldset>
			</form>	
			<?
	  	echo '<a href="logout.php">Logout</a>'; 
			}
	}
	break;
 case 'update':   																	// Procédure pour envoyer les données du form d'infos
	if ($loginOK) {																						// au serveur.
	$vrainom = $_POST['nom']; 
	$cars = $_POST['cars']; 
	$age = $_POST['age']; 
	$alone = $_POST['cel']; 
	$exp = $_POST['exp']; 
	$email = $_POST['mail']; 
	$dreamcar = $_POST['dreamcar']; 
	$quart = $_POST['quart']; 
	$web = $_POST['web']; 
	$monchar = $_POST['char']; 
	$db = mysql_connect($host, $login, $password);  // 1 
	mysql_select_db($base,$db);                    // 2 
	$query="UPDATE phpbb_users SET vrainom='".$vrainom."', cars='".$cars."', age='".$age."', celibataire='".$alone."', exp='".$exp."', user_email='".$email."', dreamcar='".$dreamcar."',quart='".$quart."',user_website='".$web."', monchar='".$monchar."' WHERE username='".$user."'";          // 3 
	mysql_query($query) 
	or die('Erreur pendant l\'envoi de données'); 
	echo "<a href=\"main.php?mode=edit\">Retour</a>";
		}
	else {
 
		echo "Vous n'êtes pas autorisé a voir cette page, ou votre session a expirée.<br>";
		echo "Veuillez vous authentifier.<br>";
		redirect("main.php?mode=showform");
	}
	break;
case 'imgupload' :
																							// Procédure de changement d'image principale. Pretty sweet.
	$loginOK = $_SESSION['loginOK'];						// Voir CONFIG.PHP pour certains setting
	$user = $_SESSION['user'];
	if ($loginOK) {
	if(isset($_FILES['photo']))
		{
  // params
  unset($erreur);
  $extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
  $taille_max = 150000;
 
  // vérifications
  if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
  {
    $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';  
  }
  elseif( file_exists($_FILES['photo']['tmp_name']) 
          and filesize($_FILES['photo']['tmp_name']) > $taille_max)
  {
    $erreur = 'Votre fichier doit faire moins de 150Ko !';
  }
  // copie du fichier
  if(!isset($erreur))
  {
    $dest_fichier = basename($_FILES['photo']['name']);
    // formatage nom fichier
    // enlever les accents
    $dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    // remplacer les caracteres autres que lettres, chiffres et point par _
    $dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
    // copie du fichier
    move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
 
    $db = mysql_connect($host, $login, $password);  // 1 
		mysql_select_db($base,$db);                    // 2 
		$query="UPDATE phpbb_users SET image='/photos/".$dest_fichier."' WHERE username='".$user."'";          // 3 
		mysql_query($query) 
		or die('Erreur pendant l\'envoi de données'); 
  }
}
}
 
?>
<html>
<body>
<!-- Erreur ? -->
<?php 
if(isset($erreur)){
  echo '<p>', $erreur ,'</p>';
}
break;
case 'showform':
	?>
	<form name="form1a" method="post" action="main.php?mode=auth"> 
	Username : <input type="text" name="user" size="12"><br> 
	Password : <input type="text" name="pass" size="12"> 
	<input type="submit" value="OK"> 
  <?
 
break;
default:
	?>
	<form name="form1b" method="post" action="main.php?mode=auth"> 
	Username : <input type="text" name="user" size="12"><br> 
	Password : <input type="text" name="pass" size="12"><br>
	<input type="submit" value="OK"> 
  <?
}
}
else {
		?>
	<form name="form1b" method="post" action="main.php?mode=auth"> 
	Username : <input type="text" name="user" size="12"><br> 
	Password : <input type="text" name="pass" size="12"><br>
	<input type="submit" value="OK"> 
  <?
}
?>
Code du fichier configuration

Code :
1
2
3
4
5
6
7
8
9
10
11
<?
//Informations de connection à la base de données
$host="localhost"; 	//Hôte
$login="root";			//Login	
$password="";				//Pass
$base="forum";			//Base de données
//Paramètres pour les photos
$dest_dossier = "g:/EasyPHP1-8/www/SSR Members Interface/photos/";
//Informations concernant le groupe "Membres Officiels"
$groupid="5"; 				//Numéro du groupe attribué par phpBB2
?>
yongblood est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2006, 01h35   #2
Membre émérite
 
Avatar de Yobs
 
Inscription : avril 2004
Messages : 675
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : avril 2004
Messages : 675
Points : 808
Points : 808
Envoyer un message via MSN à Yobs
Utilise la variable $_SESSION['loginOk'] à la place de $loginOk dans tes if, je pense qaue le problème doit venir de là car des fois tu le met correctement d'autres tu ne le mets pas du tout.
__________________
Chaque problème a une solution, mais il est plus facile de répondre si le problème est correctement renseignés
Yobs est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h03.


 
 
 
 
Partenaires

Hébergement Web