|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
Bonjour,
Je voudrais limiter l'accès de certaines pages d'un site en php. Pour cela je veux interroger une base de données SQL server dans laquelle j'ai entré deux login(login) et deux mots de passes (pwd). J'arrive à les afficher, donc à lire la table. Par contre, mon programme qui demande à l'utilisateur de s'identifier ne fonctionne pas comme je le veux. Il envoit bien les données, par contre il sort du if sachant que je tape le bon mot de passe. Voici mon code : Code :
Merci d'avance. |
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
quel est le message qui s'affiche quand tu tapes un bon mot de passe ?
__________________
Modérateur PHP |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
Voici le message que j'ai dans tous les cas : "la connexion a bien été effectuéTon Pass ne correspond pas à celui de la BDD ".
|
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Tu as bien mis les mots de passes en clair dans la base de données?
Essaie ca: Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
la connexion a bien été effectué
password tape dans le cadre: inpt password dans bdd : inpt Ton Pass ne correspond pas à celui de la BDD Les mots de passes sont effectivement bien les mêmes. Il y a donc un pb dans le if. C'est comme s'il n'arrivait pas à comparer les deux chaines de caractères. Peut être que la syntaxe du if n'est pas bonne. Je les ai déclaré tous les deux en temps que VARCHAR taille 10. Peut être qu'il y a d'autres choses à déclarer. |
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Autre solution :
Code :
|
||
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
la connexion a bien été effectué
string(4) "inpt" password tape : string(4) "inpt" password dans bdd : Ton Pass ne correspond pas à celui de la BDD |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Ouh la...
Y a eu un probleme identique il y a une heure et la personne s'était trompée en copiant son script dans le forum (en fait il modifiait son erreur de frappe du coup on voyait pas l'erreur) Peux-tu remettre le code exact (juste copier coller) ici (avec les var_dump) ? |
|
|
00
|
|
|
#9 | ||||
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
voici mon code php : exemple1.php
Code :
Voici la page html créée précédemment : Code HTML :
|
||||
|
|
00
|
|
|
#10 | ||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
C'est bizarre tu as deux mssql_fetch_assoc()
l'exemple que je te donnais avec les var_dump il ne fallait pas le copier/coller entièrement, tu te retrouves à faire un fetch deux fois de suite, du coup la seconde fois tes variables sont bel et bien différentes. Fais ca: Code :
Il devrait meme te mettre une erreur a propos des header() already sent |
||
|
|
00
|
|
|
#11 | |
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
Ca a l'air de fonctionner cette fois. Il me mets ça :
Citation:
|
|
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
De rien !
mais je ne comprends pas pourquoi ca ne marchait pas avant puisqu'on n'a rien changé Autrement, tu utilises mal les sessions. Il ne faut rien envoyer au navigateur avant d'utiliser un session_start() Pour ca, il faut donc faire tous tes tests en php d'abord, et ensuite, quand tu as tout réussi tu crées la page html. Il faut donc retirer tous le html avant tes tests en php, et ne faire aucun echo avant de faire un session_start(). Bon courage |
|
|
00
|
|
|
#13 |
|
Membre du Club
![]() |
si ta un probleme ac tes sessions_start() c juste ke tu doi les placer tt en haut de ta page avant tout le reste mm le html en gro tu rentre : <? session_start() ?>
|
|
|
00
|
|
|
#14 |
|
Membre régulier
![]() Inscription : février 2006 Messages : 349 ![]() |
Il y a quelque chose qui m'intrigue dans le code......
Je sais je débute dans ce langage aussi mais au lieu de mssql_connect, ce n'est pas mysql_connect ? Juste par curiosité....
__________________
Programmer c'est comme gravir une montagne... Il faut procéder par étapes... (? auteur ?) Un seul être vous manque et tout est dépeuplé. Lamartine (merci chat hotplug ^^) |
|
|
00
|
|
|
#15 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
mysql_connect() permet de se connecter au SGBD MySQL
mssql_connect() permet de se connecter au SGBD MS SQL Server |
|
|
00
|
|
|
#16 | |||
|
Invité de passage
![]() Inscription : juin 2007 Messages : 28 ![]() |
Bonjour,
J'ai juste changé d'ordinateur, je suis toujours sur SQL Server, c'est juste le nom qui as changé. Mais la reconnaissance du mot de passe ne marche pas cette fois !!! Si qq voit d'où peut venir l'erreur, je suis preneur. Merci. Code :
Citation:
|
|||
|
|
00
|
|
|
#17 | |
|
Membre régulier
![]() |
Citation:
|
|
|
|
00
|
|
|
#18 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Je dirai même qu'il y en a quatre en trop (deux avants, deux apres) mais cette erreur tu l'avais déjà eue un peu plus haut dans ton message, tu aurais pu t'en rendre compte (c'était le but des var_dump() que je t'avais fait mettre!)
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com