PhP et BDD comment faire?

Résolu
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention   -  
 Nico595 -
Bonjour,
Je suis actuellement entrain de réaliser un site internet pour un projet je le réalise en php avec dreamweaver, et je voudrais savoir comment pouvoir mettre en relation ma base de données avec ma page php.
Ma page php est très basique elle possède seulement un espace pour rentrer un nom d'utilisateur ainsi qu'un autre emplacement pour le mot de passe et un bouton rentrer, ainsi je voudrai que l'utilisateur qui fait partie de ma base de données user puisse acceder a l'acceuil du site et dans le cas contraire afficher un message d'erreur g crée une table user:

CREATE TABLE `cekciwebmaster`.`user` (
`nom_user` VARCHAR( 15 ) NOT NULL ,
`password` VARCHAR( 20 ) NOT NULL ,
`id_user` INT NOT NULL AUTO_INCREMENT ,
PRIMARY KEY ( `id_user` )
) ENGINE = MYISAM

et à partir de la je ne c'est pas comment en supposant que je m'y soit bien pri jusqu'a présent quelqu'un aurait-il des suggestions ou même un tuto pour les nuls très bien détaillées aà me proposer?????
A voir également:

35 réponses

DZTeam Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour kikoi1 Notre petit génie :p
La gestion des membres ce fait avec une LOGIN + uNE REDIRECTION
quand le membre met son nom_USER & sont Password et apré il va ou ? faut pensé à sa aussi chère kikoi1 .
voila un code que j'ai crée sa peut t'aidé

// Connexion.kikoi1.php

<?php
if(isset($pseudo) & !empty($pseudo) & isset($mdp) & !empty($mdp))
{

$pseudo=addslashes(htmlspecialchars($_POST[pseudo]));
$mdp=addslashes(htmlspecialchars($_POST[mdp]));


connecter();
$query="SELECT * FROM `membres` WHERE `pseudo` LIKE '$pseudo' and `mdp` LIKE '$mdp'";
$result=@mysql_query($query);
$num=@mysql_num_rows($result);
$row=@mysql_fetch_row($result);
if($num==0){
echo "<br><br><center><font color='#990000'>Erreur Mr kiKoi1 ce pseudo (et/ou mot de passe) est incorrect!</font></center><br>";
}else{
//connexion établie
$mail = $row[3];
$meme = $row;
//-----------------VERSION 1.1-----------------
$_SESSION['pseudo']=$pseudo;
$_SESSION['mail']=$mail;
$_SESSION['meme']=$meme;
//---------------------------------------------
//session_register("pseudo"); VERSION 1.0 nécessité d'avoir register_gloabals=on
//session_register("mail");
//session_register("meme");

echo "Connexion établie...";
echo "<script language='javascript'>document.location='espace_membre.php?page=1'</script>";
}
}
?>

// Formulaire.html pour Mr kikoi1 ^^

<form action="espace_membre.php?page=1" method="post">
<table align="center" class="texte">
<tr><td>Pseudo: </td><tD><input type="text" name="pseudo"></tD></tr>
<tr><td>Mot de passe: </td><tD><input type="password" name="mdp"></tD></tr>
<tr><td><a href="espace_membre.php?page=6"><font size="1">oublié?</font></a></tD></tr>
<tr><tD colspan="2" align="center"><input type="submit" value="Envoyer"></tD></tr>
<tr><tD colspan="2" align="center"><a href="espace_membre.php?page=2"><font size="1">S'inscrire</font></a></tD></tr>
</table>
</form>

x.0185@hotmail.fr si tu n'a pas pigé kek chose @+
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Mille merci j'v essayer sa de suite ;)
0
DZTeam Messages postés 25 Date d'inscription   Statut Membre Dernière intervention  
 
Derien amigo ^^
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Bon j'ai essayé le code mais je dois oublier quelque chose enfin je vous montre le code de ma page index, je n'arrive pas à la page acceuil.php


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>

<body>
// Connexion.kikoi1.php

