Aller au contenu

Connexion sur mon site


Etamine

Messages recommandés

Membre, Le Dieu Lapin, 36ans Posté(e)
Lapinkiller Membre 10 149 messages
36ans‚ Le Dieu Lapin,
Posté(e)

C'est ton champs 'or' qui pose problème :rtfm:

or est un mot clé du langage SQL donc ca fait bugguer ta requete :o°

je le sais car j'ai eu le même problème quand j'avais commencé à developper un jeu :yahoo:

j'avais aussi chercher un moment pourquoi ca bugguait

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant
Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

Je peux aller sur mon site, pas de problème. Mais ce que je veux c'est créer une page connexion sur mon site et qu'elle marche.

Mais merci quand même :rtfm:

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Beni Membre 70 messages
Baby Forumeur‚
Posté(e)

Je crois que j'ai mal compris la question, champ de connections et problème de connections :rtfm: Désoler de la rep' inutile :o°

Lien à poster
Partager sur d’autres sites

Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

Je vois pas pourquoi ce serait ça, il y en a pas sur la page connexion.php...

Je vais quand même essayer.

Mais je remplace 'OR' par quoi?

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Adenora Membre 5 400 messages
Posté(e)

J'ai du mal avec les négations dans les requêtes.

J'aurai plutôt mis ça :

		//On regarde si le login ou le mail existe déjà
	$req = mysql_query("SELECT * FROM infoscompte  WHERE login='".$login."' or email="'.$email.'"") or die(mysql_error());;
	$ligne  = mysql_num_rows($req);
	$data = mysql_fetch_array($req);

	//  si on n'obtient pas de réponses, alors le login ou l'email n'est pas déjà  utilisé.
	if ($ligne==0) 
	{
//On insère les  informations dans la base de données.

Pour login='".$login."', c'est une apostrophe puis une guillemet et l'inverse pour fermer. (Un vrai bordel ces trucs d'ailleurs :o° )

(Tiens, de nouvelles emotes :rtfm: )

C'est ton champs 'or' qui pose problème

Héhé, un lapin sans lunettes.

*Est déjà sortie*

Lien à poster
Partager sur d’autres sites

Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

En fait j'ai l'impression que ça marche mais quand j'envoie le formulaire, la page charge, charge et:

'Page Web inaccessible

Il se peut que la page Web à l'adresse http://localhost/tests/index.php soit temporairement inaccessible ou qu'elle ait été déplacée de façon permanente à une autre adresse Web.'

Ca plante :rtfm:. donc je pense que le script est bon mais qu'il y a un autre problème. Surtout que en cherchant partout sur internet, j'ai trouvé d'autres script du genre et qu'il y a le même problème. En plus si ça marche chez toi Adenora...

J'ai pensé que ça pouvait être un problème d'extension de WAMP.

PS: j'ai testé sous Firefox et google chrome.

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Adenora Membre 5 400 messages
Posté(e)

J'ai aussi Wamp.

Alors si c'est un soucis avec Wamp, je ne saurais dire lequel.

Et j'ai vu plusieurs personnes ayant ce problème (mais sur des sites internet) et c'était du côté du parefeu.

Là, je sèche. :rtfm: (enfin, après les larmes de l'emote)

Lien à poster
Partager sur d’autres sites

Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

:rtfm:

Et sinon ça peut pas être un problème dans une extension de wamp?

Lien à poster
Partager sur d’autres sites

Membre, 35ans Posté(e)
Zilex Membre 91 messages
Baby Forumeur‚ 35ans‚
Posté(e)

Question con, mais au vu de cette screenshot :

capturerqr.jpg

Il semblerait que tu travails sur un répertoire nommé "jeu" donc http://localhost/jeu/.

Or ton erreur part du répertoire tests ( http://localhost/tests/index.php).

N'y aurait il pas un problème dans l'attribut "action" de ton formulaire ?

Lien à poster
Partager sur d’autres sites

Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

Non non :yahoo:

C'est juste que je me suis un peu mélangé dans les Screenshots et tout. :rtfm:

Je ne pense pas que le problème vienne de ça. Merci quand même :o°

Je vais modifier le code et le simplifier. Je vais voir ce que ça donne...

Lien à poster
Partager sur d’autres sites

Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

Bon je viens de comprendre. :rtfm:

J'ai mis ça comme code:

<?php
$login=$_POST['login'];
$pass=md5($_POST['pass']);
// Connexion à la base de données
$host = "localhost"; // voir hébergeur
$user = "root"; // vide ou "root" en local
$pass = ""; // vide en local
$bdd = "jeu"; // nom de la BD
// connexion
@mysql_connect($host,$user,$pass)
  or die("Impossible de se connecter");
@mysql_select_db("$bdd")
  or die("Impossible de se connecter");

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

 $data = mysql_fetch_assoc($req);

 if($data['pass_md5'] != $pass) {
$erreur= '<p>Mauvais login / password. Merci de recommencer</p>';

exit;
 }
 else {
session_start();
$_SESSION['login'] = $login;

$erreur= 'Vous etes bien logué';
// ici vous pouvez afficher un lien pour renvoyer
// vers la page d'accueil de votre espace membres 
 }	
}
else {
 $erreur= '<p>Vous avez oublié de remplir un champ.</p>';

  exit;
}


?>

éa marche mais le problème c'est que pour se connecter, il faut le mot de passe qui se trouve dans ma base de données et qui ressemble à ça: 46za54ert687rtttr564retgdf654kyu (en gros :yahoo: ). J'ai essayé et ça ne marche pas avec le mot de passe du visiteur. Alors si il doit se rappeler de ce mot de passe... :o°

Si quelqu'un connaisait un alternative...

Merci :o°

Lien à poster
Partager sur d’autres sites

Membre, 41ans Posté(e)
Mopral Membre 12 057 messages
Baby Forumeur‚ 41ans‚
Posté(e)
Bon je viens de comprendre. :o°

éa marche mais le problème c'est que pour se connecter, il faut le mot de passe qui se trouve dans ma base de données et qui ressemble à ça: 46za54ert687rtttr564retgdf654kyu (en gros :o° ). J'ai essayé et ça ne marche pas avec le mot de passe du visiteur. Alors si il doit se rappeler de ce mot de passe... :yahoo:

Si quelqu'un connaisait un alternative...

Merci :D

En fait, il s'agit du mot de passe crypté en MD5, par souci de sécurité.

Rappelle-toi, on t'a fait utiliser la fonction "md5" lors de l'ajout dans la BDD.

Donc, pour tester si le mot de passe est bon, il faut également crypter celui entré lors du login, donc remplacer :

  if($data['pass_md5'] != $pass) {
 $erreur= '<p>Mauvais login / password. Merci de  recommencer</p>';

 exit;
  }

par :

  if($data['pass_md5'] != md5($pass)) {
  $erreur= '<p>Mauvais login / password. Merci de  recommencer</p>';

  exit;
}

Enfin, je crois que c'est ca, mais je suis sûr de rien :rtfm:

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Adenora Membre 5 400 messages
Posté(e)

Justement, le mot de passe est encodé et c'est le but. D'où le md5. C'est pour éviter que tu vois les mots de passe et que des pirates les voient aussi. :rtfm:

Par contre, si ta requête ne donne rien => le login n'existe pas dans la base de données

Tu risques d'avoir une erreur dans ton code.

Je trouve que ma méthode est mieux, mais bon si ça marche pas chez toi. :yahoo:

Edit :

$pass=md5($_POST['pass']);

Déjà encodé Mopral. :o°

Lien à poster
Partager sur d’autres sites

Membre, 41ans Posté(e)
Mopral Membre 12 057 messages
Baby Forumeur‚ 41ans‚
Posté(e)

Ah oui, encodé a sec :rtfm:

Mais je crois avoir vu l'erreur au passage

$login=$_POST['login'];
 $pass=md5($_POST['pass']);
// Connexion à la base de données
$host  = "localhost"; // voir hébergeur
$user = "root"; // vide ou "root"  en local
$pass = ""; // vide en local
$bdd = "jeu"; // nom de la  BD

Tu utilise 2 fois la variable $pass, du coup, elle est toujours vide :o°

Lien à poster
Partager sur d’autres sites

Membre, Posté(e)
Adenora Membre 5 400 messages
Posté(e)

Oui, il faudrait utiliser un autre nom de variable soit pour le mot de passe de la connexion au site, soit pour le mot de passe de la connexion à la base de données.

Lien à poster
Partager sur d’autres sites

Membre, 31ans Posté(e)
Etamine Membre 92 messages
Baby Forumeur‚ 31ans‚
Posté(e)

Effectivement ça marche! :rtfm:

Merci beacoup à tous pour toutes vos réponses.

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×