Précédent   Forum du club des développeurs et IT Pro > 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
 
Outils de la discussion
Publicité
'
Vieux 15/07/2008, 16h42   #1
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
Par défaut insérer une variable session dans ma table mysql

je voudrais inserer le login du membre connecté qui passe le qcm dans la base,mais ça marche pas.merci pour ceux qui veulent bien m'aider
c c control-session.php
Code :
1
2
3
4
5
6
7
8
9
10
 
<?php
session_start(); // ici on continue la session
if ((!isset($_SESSION['pseudo'])) || ($_SESSION['pseudo'] == ''))
{
	header("location: ../login.php");
	exit();
 
}
?>
les 2 derniers code c le meme fichier ccna1.php
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<?php
	session_start(); // Ici on continue la session
 
	require "../include/control-session.php";
	require "../include/db_connect.php";	
 
	 if (isset($_POST['send']) && $_POST['send'] == 'Valider') { 
 
      //  on insère le message dans notre table SQL 
  $sql = 'INSERT INTO classement_reseau VALUES("'.$_SESSION['pseudo'].'")'; 
  mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error()); 
  mysql_close(); 
  exit(); 
      }  
?>
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
 
<form name="ccna1"  action="ccna1.php" method="post">
	 <?php
 
 
            echo "<center><h3>Repondez aux 10 questions suivantes. Une fois terminé vous clickez sur 'VALIDER'<h3><br /></center>";
 
 
            //Execution de la requete SQL
		    $reqsql="SELECT * FROM questionnaire WHERE theme like 'ccna1'";
            $resbase=mysql_query($reqsql) or die ("Echec de la requete");
 
 
            while ($abase=mysql_fetch_assoc($resbase)){
            //$num prend la valeur trouvé dans le champs 0
            $num=$abase['num'];
            //$question prend la valeur trouvé dans le champs 1
            $question=$abase['quest'];
            //$reponse1 prend la valeur trouvé dans le champs 2
            $reponse1=$abase['prop1'];
            //$reponse2 prend la valeur trouvé dans le champs 3
            $reponse2=$abase['prop2'];
            //$reponse3 prend la valeur trouvé dans le champs 4
            $reponse3=$abase['prop3'];
			//$reponse3 prend la valeur trouvé dans le champs 5
            $reponse4=$abase['prop4'];
            //$repexact prend la valeur trouvé dans le champs 6
            $repexact=$abase['rep'];
 
            echo '<big>';
            //Affichage à l'ecran du numero de la question et de la question       
            echo $question;
            echo "<br />";
            //Affichage du choix des réponses avec des radiobutton
            echo '<input type="radio" name="rep'.$num.'" value="1"  onclick="Engine(<?php echo $num ?>, this.value)" >'.$reponse1.'<br />';
	        echo '<input type="radio" name="rep'.$num.'" value="2"  onclick="Engine(<?php echo $num ?>, this.value)"/>'.$reponse2.'<br />';
			echo '<input type="radio" name="rep'.$num.'" value="3"  onclick="Engine(<?php echo $num ?>, this.value)" />'.$reponse3.'<br />';
            echo '<input type="radio" name="rep'.$num.'" value="4"  onclick="Engine(<?php echo $num ?>, this.value)" />'.$reponse4.'<br />';			
            echo "<br />";
			echo '</big>';
			}
 
        //ferme la connection à la base
        mysql_close();
 
    //Renseignement du nom pour enregistrement dans la base
 
 
    echo '<br><input type="submit" name="send "value="Valider" />';
 
?>
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 16h47   #2
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
Sa marcheras mieux avec une requête comme sa déjà^^

Code :
1
2
 
$sql = "INSERT INTO classement_reseau VALUES('".$_SESSION['pseudo']."')";
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 16h59   #3
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
merci pour ta réponse
ça marche pas
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h02   #4
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
As tu regardé si ton
$_SESSION['pseudo'] vallait quelque chose ?
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h04   #5
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
voila le code qui verifie ma page login c la ou j'ai enregistrer mon pseudo ds la session,dans les autre page y que session_start()
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
 
<?php
session_start();
 
