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 15/07/2008, 16h42   #1
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
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
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
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
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 : 213
Points : 213
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
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h22.


 
 
 
 
Partenaires

Hébergement Web