<?php
mysql_connect("?", "identifiant", "mdp"); //connection a mysql
mysql_select_db("user"); //Séléction de la base user
if(isset($nom_user) & !empty($nom_user) & isset($password) & !empty($password))
{

$nom_user=addslashes(htmlspecialchars($_POST[nom_user]));
$password=addslashes(htmlspecialchars($_POST[password]));


//connecter();
$query="SELECT * FROM `user` WHERE `nom_user` LIKE '$nom_user' and `password` LIKE '$password'";
$result=@mysql_query($query);
$num=@mysql_num_rows($result);
$row=@mysql_fetch_row($result);
if($num==0){
echo "<br><br><center><font color='#990000'>Erreur Mr kiKoi1 ce nom_user (et/ou mot de passe) est incorrect!</font></center><br>";
}else{
//connexion établie
$mail = $row[3];
$meme = $row;
//-----------------VERSION 1.1-----------------
$_SESSION['nom_user']=$nom_user;
$_SESSION['mail']=$mail;
$_SESSION['meme']=$meme;
//---------------------------------------------
//session_register("nom_user"); VERSION 1.0 nécessité d'avoir register_gloabals=on
//session_register("mail");
//session_register("meme");

echo "Connexion établie...";
//echo "<script language='javascript'>document.location='espace_membre.php?page=1'</script>"­;
}
}
?>

// Formulaire.html pour Mr kikoi1 ^^

<form action="index.php" method="post">
<table align="center" class="texte">
<tr><td>nom_user: </td><tD><input type="text" name="nom_user"></tD></tr>
<tr><td>Mot de passe: </td><tD><input type="password" name="password"></tD></tr>
<tr><td><a href="acceuil.php"><font size="1">oublié?</font></a></tD></tr>
<tr><tD colspan="2" align="center"><input type="submit" value="Envoyer"></tD></tr>
<tr><tD colspan="2" align="center"><a href="acceuil.php"><font size="1">S'inscrire</font></a></tD></tr>
</table>
</form>

</body>
</html>

J'ai ajouter quelque modification au code précédent mais sa n'a pas l'air de vouloir fonctionner. Si quelqu'un pouvait m'aider??

P.S: j'ai rajouter un user : utilisateur avec un mdp: mdp dans ma table user si sa px aider...
0

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

Posez votre question
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Bjr

Hum ca ne va pas au niveau de la récupération des variables passées par POST

Tu le fais à l'envers


Ce code ...