require "include/db_connect.php";
 
		// bouton submit pressé, je traite le formulaire            htmlentities :  Convertit tous les caractères éligibles en entités HTML 
	    $pseudo  = (isset($_POST['pseudo'])) ? htmlentities(trim($_POST['pseudo'])) : '';
	    $password   = (isset($_POST['password']))    ? htmlentities(trim($_POST['password']))   : '';
 
    if (($pseudo != '') && ($password != ''))
	{
		// Login et pwd non vides, on  vérifie s'il y a quelqu'un qui correspond
		$req_utilisateur = sprintf("SELECT
						id,
						pseudo,
                        statut						
					FROM
						gx_user
					WHERE
			(pseudo = '".$_POST["pseudo"]."' AND pass ='".md5($_POST["password"])."');",$pseudo, md5($password));
		$utilisateur = mysql_query($req_utilisateur) or die($req_utilisateur."<br />\n".mysql_error());
 
		if (mysql_num_rows($utilisateur) == 1)
		{
			// Oui il y a quelqu'un ...
			$personne = mysql_fetch_array($utilisateur);
 
			// On  enregistre ses données dans la session
			$_SESSION['pseudo'] = $pseudo; // permet de vérifier que l'utilisateur est bien connecté
			$_SESSION['id'] = $personne['id'];
			$_SESSION['statut'] = $personne['statut'];
             if($personne['statut']=='admin')
			 {
			// Maintenant que tout est enregistré dans la session, on redirige vers la page voulue
			header("Location: admin/accueil.php");
            exit;
			}
			else
			{
			header("Location: membre/accueil.php");
            exit;
			}
		}
        else
		{
		// Erreur dans le login et / ou dans le mot de passe ...
			echo '<p>Désolé, cette page est réservée aux membres,veuillez vous identifier,<a href="login.php" >ICI</a> </p>'."\n";
			echo '<p> Si vous n\'êtes pas membre veuillez vous enregistrer,<a href="login.php" >ICI</a> </p>'."\n";
		}
 
    }
//Libère le résultat de la mémoire	
mysql_free_result($utilisateur);	
//fermer la connexion
mysql_close();
 
 
?>
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h06   #6
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
Citation:
Envoyé par timboy11 Voir le message
merci pour ta réponse
ça marche pas
Pour tout à l'heure sa marchais pas. Mais il m'étais quoi comme erreur
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h07   #7
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
dans toust mes pages ya
Code :
1
2
 
Bienvenue <?php echo stripslashes(htmlentities(trim($_SESSION['pseudo']))); ?>
et le login s'affiche,c bon je crois,
mais pr la requete ça marche pas
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h09   #8
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
Sa mdit pas ce qu'il m'était comme erreur

En plus t'as mis un mysql_error() c'est super maintenant faut justement s'en servir pour voir l'erreur^^
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h14   #9
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
pour le echo bienvenue ça marchait des le debut,
j'ai juste un probleme de l'insertion,il ne m'affiche aucune erreur,il raffraichit juste la page.

et maint j'ai ajouter ça
$link=mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error($link));
mais comme avant juste le raffraichissement de la page
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h19   #10
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
ma table contient 3 champs:
1 -id qui autoincrement
2- pseudo
3- score

mais je veux avant regler ce probleme pour ensuite inclure score ds la requete
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h21   #11
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
Ok je vois.

En faite quand t'arrive sur ta page ccna1.php, tu fait un include de c c control-session.php

Cette page elle en faite contrôle la session comme l'indique son nom. Si la session n'est pas bonne en gros il te redirige de nouveau vers le formulaire.

Le rafraichissement (ou plutôt la redirection) ce fait à ce moment la.
C'est tout simplement que ton $_SESSION['pseudo'] ne doit être à aucun moment définit.

Suffit donc que tu lui donnes une valeur (celle du pseudo du gars en locurence pour ton script)
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h26   #12
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
c fichier me rederige vers login.php qui est ma page d'accueil juste si je suis pas connecté alors que je le suis et mon pseudo s'affiche dans la ccna1.php ou la requete s'execute,apres execution de la requete il m'affiche toujours ccna.php.
ça doit etre une petite erreur de rien du tt qui fait tt ça
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h29   #13
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
Pour être sur que sa vienne bien du
require "../include/control-session.php";

Vire de la page ccna1.php.

Si sa marche bon bah sa veut dire que sa vient bien de la verif il te reste plus qu'a affecter correctement tes variables de session ou tu le souhaite avant la verif de ces dernières
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h33   #14
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
j'ai fais ce que tu as dis,mais rien,ça doit peut etre ds la requete qui a un probleme
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h36   #15
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
En faite sa serait plus simple si tu dévrivais exactement ce qui se passe^^"

