[php] probleme liaison base de données

Fermé
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 - 7 avril 2007 à 18:30
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 - 8 avril 2007 à 20:49
Bonjour,

J'ai un petit probleme avec mon site (projet pour le bac). Il semblerait qu'il y ait un probleme de liaison entre la base de données é le site. voir : gipn56.free.fr/inscription

Essayez de vous inscrire vous verez le probleme.

Ci-dessous vous verez les scripts de mes différents fichiers php :

***conf.php***

<?
$host="sql.free.fr";
$user="gipn56";//nom d'utilisateur
$pass="mon mot de pass";//mot de pass
$base="gipn56";//nom de la bases de données
$connect=mysql_connect($host,$user,$pass);
mysql_select_db($base, $connect);
?>


***connect.php***

<?php
if($action=="deconnexion"){

session_start();


$_SESSION = array();


session_destroy();

}
?>

<form action="connect2.php" method='post'>
<table align="left" border="0" class="text1">
<tr>
<td>Pseudo :</td>
<td><input type="text" name="login"></td>
</tr>
<tr>
<td>Mot de Passe :</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Connexion"></td>
</tr>
</table>
</form></p>


***connect2.php***

<?
require("conf.php");

if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['password'])) {
extract($_POST);
// on recupère le password de la table qui correspond au login du visiteur
$sql = "select password from membres_tbl where login='".$login."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

$data = mysql_fetch_assoc($req);

if($data['password'] != $password) {
echo '<SCRIPT LANGUAGE="JavaScript">
document.location.href="connect.php" </SCRIPT>';
exit;
}
else {
session_start();
$_SESSION['login'] = $login;

echo '<SCRIPT LANGUAGE="JavaScript">
document.location.href="membres.php" </SCRIPT>';
}
}
else {
echo '<SCRIPT LANGUAGE="JavaScript">
document.location.href="connect.php" </SCRIPT>';
exit;
}
?>


***inscription.php***

<SCRIPT LANGUAGE="JavaScript">
function VerifForm(formulaire)
{
adresse = formulaire.mail.value;
var place = adresse.indexOf("@",1);
var point = adresse.indexOf(".",place+1);
if ((place > -1)&&(adresse.length >2)&&(point > 1))
{
formulaire.submit();
return(true);
}
else
{
alert('Entrez une adresse e-mail valide!!');
return(false);
}
}
</SCRIPT>
<form action="inscription2.php" method='post' onSubmit="return(VerifForm(this))">
<table width="280" border="0" class="text1">
<tr>
<td width="125" height="24">Pseudo :</td>
<td width="145"> <div align="left">
<input type="text" name="login">
</div></td>
</tr>
<tr>
<td height="24">Mot de Passe :</td>
<td> <div align="left">
<input type="password" name="password">
</div></td>
</tr>
<tr>
<td>Adresse Email :</td>
<td><input type="text" name="mail"></td>
</tr>
<br>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="S'inscrire"></td>
</tr>
</table>
</form></p>


***inscription2.php***

<?
include('conf.php');
$login= $_POST['login'];
$password= $_POST['password'];
$mail= $_POST['mail'];

$requete=mysql_query("INSERT INTO membres_tbl VALUES('','$_POST[login]','$_POST[password]','$_POST[mail]','$_POST[nom]','$_POST[prenom]','$_POST[adresse]','$_POST[ville]','$_POST[codepostal]')");
echo ' <p>Vos informations ont bien été ajoutés, <a href="index.html">cliquez ici</a> pour vous identifier.</p>
';
?>


***membres.php***

<?
session_start();

if(!isset($_SESSION['login'])) {
echo '<SCRIPT LANGUAGE="JavaScript">
document.location.href="connect.php" </SCRIPT>';
exit;
}
?>
<?php echo '<p>Bonjour ',$_SESSION['login'],'</p>';
?>
<a href="connect.php?action=deconnexion">Déconnexion</a>



==> voila vous avez tout. Merci pour vos réponses ;)
A voir également:

36 réponses

Salut !

Met ca

***connect.php***

<?php
if($action=="deconnexion"){

$Connect = mysql_connect($host, $user,$pass) or die (mysql_error());
$Select_Db = mysql_select_db($Connect,$base) or die (mysql_error());


$_SESSION = array();


mysql_close();

}
?>