if(isset($nom_user) & !empty($nom_user) & isset($password) & !empty($password)) 
{ 

$nom_user=addslashes(htmlspecialchars($_POST[nom_user])); 
$password=addslashes(htmlspecialchars($_POST[password])); 


... est complètement faux !

Les variables $nom_user et $password doivent être initialisées AVANT de faire les tests en récupérant leur valeur respective dans le tableau $_POST[]

De plus dans ton test il faut 2 symboles & pour faire un ET/AND et pas un seul & qui correspond à un opérateur binaire !!!

Enfin il faut mettre des guillemets ou des quotes lorsque tu récupères une variable directement par son nom dans $_POST[] Ex $_POST['nom_user']


Voici un ex

<html>
<head>
</head>
<body>
<?php 
$nom_user = isset($_POST['nom_user']) ?  addslashes(htmlspecialchars($_POST['nom_user'])) : null; 
$password = isset($_POST['password']) ?  addslashes(htmlspecialchars($_POST['password'])) : null; 
if(!empty($nom_user) && !empty($password)) 
{ 
	echo "<p>nom_user =".$nom_user."</p>\n";
	echo "<p>password =".$password."</p>\n";
}
else
{
	echo "<p>nom_user = NON DEFINI !</p>\n";
	echo "<p>password = NON DEFINI !</p>\n";
}
?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" method="post">
<input type="text" id="nom_user" name="nom_user" value="">
<input type="text" id="password" name="password" value="">
<input type="submit" value"Valider">
</form>
</body>
</html>




0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Oki je vais essayer par contre j'ai une question. Je ne vois pas à quelle moment il y a connexion avec la base de données???
0
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Dans moN ex je ne me connecte pas avec la BDD : c'était juste pour te signaler les erreurs

Va y étape par étape : une fois que ta page fonctionne "dans le vide" (sans BDD) alors ensuite tu peux ajouter la connexion à MySQL

Pareil pour les sessions : n'essai pas tout faire en même temps !

Pour la BDD ca semble juste sauf ta query : pourquoi tu utilises des LIKE ?

$query="SELECT * FROM `user` WHERE `nom_user` = '".$nom_user."' and `password` = '".$password."'";

Enfin c'est vrai que tu peux inclure directement les variables php simples dans une chaîne encadrées par des guillemets ex

echo "ceci est le $password";

et php va les remplacer par leur valeur mais c'est un truc à se planter !

Je préfère et de loin écrire : echo "ceci est le ".$password;
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Oki c noté
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Le code parait exploitable, merci. Maintenant je voudrais mettre en relation la page php et le la BDD afin d'accéder à la page acceuil.php comment doit-je faire?
0
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Voici un autre ex avec la BDD

ATTENTION ! J'utilise des focntions PHP pour faire plus propre

Pense à bien initialiser les variables globales qui commencent par $cfg_ avec tes propres paramètres

Dans le fonction mysql_select_user si ta table ne se nomme pas user alors modifie la requête

<?php
$cfg_hostname="localhost";
$cfg_username="root";
$cfg_password="";
$cfg_database="demo";
$mysql_link=null;

function mysql_connecter()
{
	global $cfg_hostname,$cfg_username,$cfg_password,$mysql_link,$cfg_database;
	
	if (!$mysql_link) 
	{
		$link = mysql_connect($cfg_hostname, $cfg_username, $cfg_password) or die("Impossible de se connecter au serveur MySql : ".$cfg_hostname." !");
		
		mysql_select_db($cfg_database,$link) or die("Impossible de sélectionner la base de données : ".$cfg_database." !");
		$mysql_link = $link;
	}	
	return $mysql_link;
}


function mysql_select_user($nom_user, $password)
{
	$result = 0;
	if(!empty($nom_user) && !empty($password)) 
	{ 
		$link = mysql_connecter();
		$query="SELECT * FROM `user` WHERE `nom_user` = '".$nom_user."' and `password` = '".$password."'"; 

		$result = @mysql_query($query); 
		if (!$result)
		{
			echo "query = ".$query."\n";
			echo "mysql_errno = ".mysql_errno($link)."\n";
			echo "mysql_error = ".mysql_error($link)."\n";	
			exit;
		}	
	}
	return $result;
}
?>

<html>
<head>
</head>
<body>
<?php 
$nom_user = isset($_POST['nom_user']) ?  addslashes(htmlspecialchars($_POST['nom_user'])) : null; 
$password = isset($_POST['password']) ?  addslashes(htmlspecialchars($_POST['password'])) : null; 
if(!empty($nom_user) && !empty($password)) 
{ 
	$result = mysql_select_user($nom_user,$password);
	if (mysql_num_rows($result)==0)
	{
		echo "Vous n'avez pas été reconnu ! Vérifiez vos identifiants ...";
	}
	else
	{
		$row = mysql_fetch_array($result);
		echo "Bienvenue ".$row["nom_user"]." votre id dans la table user est ".$row["id_user"];
	}
}
else
{
	if (isset($_POST['nom_user']) || isset($_POST['password'])) 
	{
		echo "Vous devez renseigner votre nom d'utilisateur et votre mot de passe pour vous connectez !";
	}
}
?>
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" method="post">
Username <input type="text" id="nom_user" name="nom_user" value=""></br>
Password <input type="text" id="password" name="password" value="">
<input type="submit" value"Valider" >
</form>
</body>
</html>
--

PhP  
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Merci je vais essayer cela
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
C bon sa fonctionne sa se connecte correctement a la BDD, merci.
Une dernière question et je pense que mon pb sera resolu c'est une fois que notre identifiant est exacte ainsi que notre mot de passe comment renvoyer sur la page d'acceuil? et si quelqu'un pouvai m'expliquer cette histoire de cookies et session... SVP
0
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Décidemment !

<?php
session_start();
session_unset();

$cfg_hostname="localhost";
$cfg_username="root";
$cfg_password="";
$cfg_database="demo";
$mysql_link=null;

function mysql_connecter()
{
	global $cfg_hostname,$cfg_username,$cfg_password,$mysql_link,$cfg_database;
	
	if (!$mysql_link) 
	{
		$link = mysql_connect($cfg_hostname, $cfg_username, $cfg_password) or die("Impossible de se connecter au serveur MySql : ".$cfg_hostname." !");
		
		mysql_select_db($cfg_database,$link) or die("Impossible de sélectionner la base de données : ".$cfg_database." !");
		$mysql_link = $link;
	}	
	return $mysql_link;
}


function mysql_select_user($nom_user, $password)
{
	$result = 0;
	if(!empty($nom_user) && !empty($password)) 
	{ 
		$link = mysql_connecter();
		$query="SELECT * FROM `user` WHERE `nom_user` = '".$nom_user."' and `password` = '".$password."'"; 

		$result = @mysql_query($query); 
		if (!$result)
		{
			echo "query = ".$query."\n";
			echo "mysql_errno = ".mysql_errno($link)."\n";
			echo "mysql_error = ".mysql_error($link)."\n";	
			exit;
		}	
	}
	return $result;
}


function controle_access($nom_user, $password,$url_absolue)
{
	$result = mysql_select_user($nom_user,$password);
	if (mysql_num_rows($result)==0)
	{
		return false;
	}
	else
	{
		$_SESSION["nom_user"] = $nom_user;
		$_SESSION["password"] = $password;		
		header("Location: ".$url_absolue);
		exit;
	}	
}

?>
<?php 
$nom_user = isset($_POST['nom_user']) ?  addslashes(htmlspecialchars($_POST['nom_user'])) : null; 
$password = isset($_POST['password']) ?  addslashes(htmlspecialchars($_POST['password'])) : null; 
if(!empty($nom_user) && !empty($password)) 
{ 
	// L'url fournit doit être absolue  
	$url_absolue = "[http://]".$_SERVER['HTTP_HOST']."/php/login/page_securisee.php";
	
	//$url = "https://www.google.fr/?gws_rd=ssl";
	$result = controle_access($nom_user,$password,$url_absolue);
	
	if (!$result)
	{
		echo "Vous n'avez pas été reconnu ! Vérifiez vos identifiants ...";
	}
}
?>
<html>
<head>
</head>
<body>
<?php 
if (isset($_POST['nom_user']) || isset($_POST['password'])) 
{
	echo "Vous devez renseigner votre nom d'utilisateur et votre mot de passe pour vous connectez !";
}
?>

<form action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" method="post">
Username <input type="text" id="nom_user" name="nom_user" value=""></br>
Password <input type="text" id="password" name="password" value="">
<input type="submit" value"Valider" >
</form>
</body>
</html>


ATTENTION :
Modifie $url_absolue = "[http://]".$_SERVER['HTTP_HOST']."/php/login/page_securisee.php";

dans le code et remplace la partie /php/login par ton propre chemin d'accès à ta page.

Ca peut donner $url_absolue = "[http://]".$_SERVER['HTTP_HOST']."/mon_chemin/page_securisee.php";



Ensuite enregistre ce qui suis dans une page que tu nommes page_securisee.php

<?php
session_start();
if (!isset($_SESSION["nom_user"]))
{
	header("HTTP/1.0 403 Forbidden");
	exit;
}
?>
<html>
<head>
<title>Page sécurisée réservée aux personnes identifiées</title>
<script language="JavaScript">
<!--
//-->
</script>
</head>
<body>
Bonjour : <? echo $_SESSION["nom_user"];?>
<p>Vous êtes sur la page sécurisée réservée aux seuls membres dûments identifiés !</p>
</body>
</html>




0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
J'obtien un message d'erreur :

Warning: session_start() [function.session-start]: open(/mnt/103/sda/0/3/cekciwebmaster/sessions/sess_70af49a584a9d5201db78dad6e315576, O_RDWR) failed: No such file or directory (2) in /mnt/103/sda/0/3/cekciwebmaster/index_final.php on line 10

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/103/sda/0/3/cekciwebmaster/index_final.php:9) in /mnt/103/sda/0/3/cekciwebmaster/index_final.php on line 10

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/103/sda/0/3/cekciwebmaster/index_final.php:9) in /mnt/103/sda/0/3/cekciwebmaster/index_final.php on line 10

Warning: Unknown(): open(/mnt/103/sda/0/3/cekciwebmaster/sessions/sess_70af49a584a9d5201db78dad6e315576, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/mnt/103/sda/0/3/cekciwebmaster/sessions) in Unknown on line 0


voila mon code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Accès securisé pour Site Comité d'entreprise KCI Medical</title>
</head>

<body>
<?php
session_start();
session_unset();

$cfg_hostname="localhost";
$cfg_username="root";
$cfg_password="";
$cfg_database="";
$mysql_link=null;

function mysql_connecter()
{
global $cfg_hostname,$cfg_username,$cfg_password,$mysql_link,$cfg_database;

if (!$mysql_link)
{
$link = mysql_connect($cfg_hostname, $cfg_username, $cfg_password) or die("Impossible de se connecter au serveur MySql : ".$cfg_hostname." !");

mysql_select_db($cfg_database,$link) or die("Impossible de sélectionner la base de données : ".$cfg_database." !");
$mysql_link = $link;
}
return $mysql_link;
}


function mysql_select_user($nom_user, $password)
{
$result = 0;
if(!empty($nom_user) && !empty($password))
{
$link = mysql_connecter();
$query="SELECT * FROM `user` WHERE `nom_user` = '".$nom_user."' and `password` = '".$password."'";

$result = @mysql_query($query);
if (!$result)
{
echo "query = ".$query."\n";
echo "mysql_errno = ".mysql_errno($link)."\n";
echo "mysql_error = ".mysql_error($link)."\n";
exit;
}
}
return $result;
}


