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 :

Problème code php


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1
    Par défaut Problème code php
    Bonjour,
    quand je souhaite m'inscrire sur mon site j'ai une erreur qui s'affiche

    Notice: Undefined variable: bdd in /Applications/MAMP/htdocs/connection.php on line 16

    Fatal error: Uncaught Error: Call to a member function prepare() on null in /Applications/MAMP/htdocs/connection.php:16 Stack trace: #0 {main} thrown in /Applications/MAMP/htdocs/connection.php on line 16
    le Problème est que quand je regarde dans mon code à la ligne 16 je ne vois pas l'erreur, pouvez-vous m'aider svp

    voici mon code 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <?php
    // Afficher les erreurs à l'écran
    ini_set('display_errors', 1);
    	function connectMaBase(){
    		$bdd = mysql_connect ('localhost', 'root', '');  
    		mysql_select_db ('espace_membres', $bdd) ;
    	}
    			// fin de connection
    	  if(isset($_POST['formconnexion']))
    	   {
    	  		 $mailconnect = htmlspecialchars($_POST['mailconnect']);
    	  		 $mdpconnect = sha1($_POST['mdpconnect']);
     
    	  		 if(!empty($mailconnect) AND !empty($mdpconnect))
    	  		 {
    	  		 		$requser = $bdd->prepare("SELECT * FROM membres WHERE mail = ? AND mot_de_passe = ?");
    	  		 		$requser->execute(array($mailconnect, $mdpconnect));
    	  		 		$userexist = $requser->rowCount(); 
    	  		 		if ($userexist == 1) 
    	  		 		{
    	  		 			$userinfo = $requser->fetch();
    	  		 			$_SESSION['id'] = $userinfo['id'];
    	  		 			$_SESSION['pseudo'] = $userinfo['pseudo'];
    	  		 			$_SESSION['mail'] = $userinfo['mail'];
    	  		 			header("location: profil.php?id=".$_SESSION['id']);
    	  		 		}
    	  		 		else
    	  		 		{
    	  		 			$erreur = "L'adresse email ou le mot de passe n'est pas bon";
    	  		 		}
    	  		 	  }
    	  		 	  else
    	  		 	  {
    	  		 	  	$erreur =  "tous le champs doivent être completés!";
    	  		 	  }
    	   }
     
    	?>

  2. #2
    Membre Expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 59
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Billets dans le blog
    8
    Par défaut
    Tu utilises des marqueurs anonymes dans ta requête (les ?).
    Il faut donc que tu te connectes via PDO, pas mysql. Suis le lien de ma signature. Paragraphe 3 puis 6.

    Ton autre problème, par ailleurs, c'est que tu définis la fonction de connexion, mais que tu ne la convoques pas... alors forcément, il ne connaît pas $bdd...
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Bonsoir,

    Pour mysql_select_db
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql_select_db ('espace_membres');

    Sinon mysql est obsolete il faut passer à mysqli ou PDO

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Pour être exact, il faut passer à PDO ou mysqli dans tout le script (et c'est PDO ou mysqli, pas un mélange des deux)

    Ensuite, il faut penser à appeler la fonction de connexion et récupérer ce que retourne ta fonction pour pouvoir l'utiliser.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

Discussions similaires

  1. problème code php
    Par Carlotta dans le forum Langages de programmation
    Réponses: 0
    Dernier message: 25/10/2010, 21h06
  2. [PHP-JS] Problème code PHP
    Par PiouPiou83 dans le forum Langage
    Réponses: 6
    Dernier message: 09/10/2007, 09h57
  3. Problème le code PHP s'affiche dans le navigateur
    Par Christophe LUCET dans le forum Langage
    Réponses: 4
    Dernier message: 20/12/2006, 14h12
  4. [MySQL] Un problème dans le code PHP
    Par jack_1981 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/07/2006, 11h06
  5. [POO] Problème de code PHP avec Internet Explorer
    Par bzoler dans le forum Langage
    Réponses: 5
    Dernier message: 12/02/2006, 11h00

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