En faite tu fesait une ouverture de session php 4 au lieu de connexion MySQL
0
Excuse je suis a l'ouest !

Vérifie tes identifiants de connexion sinon voit avec free
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 18:46
merci pour ta réponse.

Mais le probleme vient des scripts d'inscription.
Essaye de t'inscrire la : http://gipn56.free.fr
tu veras le message d'erreur ;)
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 18:47
j'ai les bons identifiants mais je ne sais pas si j'ai le bon host.
J'ai essayé avec des hébergeurs avec qui ca marchait d'habitude et d'un coup ca s'est mis a plus marcher.
0

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

Posez votre question
Chez d'autres hébergeurs que chez free ca fonctionne ?
0
Essaye ca pour voir le message d'erreur :

<?
$host="sql.free.fr";
$user="gipn56";//nom d'utilisateur
$pass="mon mot de pass";//mot de pass
$base="gipn56";//nom de la bases de données
$connect=mysql_connect($host,$user,$pass) or die (mysql_error());
mysql_select_db($base, $connect) or die (mysql_error());
?>
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 21:05
merci l'inscription remarche :)

Mais j'ai un autre probleme maintenant c'est lors de l'identification mais la j'ai aucune idée d'où ca vient
0
Quel est le problème lors de l'inscription ?
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 21:12
non l'inscription marche.

C'est pour s'identifier j'ai ce message :

Warning: session_start() [function.session-start]: open(/mnt/146/sdb/7/4/gipn56/sessions/sess_798fd9e6b09144f3f59d3fde34554a72, O_RDWR) failed: No such file or directory (2) in /mnt/146/sdb/7/4/gipn56/membres.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/146/sdb/7/4/gipn56/membres.php:2) in /mnt/146/sdb/7/4/gipn56/membres.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/146/sdb/7/4/gipn56/membres.php:2) in /mnt/146/sdb/7/4/gipn56/membres.php on line 2


lol
0
Est ce que ce répertoire existe :

gipn56/sessions/

Yohan
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 21:18
merci t'es un génie :)

par contre j'aimerais intégrer le script de l'identification dans la page.
ce que je veut dire c'est que a la place de l'espace pour l'identification je vous qu'il affiche 'bienvenue pseudo" et déconnexion

mais je sais pas comment intégrer le script dans la page
0
Je ne comprend pas trop ce que tu veux faire la
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 21:28
quand tu vas sur mon site a gauche sous le menu ya l'espace client où on s'identifie.

En fait je veux qu'après s'être identifié dans cet espace il yé marqué un message de bienvenue...

Je veux que la page a laquelle a accès le client soit réservé qu'on puisse y accèder qu'après etre identifié.

Parce que la quand je m'identifie après il m'envoi sur la page membres.php (voir script)
0
Et bien si ta session PHP4 est ouverte, tu autorise la page sinon tu refoulle.
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 21:37
pour parler plus francais lol

Commnt faire pour intégrer le script membres.php dans le script de la page indexclient.html ?

Comment faire pour que si l'identification est valide l'utilisateur est envoyé vers celle ci et dans le cas contraire qu'il soit renvoyé sur la page index.html ?
0
Salut,

Ton script membre il faut que tu l'inclue avant tout code html de ta page et l'echo du nom d'utilisateur tu fait l'echo ou tu veux dans ta page.

Pour l'autre point, tu fait un if ( login_client == login_base && md5(pass_client) == pass_base)
{
session_start();
$_SESSION['login'] = login_client;
}

if (@$_SESSION['login'] == '')
{
header("location:index.html");
}
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 21:54
le script que tu m'as donné il faut que je le mette ou ?
0
Ce sont des morceaux de script, après à toi d'adapter selon ton code
0
Ce sont des morceaux de code a toi de l'adapter à tes codes
0
gipn56 Messages postés 47 Date d'inscription samedi 7 avril 2007 Statut Membre Dernière intervention 24 août 2009 1
7 avril 2007 à 22:04
ce que je veux dire c'est qu'il faut le mettre dans quelle page ? ou dans quel fichier php ?
0