IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

insérer une variable session dans ma table mysql


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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" />';
     
    ?>

  2. #2
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    Sa marcheras mieux avec une requête comme sa déjà^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql = "INSERT INTO classement_reseau VALUES('".$_SESSION['pseudo']."')";

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    merci pour ta réponse
    ça marche pas

  4. #4
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    As tu regardé si ton
    $_SESSION['pseudo'] vallait quelque chose ?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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();
     
     
    ?>

  6. #6
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    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

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    dans toust mes pages ya
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  8. #8
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    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^^

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    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

  10. #10
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    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

  11. #11
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    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)

  12. #12
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    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

  13. #13
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    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

  14. #14
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    j'ai fais ce que tu as dis,mais rien,ça doit peut etre ds la requete qui a un probleme

  15. #15
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    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 ?

  16. #16
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    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

  17. #17
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    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')

  18. #18
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    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

  19. #19
    Membre actif Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Points : 239
    Points
    239
    Par défaut
    No soucis le principale c'est que le problème sois réglé^^

    Bonne soirée à toi également

  20. #20
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2012
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Septembre 2012
    Messages : 4
    Points : 1
    Points
    1
    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);

    ?>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/04/2012, 01h25
  2. [MySql]Insérer une variable "string" dans une requête SQL
    Par Saten dans le forum Windows Forms
    Réponses: 9
    Dernier message: 13/10/2008, 18h39
  3. Insérer une Variable javascript dans MySQL
    Par MacUser dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 04/08/2008, 19h09
  4. [SQL] Comment insérer une variable php dans une requête SQL ?
    Par Yagami_Raito dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/05/2007, 09h47
  5. recuperer une variable session dans un SQLDataSource
    Par intissar_g dans le forum ASP.NET
    Réponses: 1
    Dernier message: 10/05/2007, 14h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo