telepawel
11.05.2003, 18:10:27
Witam
kto pomoze mi poprawic ten kod ?
Jest formularz ktory posiada dwie zmienne
login oraz password nastepnie przesyla on
do pliku zaloguj.php te dane
plik pobiera z mysql`a nazawe uzytkownika z tabeli oraz
jego haslo, porownuje z tymi ktore dostal z formularza.
Jezeli sa poprawne nastepuje echo "dobre";
jezeli zle to echo "zle";
oto kod
===================
<?
require("conf.dat");
$connection = mysql_connect($serwer, $konto, $haslo);
$wybierz = mysql_select_db($baza, $connection);
mysql_query($wybierz);
$sprawdz1 = "SELECT login FROM tabela WHERE login='$login'";
$sprawdz2 = "SELECT password FROM tabela WHERE password='$password'";
$rezultat1 = mysql_query($sprawdz1);
$rezultat2 = mysql_query($sprawdz2);
if ($user==$rezultat1 && $password==$rezultat2){
echo "DOBRE";
}else{
echo "DUPA";
}
?>
======================
Jabol
11.05.2003, 18:18:35
umieszczam ci tutaj podpowiedzi w kodzie więc go perześledź[php:1:076f5bc10e]<?
require("conf.dat");//pokarz ten plik
$connection = mysql_connect($serwer, $konto, $haslo);
$wybierz = mysql_select_db($baza, $connection);//tyle starczy
//nie musisz robić z tym query!! -> mysql_query($wybierz);
$sprawdz1 = "SELECT login FROM tabela WHERE login='$login'";
$sprawdz2 = "SELECT password FROM tabela WHERE password='$password'";
$rezultat1 = mysql_query($sprawdz1);
$rezultat2 = mysql_query($sprawdz2);
list($userstor)=mysql_fetch_row($rezultat1);
list($passstor)=mysql_fetch_row($rezultat2);
if ($user==$userstor && $password==$passstor){
echo "DOBRE";
}else{
echo "DUPA";
}
?>
[/php:1:076f5bc10e]
telepawel
11.05.2003, 18:28:09
nie dziala
w require("conf.dat") sa zmienne serwer, $konto, $haslo
a moze tak:
$userstor=list(mysql_fetch_row($rezultat1));
$passstor=list(mysql_fetch_row($rezultat2));
telepawel
11.05.2003, 18:57:12
Takie wartosci zwraca
Resource id #2
Resource id #3
Jabol
11.05.2003, 19:01:46
albo spróbuj tak
Cytat
[php:1:8e00d48902]<?
require("conf.dat");//a masz tutaj na pewno baze (imie??)
$connection = mysql_connect($serwer, $konto, $haslo) or die('connection Error');
$wybierz = mysql_select_db($baza, $connection) or die('selection Error');//tyle starczy
//nie musisz robić z tym query!! -> mysql_query($wybierz);
$sprawdz1 = "SELECT login, password FROM tabela WHERE login='$login'";
$rezultat1 = mysql_query($sprawdz1) or die('Query error');
$userstor=mysql_fetch_row($rezultat1);
if (($user==$userstor[0]) && ($password==$userstor[1])){
echo "DOBRE";
}else{
echo "DUPA";
}
?>
[/php:1:8e00d48902]
telepawel
11.05.2003, 19:13:04
Query error
nazwa bazy sexibielizna
telepawel
11.05.2003, 19:14:21
dokladnie z formularza przechodzi
$zlogin oraz $zpassword
mysql ma
baza sexibielizna, tabela sexibielizna
kolumna uzytkonikiem nazywa sie login a z haslem password
Jabol
11.05.2003, 19:14:29
zwróć uwagę na .mysql_error(), które dodałem
Cytat
[php:1:5a6255c799]<?
require("conf.dat");//a masz tutaj na pewno baze (imie??)
$connection = mysql_connect($serwer, $konto, $haslo) or die('connection Error'.mysql_error());
$wybierz = mysql_select_db($baza, $connection) or die('selection Error'.mysql_error());//tyle starczy
//nie musisz robić z tym query!! -> mysql_query($wybierz);
$sprawdz1 = "SELECT login, password FROM tabela WHERE login='$login'";
$rezultat1 = mysql_query($sprawdz1) or die('Query error'.mysql_error());
$userstor=mysql_fetch_row($rezultat1);
if (($user==$userstor[0]) && ($password==$userstor[1])){
echo "DOBRE";
}else{
echo "DUPA";
}
?>
[/php:1:5a6255c799]
telepawel
11.05.2003, 19:18:38
Jabol jestes Mistrzem przez wielkie M
nie bede mowil co bylo przyczyna bo lamerska sprawa

(czeski blad)
Jabol
11.05.2003, 19:23:25
Dzieki :oops:
Dodam tylko dla innych. Ogólna metodyka poprawiania błędów polega na
:arrow: znalezieniu miejsca błędu
:arrow: znalezieniu przyczyny błędu
:arrow: zorientowaniu się o co chodzi
:arrow: zlikfidowania przyczyny błędu
PS.
Zmień nazwe pliku conf.dat na nazwe z rozszerzeniem .php bo taką strone podejrzewam każdy by ci mógł rozwalić w 5 min. Chodzi tutaj oto, że większość serwerów www bez dodatkowej konfiguracji wyświetliłaby kod tego pliku, a zatem również login, hasło i nazwe bazy!!!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.