Tu vas sur le formulaire, une fois que tu l'as passé est ce qu'il va bien sur la page ccna1.php et une fois dessus qu'est ce qu'il affiche après avoir enlever l'include qui fait la verif de session ?
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h36   #16
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
j'ai coriigé un petite erreur et maint il me donne un msg d erreur

Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in C:\wamp\www\new\qcm\ccna1.php on line 12
Erreur SQL !INSERT INTO classement_reseau VALUES('amin11')

VALUES('amin11') ici il connait bien mon pseudo
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h40   #17
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
Donc sa vient bien de la requête comme j'avais dit au tout début è_é

Bref dans ton insert faut que tu précise le nom de ton champ exemple :

INSERT INTO Table (Champ1) VALUES('Valeur du champ1')
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h45   #18
timboy11
Futur Membre du Club
 
Inscription : avril 2008
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 79
Points : 15
Points : 15
enfin y 'aavit 2 erreur une ds la requete et une autre ds le bouton submit.

merci pour ton aide c tres gentil de ta part,
bonne soirée
timboy11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 17h49   #19
Gaara-Manga
Membre confirmé
 
Avatar de Gaara-Manga
 
Inscription : avril 2007
Messages : 247
Détails du profil
Informations personnelles :
Localisation : France, Vienne (Poitou Charente)

Informations forums :
Inscription : avril 2007
Messages : 247
Points : 212
Points : 212
No soucis le principale c'est que le problème sois réglé^^

Bonne soirée à toi également
Gaara-Manga est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/09/2012, 22h50   #20
ose_noob
Invité de passage
 
Inscription : septembre 2012
Messages : 4
Détails du profil
Informations forums :
Inscription : septembre 2012
Messages : 4
Points : 0
Points : 0
Par défaut A L aide SVP

Voila ca fait 3, 4 semaine que je galere a faire mon systeme de login je suis un noob autodidact qui aime apprendre par lui meme mais bon apres maintenand presque 1 mois de recherche et de script /systeme de login différent J ABBANDONNEEEEE et vous demande de me venir en aide !!!

Le resultat que je souhaite avoir:

un systeme de login PHP / MY SQL (celui que j utulise est acev session et sans cookies) me donnant la possibilité de m'enregistrer, me logger, afficher mes infos, les modifier, puis bien enttendu me deconnecter !

Actuellement je fonctionnen avec une base de donnee mysql ds laquelle ce trouve une table "login" dans celle ci jai toute mes infos !! (nom, pw, age, etc...)

Donc jai ENFIN reussi a bidouiller mon code de manier a ce que tous marche bien comme il le faut SAUF un SOUCIS qui m'empeche d aller plus loin :

lorsque je suis logger et bien je clique sur mon lien "membre " et la n'est afficher que mon nom et nom TOUTE LES INFO
-
DONC MA QUESTION COMMENT FAIRE SVP ne me demander pas de reflechir ni envoyer moi des lien jcomprend plus rien !!! je parle 3 langues et jai exploiter ce savoir au traver de google et c'est seulement apres avoir eu l'impression de connaitre tous les site parlan de programmation web que j'ai abandonner !!!

Je sais ke la dehors il y a quelqu un qui beneficie du savoir pour m'aider !!

Je vous envoie mon code du fichier loggin et oui celuis du fichier membre

Login.php :


<?php
session_start();
ob_start();
?>

<?php
$verbindung = mysql_connect("localtruc", "nom" , "modepass")
or die("connection pa possible");
mysql_select_db("table") or die ("Datenbank konnte nicht ausgewählt werden");

$username = $_POST["username"];
$city = $_GET["city"];
$land = $_GET["land"];
$age = $_GET["age"];
$music = $_GET["music"];
$role = $_GET["role"];
$passwort = md5($_POST["password"]);




$abfrage = "SELECT * FROM login WHERE username LIKE '$username'";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);

if($row->passwort == $passwort)
{
$_SESSION["username"] = $username ;
$_SESSION["land"] = $land ;


header("Location: http://mon site.vu/?page=member");

}
else
{
header("Location: http://mon site.vu/?page=login_false");
}

?>

et member.php

<?php

print_r($_SESSION);

?>
ose_noob est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h12.


 
 
 
 
Partenaires

Hébergement Web