function controle_access($nom_user, $password,$url_absolue)
{
$result = mysql_select_user($nom_user,$password);
if (mysql_num_rows($result)==0)
{
return false;
}
else
{
$_SESSION["nom_user"] = $nom_user;
$_SESSION["password"] = $password;
header("Location: ".$url_absolue);
exit;
}
}

?>
<?php
$nom_user = isset($_POST['nom_user']) ? addslashes(htmlspecialchars($_POST['nom_user'])) : null;
$password = isset($_POST['password']) ? addslashes(htmlspecialchars($_POST['password'])) : null;
if(!empty($nom_user) && !empty($password))
{
// L'url fournit doit être absolue
$url_absolue = "[http://]".$_SERVER['HTTP_HOST']."/acceuil.php";

//$url = "https://www.google.fr/?gws_rd=ssl";
$result = controle_access($nom_user,$password,$url_absolue);

if (!$result)
{
echo "Vous n'avez pas été reconnu ! Vérifiez vos identifiants ...";
}
}
?>
<html>
<head>
</head>
<body>
<?php
if (isset($_POST['nom_user']) || isset($_POST['password']))
{
echo "Vous devez renseigner votre nom d'utilisateur et votre mot de passe pour vous connectez !";
}
?>

<form action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" method="post">
Username <input type="text" id="nom_user" name="nom_user" value=""></br>
Password <input type="text" id="password" name="password" value="">
<input type="submit" value"Valider" >
</form>
</body>
</html>
</body>
</html>
0
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Oui c'est normal !

Déplace cette partie du code php depuis

<?php
session_start();
session_unset();


jusqu'à


$_SESSION["nom_user"] = $nom_user;
$_SESSION["password"] = $password;
header("Location: ".$url_absolue);
exit;
}
}

?>



Et place le au tout début du ficher avant

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0



0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai effectuer le changement mais j'obtien toujours les mêmes messages:


Warning: session_start() [function.session-start]: open(/mnt/103/sda/0/3/cekciwebmaster/sessions/sess_fd8e977563b0cce16c952e185a9ec24b, O_RDWR) failed: No such file or directory (2) in /mnt/103/sda/0/3/cekciwebmaster/index_final.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/103/sda/0/3/cekciwebmaster/index_final.php:2) in /mnt/103/sda/0/3/cekciwebmaster/index_final.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/103/sda/0/3/cekciwebmaster/index_final.php:2) in /mnt/103/sda/0/3/cekciwebmaster/index_final.php on line 2


Warning: Unknown(): open(/mnt/103/sda/0/3/cekciwebmaster/sessions/sess_fd8e977563b0cce16c952e185a9ec24b, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/mnt/103/sda/0/3/cekciwebmaster/sessions) in Unknown on line 0



voila les codes:

<?php
session_start();
session_unset();

$cfg_hostname="localhost";
$cfg_username="root";
$cfg_password="";
$cfg_database="";
$mysql_link=null;

