Session php

Résolu/Fermé
tyui - Modifié par tyui le 18/12/2011 à 12:01
 jadu - 23 avril 2012 à 20:34
Bonjour,

je voudrais faire des session avec php et j'ais trouvé ça http://ressources.mediabox.fr/tutoriaux/php/interactions/utiliser-les-sessions mais avec ce code :

<?php 
/* 
  si les champs de login et de mot de passe ne sont pas vides 
  on insère l'utilisateur. 
*/ 
if($_POST["login"] != "" && $_POST["mot_de_passe"] != "") 
{ 
  $login     = $_POST["login"]; 
  $pass      = md5($_POST["mot_de_passe"]) ; 
  
  //connexion au serveur 
  $cnx = mysql_connect(localhost, utilisateur, motdepasse, bdd) ; 
  //sélection de la base de données 
  $db  = mysql_select_db(DB) ; 
  
  //création de la requête SQL 
  $sql = "INSERT INTO user (login_user, pass_user) VALUES ('".$login."', '".$pass."')" ; 
  //exécution de la requête SQL 
  $requete = @mysql_query($sql, $cnx) or die($sql."<br>".mysql_error()); 
  
  //si la requête s'est bien passé, on affiche un message de succès 
  if($requete) 
  { 
    echo "L'inscription s'est bien déroulée, <a href=\"index.php\">se connecter</a>" ; 
  } //fin if 
/* 
  sinon on retourne à la page d'inscription 
*/ 
else 
{ 
  header("Location: suscribe.php") ; 
}//fin else 
?>


à l'exécution rien ne se passe, je vais voir les log je vois l'erreur suivante : PHP Parse error: syntax error, unexpected $end

mais je vois aucune erreur de syntax

merci de votre aide

16 réponses

-lolo666-
Messages postés
566
Date d'inscription
dimanche 11 septembre 2011
Statut
Membre
Dernière intervention
4 mai 2012
121
18 déc. 2011 à 12:03
Les point-virgules ? Les parenthèses et autres crochets ?
0
merci de votre aide,

désolé je ne vois pas d'erreurs un autre indice ?
0
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
80
18 déc. 2011 à 13:29
  //connexion au serveur 
  $cnx = mysql_connect(localhost, utilisateur, motdepasse, bdd) ; 
  //sélection de la base de données 
  $db  = mysql_select_db(DB) ; 


c'est à ce niveau qu'il y a un problème

1 -> ce sont des variables globales ??

2 -> il y a 3 paramètres à mysql_connect et non 4
0
je suis novice en programmation, si je comprends bien dans

$cnx = mysql_connect(localhost, utilisateur, motdepasse, bdd) ;

localhost, utilisateur, motdeasse et bdd sont des paramètres mais ces 4 paramètres sont essentielles pour se connecter à mysql non ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
80
18 déc. 2011 à 15:04
tu enlève bdd, ce paramètre est en trop

c'est cette ligne qui determine ta base de données:

$db  = mysql_select_db(DB) ; 




localhost, utilisateur, motdeasse

ce sont des variables ??? il n'y a pas de $ devant ....
0
j'ai essayé ça mais ca ne marche pas
//connexion au serveur
$cnx = mysql_connect($SERVEUR, $USER, $PASS) ;
//sélection de la base de données
$db = mysql_select_db(bdd) ;
0
pas de réponse ça ne marche toujours pas
0
maka54
Messages postés
699
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
80
Modifié par maka54 le 20/12/2011 à 15:55
$db = mysql_select_db($bdd) ;
0
merci de me venir en aide,

rien à faire ça marche pas voici le code en entier

<?php
/*
si les champs de login et de mot de passe ne sont pas vides
on insère l'utilisateur.
*/
if($_POST["login"] != "" && $_POST["mot_de_passe"] != "")
{
$login = $_POST["login"];
$pass = md5($_POST["mot_de_passe"]) ;

//connexion au serveur
$cnx = mysql_connect_db($serveur, $user, $password) ;
//sélection de la base de données
$db = mysql_select_db($bdd) ;

//création de la requête SQL
$sql = "INSERT INTO user (login_user, pass_user) VALUES ('".$login."', '".$pass."')" ;
//exécution de la requête SQL
$requete = @mysql_query($sql, $cnx) or die($sql."<br>".mysql_error());

//si la requête s'est bien passé, on affiche un message de succès
if($requete)
{
echo "L'inscription s'est bien déroulée, <a href=\"index.php\">se connecter</a>" ;
} //fin if
/*
sinon on retourne à la page d'inscription
*/
else
{
header("Location: inscription.php") ;
}//fin else
?>
0
Stéphane18
Messages postés
372
Date d'inscription
jeudi 3 mars 2011
Statut
Membre
Dernière intervention
20 février 2019
133
20 déc. 2011 à 16:32
Salut, comment récupère tu tes informations de connexion $serveur, $user, $password, et aussi comment sélectionne tu ta base de donnée $bdd ?
0
salut,
je récupère les infos en me connectant $cnx = mysql_connect_db($serveur, $user, $password) ;

et avec SQL //création de la requête SQL
$sql = "INSERT INTO user (login_user, pass_user) VALUES ('".$login."', '".$pass."')" ;
//exécution de la requête SQL
$requete = @mysql_query($sql, $cnx) or die($sql."<br>".mysql_error());

je sélectionne ma base avec :
$db = mysql_select_db($bdd) ;
0
pas de réponse
0
Stéphane18
Messages postés
372
Date d'inscription
jeudi 3 mars 2011
Statut
Membre
Dernière intervention
20 février 2019
133
20 déc. 2011 à 18:36
Pardon, j'avais une course à faire !!

Ce que je veux dire c'est à quoi correspond $user et $password car je me doute bien que $serveur correspond à localhost mais les autres infos ? Voici un exemple de connexion:

$base = mysql_connect ('localhost', 'root', '');
mysql_select_db('ta_base', $base);

Travaille tu en local et utilise tu WampServer ?
0
j'ai testé seul :

if($_POST["login"] != "" && $_POST["mot_de_passe"] != "")
{
$login = $_POST["login"];
$pass = md5($_POST["mot_de_passe"]) ;

//connexion au serveur
$cnx = mysql_connect_db($localhost, $root, $hec8405g) ;
//sélection de la base de données
$db = mysql_select_db($netbuntu) ;

ça marche mais en ajoutant :

//création de la requête SQL
$sql = "INSERT INTO user (login_user, pass_user) VALUES ('".$login."', '".$pass."')" ;
//exécution de la requête SQL
$requete = @mysql_query($sql, $cnx) or die($sql."<br>".mysql_error());

//si la requête s'est bien passé, on affiche un message de succès
if($requete)
{
echo "L'inscription s'est bien déroulée, <a href=\"index.php\">se connecter</a>" ;
} //fin if
/*
sinon on retourne à la page d'inscription
*/
else
{
header("Location: inscription.php") ;
}//fin else

ça marche pas
0
Stéphane18
Messages postés
372
Date d'inscription
jeudi 3 mars 2011
Statut
Membre
Dernière intervention
20 février 2019
133
20 déc. 2011 à 18:50
Tu as quoi comme message d'erreur ?
0
toujours le même : PHP Parse error: syntax error, unexpected $end
0
Stéphane18
Messages postés
372
Date d'inscription
jeudi 3 mars 2011
Statut
Membre
Dernière intervention
20 février 2019
133
20 déc. 2011 à 19:00
Il te manque une accolade } après $requete

$requete = @mysql_query($sql, $cnx) or die($sql."<br>".mysql_error()); 
}
0
merci infiniment !

ça marche mais

j'obtiens maintenant Access denied for user 'www-data'@'localhost' (using password: NO)
0
Stéphane18
Messages postés
372
Date d'inscription
jeudi 3 mars 2011
Statut
Membre
Dernière intervention
20 février 2019
133
Modifié par Stéphane18 le 20/12/2011 à 19:18
C'est un problème de connexion es tu sur de tes identifiants ?

Essai comme ceci:
//connexion au serveur 
$cnx = mysql_connect_db('localhost', 'root', '') ; 
//sélection de la base de données 
$db = mysql_select_db('netbuntu') ; 
0
graffx
Messages postés
6427
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
24 mars 2019
2 011
21 déc. 2011 à 07:00
ton erreur initial est due au fait que tu aies un { qui n' est pas fermé.

trois { pour deux }

Recompte bien.
0
en effet, tu fermes ton second if mais pas le premier !!!
0