[php] probleme liaison base de données

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 ;)
Configuration: Windows Vista
Internet Explorer 7.0

36 réponses

Résumé de la discussion

Problème de liaison entre la base de données et le site, avec des scripts PHP utilisant mysql_connect et un accès à sql.free.fr, entraînant des échecs lors des inscriptions et de l'authentification. Des réponses suggèrent de revoir le code et les redirections, de corriger les identifiants et l'hôte, d'utiliser une authentification et une navigation vers les pages membres ou index, selon le contexte. Plusieurs participants évoquent la distinction entre PHP4 et MySQL, l'utilisation de pages PHP vs HTML, et l'erreur possible chez l'hébergeur Free, avec des conseils comme tester l'inscription, vérifier l'hôte et les permissions.

Bobot (l’IA à votre service)
  1. A quel endroit il te le marque ?

    Est ce que tu peut m'ouvrir un compte et m'envoyer les accès par mail stp ?

    Merci

    Yohan
    1. j'ai crée un deuxieme compte et en fait le probleme c'est qu'il quitte pas la première session avec laquelle tu t'es identifié.

      1er essai : je me connecte avec le pseudo gipn56 é aprè il me met bonjour gipn56

      2ème essai : je me connecte avec le pseudo ddd et après il me met bonjour gipn56
      1. j'ai rien recu ni dans le courrier normal ni dans les indésirables.
        Envoi-les sur gipn56-@-free.fr

        (sans les -)
        1. Salut,

          Il faut que tu m'envoi tes fichiers la je ne pourrait te dire sans voir les bons fichiers.

          Pour moi, il n'y a pas de doute c'est en rapport avec tes sessions PHP4.

          Yohan
          1. Non c'est bon en fait j'avais le fichier en plusieurs exemplaire et j'avais pas envoyé le bon sur le ftp donc c'est bon tout est parfait.

            Sauf que j'ai un nouveau probleme :

            je fais des tests depuis tout a l'heure et j'arrive a m'identifier et quand j'atteris sur la page indexclient.php il me met bonjour gipn56. Donc jusque ici pas de probleme.

            Mais j'ai un copain qu'a crée un compte (pseudo : laboule) et quand il s'identifie ca lui marque bonjour gipn56 aussi !?
            1. Excuse enleve les - mais pas celui qu'il y a entre le dif et le fm sinon marchera pa ! lol
              1. Salut,

                Renvoi moi les fichiers en ZIP sur ylerin-@-dif-fm.com.

                Enleve les - pour m'envoyer le message
                1. j'ai remplacé comme tu m'as dit dans le fichier connect2.php membre.php par indexclient.html mais il me renvoit toujours sur membre.php
                  1. Salut,

                    Déjà, je pense qu'il va faloir que tu repense ton code pour savoir vraiment ce que tu veux faire et comment tu veux le faire. Ok, tu veux renvoyer vers la page indexclient.html mais l'HTML ne supporte pas le php à moins que ce ne soit derrière une page php renommé par l'URL rewriting ?

                    Sinon ta page indexclient est en php, tu as juste à faire un include dans ta page et puis voila.

                    Pour ce qui est de la redirection, dans ton fichier connect2.php, tu remplace dans le code javascript, membre.php par indexmembre.html

                    Yohan
                    1. En fait la quand je m'identifie je suis envoyé sur la page membres.php alors que moi je voudrais etre envoyé sur la page indexclient.html en incluant le code de membres.php dans l'indexclient.html
                      1. Si j'ai bien compris ta logique, il faudrait que tu adapte ces codes à tes index, soit index soit indexmembre

                        Yohan
                        1. ce que je veux dire c'est qu'il faut le mettre dans quelle page ? ou dans quel fichier php ?
                          • 1
                          • 2