function mysql_connecter()
{
global $cfg_hostname,$cfg_username,$cfg_password,$mysql_link,$cfg_database;

if (!$mysql_link)
{
$link = mysql_connect($cfg_hostname, $cfg_username, $cfg_password) or die("Impossible de se connecter au serveur MySql : ".$cfg_hostname." !");

mysql_select_db($cfg_database,$link) or die("Impossible de sélectionner la base de données : ".$cfg_database." !");
$mysql_link = $link;
}
return $mysql_link;
}


function mysql_select_user($nom_user, $password)
{
$result = 0;
if(!empty($nom_user) && !empty($password))
{
$link = mysql_connecter();
$query="SELECT * FROM `user` WHERE `nom_user` = '".$nom_user."' and `password` = '".$password."'";

$result = @mysql_query($query);
if (!$result)
{
echo "query = ".$query."\n";
echo "mysql_errno = ".mysql_errno($link)."\n";
echo "mysql_error = ".mysql_error($link)."\n";
exit;
}
}
return $result;
}


function controle_access($nom_user, $password,$url_absolue)
{
$result = mysql_select_user($nom_user,$password);
if (mysql_num_rows($result)==0)
{
return false;
}
else
{
$_SESSION["nom_user"] = $nom_user;
$_SESSION["password"] = $password;
header("Location: ".$url_absolue);
exit;
}
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Accès securisé pour Site Comité d'entreprise KCI Medical</title>
</head>

<body>
<?php
$nom_user = isset($_POST['nom_user']) ? addslashes(htmlspecialchars($_POST['nom_user'])) : null;
$password = isset($_POST['password']) ? addslashes(htmlspecialchars($_POST['password'])) : null;
if(!empty($nom_user) && !empty($password))
{
// L'url fournit doit être absolue
$url_absolue = "[http://]".$_SERVER['HTTP_HOST']."/espace_membre/acceuil.php";

//$url = "https://www.google.fr/?gws_rd=ssl";
$result = controle_access($nom_user,$password,$url_absolue);

if (!$result)
{
echo "Vous n'avez pas été reconnu ! Vérifiez vos identifiants ...";
}
}
?>
<html>
<head>
</head>
<body>
<?php
if (isset($_POST['nom_user']) || isset($_POST['password']))
{
echo "Vous devez renseigner votre nom d'utilisateur et votre mot de passe pour vous connectez !";
}
?>

<form action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" method="post">
Username <input type="text" id="nom_user" name="nom_user" value=""></br>
Password <input type="text" id="password" name="password" value="">
<input type="submit" value"Valider" >
</form>
</body>
</html>
</body>
</html>
0
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Tu testes où exactement ?

Sur un PC local ? Sur Internet ?

Tu utilises Windows ou Linux ?

Ferme ton navigateur relance le puis
teste juste ceci

<?php
session_start();
?>
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
Je test sur internet directement sur le serveur les pages st heberger chez free et je sui sous windows XP pro Pack SP2.

et voila le résultat du test:

Warning: session_start() [function.session-start]: open(/mnt/103/sda/0/3/cekciwebmaster/sessions/sess_b81f36192efc63b9d491ba0a61e6ec2d, O_RDWR) failed: No such file or directory (2) in /mnt/103/sda/0/3/cekciwebmaster/test.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/103/sda/0/3/cekciwebmaster/test.php:2) in /mnt/103/sda/0/3/cekciwebmaster/test.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/103/sda/0/3/cekciwebmaster/test.php:2) in /mnt/103/sda/0/3/cekciwebmaster/test.php on line 2

Warning: Unknown(): open(/mnt/103/sda/0/3/cekciwebmaster/sessions/sess_b81f36192efc63b9d491ba0a61e6ec2d, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/mnt/103/sda/0/3/cekciwebmaster/sessions) in Unknown on line 0

voila le code:
<?php
session_start();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>

<body>
</body>
</html>
0
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Alors ca viendt de chez Free

Essai le code suivant

<?php
phpinfo();
?>

Et lance le sur le serveur Free ca va te donner la config de php

Regarde si les sessions sont activées
0
kikoi1 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
voila la config de free:

Session Support enabled
Registered save handlers files user

Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 100 100
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /mnt/103/sda/0/3/root/sessions /cache/sessions
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid Off Off
0