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

PHP & Base de données Discussion :

Récupérer l'identifiant de l'utilisateur dans la BDD


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut Récupérer l'identifiant de l'utilisateur dans la BDD
    bonjour,
    je recherche le moyen de recuperer l'id du membres connecter pour l'inserer dans un script.

    je detail, j'ai un upload membre, quand le membre se connect et qu il upload son fichier, j'aimerais que dans le lien de retour il y est en plus de son fichier son id (celle qui est dans la bdd).

    merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Points : 631
    Points
    631
    Par défaut
    Bonsoir,
    l'ID du fichier qui vient d'être inséré dans la base de donnée ou celui du membre?

    Dans le premier cas, voyez avec les fonctions du genre mysql_insert_id, sinon c'est à vous de le connaître car, comme vous dites, cette action se déroule après que le membre se soit identifié. Si vous n'utilisez pas les sessions ou les cookies, comment identifiez-vous vos membres? .htaccess?

    Cordialement,
    DaRiaN.

  3. #3
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par DaRiaN Voir le message
    Bonsoir,
    l'ID du fichier qui vient d'être inséré dans la base de donnée ou celui du membre?

    Dans le premier cas, voyez avec les fonctions du genre mysql_insert_id, sinon c'est à vous de le connaître car, comme vous dites, cette action se déroule après que le membre se soit identifié. Si vous n'utilisez pas les sessions ou les cookies, comment identifiez-vous vos membres? .htaccess?

    Cordialement,
    DaRiaN.
    en faite j'ai un espace membre, une fois le membre identifier par son pseudo et mpd il arrive sur la page ou il peut uploder, une fois sont fichier uploader il recupere l'url de celui ci.. et en faite ce que je veut c'est que sont id se trouve dans l'url du fichier, car par la suite je vais mettre en place une recherche rapide de fichier grace a son id. donc ce qu il faut c'est que son id soit dans l'url de son fichier.

    voici le code de l'upload

    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
    <?php
    // Repertoire de stockage des images
     
    $repedest = "mb/";
    $valid_ext = array('swf','mp3','MP3','avi','txt','mov','wmv','3ds','zip','rar','bmp','bat','bin','cab','css','gif','png','jpeg','JPEG','JPG','MP3','jpg','mpg','gz','ico','java','mid','mkv','pdf','mkv','pps');
    $taille_max = 100000000000;
    if ((!in_array( substr(strrchr($fichier_name, '.'), 1), $valid_ext ) )  ||  filesize($fichier) > $taille_max) {
    echo "<big>Veuillez s&eacute;lectionner un fichier valide (verifiez les extentions) !</big>";
    } else {
     
     
     
    if ( file_exists($repedest.$fichier_name) ) {
    echo "<big>Le fichier ".$fichier_name." existe déjà !!</big>";
    } else {
    if ( !file_exists($fichier) ) {
    echo "<big>Erreur d'upload...</big>";
    } else { // ici on déplace le fichier ou on veut
    $dest_fichier = $repedest.$fichier_name;
     
    $dest_fichier = strtr($dest_fichier,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
     
    $dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
    if ( !@copy($fichier,$repedest.$fichier_name) ) {
    echo "<big>Erreur, contactez l'administrateur...</big>";
    } else {
    echo "<big>Fichier ".$fichier_name." ajouté</big>";
    echo "<br><br>Pour afficher votre lien dans une page, inserez le code suivant : <b><a href =http://acr02.fr/acr/mb/".$fichier_name.">http://acr02.fr/acr/mb/".$fichier_name."</a></b>";
    }
    }
    }
    }
    merci

  4. #4
    Membre averti Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Points : 368
    Points
    368
    Par défaut
    Quand l'utilisateur s'identifie tu n'as qu'à mettre son id dans une variable de session que tu pourras réutiliser dans les pages suivantes

  5. #5
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par makmaoui Voir le message
    Quand l'utilisateur s'identifie tu n'as qu'à mettre son id dans une variable de session que tu pourras réutiliser dans les pages suivantes
    il a une id fixe sur la bdd mais tournante sur le site (voir module login)

    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
    <?
    require("conf.php3");
     
    /*-----------------------------------------------------------------*/
    /*	PROGRAMME PRINCIPAL			*/
    /*-----------------------------------------------------------------*/
     
    // CONNEXION A LA BASE DE DONNEE
    $db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
    if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php3"; exit;}
     
    // ON SELECTIONNE L'ENREGISTREMENT CONTENANT LE LOGIN ET
    // MOT DE PASSE SAISIS A LA PAGE INDEX.HTM
    $requete=mysql_db_query($sql_bdd,"select pseudo,passe from membre where pseudo=\"$pseudo_membre\" and passe=\"$passe_membre\"",$db_link) or die(mysql_error());
     
    // SI AUCUN ENREGISTREMENT NE CORRESPOND
    if(mysql_num_rows($requete)==0)
    	{
    	// REDIRECTION VERS LA PAGE ERREUR
    	header("Location:$url_erreur");
    	}
     
    // SI LE LOGIN ET MOT DE PASSE SONT EXACTES	
    else
    	{
    	// CREATION D'UN IDENTIFIANT ALEATOIRE
    	$taille = 20;
    	$lettres = "abcdefghijklmnopqrstuvwxyz0123456789";
    	srand(time());
    	for ($i=0;$i<$taille;$i++)
    		{
    		$id.=substr($lettres,(rand()%(strlen($lettres))),1);
    		}
     
    	// MISE A JOUR DE L'IDENTIFIANT DANS LA TABLE 
    	$requete=mysql_db_query($sql_bdd,"update membre set id=\"$id\" where pseudo=\"$pseudo_membre\" and passe=\"$passe_membre\"",$db_link) or die(mysql_error());
     
    	// REDIRECTION VERS UNE PAGE PROTEGEE AVEC L'IDENTIFIANT SERVANT DE CLE
    	header("Location:crbst_8.php?id=$id");
    	}	
     
    // DECONNEXION MYSQL
    mysql_close($db_link);
    ?>

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Points : 631
    Points
    631
    Par défaut
    Puisque vous n'avez que le pseudo du membre, ajouter l'ID du membre avec une sous-requête MySQL de ce type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (SELECT `id` FROM `membres` WHERE `pseudo` = '$pseudo')
    Si vous n'avez que des ID aléatoires, utilisez le pseudo du membre.

  7. #7
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par DaRiaN Voir le message
    Puisque vous n'avez que le pseudo du membre, ajouter l'ID du membre avec une sous-requête MySQL de ce type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (SELECT `id` FROM `membres` WHERE `pseudo` = '$pseudo')
    Si vous n'avez que des ID aléatoires, utilisez le pseudo du membre.
    oui c'est ce que je pensais faire ou aussi id_membre


    mais ou placer cette ligne dans le login ou dans l'upload et a quel endroit ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (SELECT `id` FROM `membres` WHERE `pseudo` = '$pseudo')
    desole suis un peu novice...

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 514
    Points : 631
    Points
    631
    Par défaut
    Non, pour vous aider, j'ai besoin de la requête d'insertion des images.

  9. #9
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Octobre 2007
    Messages : 130
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par DaRiaN Voir le message
    Non, pour vous aider, j'ai besoin de la requête d'insertion des images.
    je voit pas de quoi vous parlez.
    je reexplique.

    j'ai un espace membre, un formulaire d'inscription et un formulaire de connexion.
    le formulaire de connexion se trouve page1.html (par ex), l'upload est un module a part, donc quand on se connect (login.php3 renvois sur page2.php).
    sur la page2.php j'ai un formulaire d'upload, alors mon soucis est que j'ai placer .
    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
    <?
    require("conf.php3");
    // CONNEXION MYSQL
    $db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);
    if(!$db_link) {echo "Connexion impossible à la base de données <b>$sql_bdd</b> sur le serveur <b>$sql_server</b><br>Vérifiez les paramètres du fichier conf.php3"; exit;}
    // SELECTION DE L'ENREGISTREMENT CONTENANT L'ID EN COURS
    $requete=mysql_db_query($sql_bdd,"select * from membre where id=\"$id\"",$db_link) or die(mysql_error());
    // SI L'ID N'EXISTE PAS
    if(mysql_num_rows($requete)==0)
    	{
    	// REDIRECTION PAGE ERREUR
    	header("Location:$url_erreur");
    	exit;
    	}
    // LIGNE FACULTATIVE : RECUPERATION DU PSEUDO
    $pseudo_membre=mysql_result($requete,0,"pseudo");
    // CHAMPS SUPLEMENTAIRES
    // Si vous avez ajouté des champs dans la table SQL, inspirez-vous de la ligne précédente pour récupérer leur valeur. 
    //$email=mysql_result($requete,0,"email");
    //$ville=mysql_result($requete,0,"ville");
    // DECONNEXION MYSQL	
    mysql_close($db_link);
    ?>
    pour proteger cette page

    et normalement avec ==> <? echo "Bonjour $pseudo_membre"; ?> je devrais avoir le pseudo qui s'affiche, et la non.. pourquoi ==> la page2.php se trouve dans une frame sur la page3.php donc il ne reconnais pas le membre et demande de me reconecte sauf si je retire le script (mis plus haut) de la page2.php sachant qu il est sur la page3.php.

    voila je pense que j'ai ete claire

Discussions similaires

  1. [Débutant] récupérer l'identifient d'un utilisateur
    Par sameh1990 dans le forum ASP.NET
    Réponses: 7
    Dernier message: 17/08/2012, 14h47
  2. Récupérer les groupes d'un utilisateur dans LDAP
    Par Invité dans le forum Langage
    Réponses: 0
    Dernier message: 01/09/2010, 10h59
  3. Réponses: 4
    Dernier message: 28/07/2010, 14h17
  4. Réponses: 6
    Dernier message: 11/01/2010, 18h13
  5. Réponses: 8
    Dernier message: 06/07/2007, 08h03

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