Skocz do zawartości

[PHP] Błąd w PHP, mysql_fetch_row i mysql_num_rows


Luksor

Rekomendowane odpowiedzi

Po prostu mysql_query zwraca false, czyli błąd zapytania SQLa. Może być np. problem z prefixami jeśli używasz jakiegoś gotowego systemu. Jakieś różnice w konstrukcji tabeli na serwerze i localhoście. Dużo.

Odnośnik do komentarza
Udostępnij na innych stronach

udało mi się poprawić index.php (zmieniłem nazwę użytkownika, bo była nie poprawna) Ale w niektórych stronach są jeszcze błędy. Nazwa użytkownika jest wszędzie taka sama, bo plik z ustawieniami jest includowany.

 

np. w pliku lista.php w tej lini wyskakuje błąd:

 

if(mysql_num_rows($query) == 1){

 

Nie wiem co jest nie tak, na serwerze działa a na localhoście nie.

 

EDIT:

 

bananaanim.gif Udało mi się napisać posta!!! Yeaah!!! bananaanim.gif

Odnośnik do komentarza
Udostępnij na innych stronach

zmieniłem na:

 

if(mysql_num_rows($query) == 1){

echo mysql_errno() . ": " . mysql_error(). "\n";

 

nie pokazuje błędu, cały czas tamten

 

już naprawiłem, ale teraz po wpisaniu danych w rejestracji strona się troszkę popsuła:

 

20){ echo "Za krótki nick! Prawidłowa długosć od 5 do 20 znaków."; }else{ if(!eregi('^[a-zA-Z0-9ęóš�łż�ćńĘÓĽ�ŁŻ�ĆŃ]+[a-zA-Z0-9ęóš�łż�ćńĘÓĽ�ŁŻ�ĆŃ_-]+[a-zA-Z0-9ęóš�łż�ćńĘÓĽ�ŁŻ�ĆŃ]+$', stripslashes($login))){ echo "Login zawiera niedozwolone znaki!"; }else{ if(strlen(trim($haslo1)) < 5 or strlen(trim($haslo1)) > 20){ echo "Za krótkie hasło! Prawidłowa długosć od 5 do 20 znaków."; }else{ $mysql = mysql_fetch_array(mysql_query("SELECT `login` FROM `konta` WHERE `login` = '$login'")); if($mysql != NULL){ echo "Nick jest zajęty! Wybierz inny."; }else{ if (preg_match('/^[_a-z0-9.-]*[a-z0-9]@[_a-z0-9.-]*[a-z0-9].[a-z]{2,3}$/e', $_POST['mail'])){ $mailheaders .= "Nadawca: luksor111@gmail.com"; $mailheaders.= "MIME-Version: 1.0\n"; $mailheaders.= "Content-Type: text/html;\n"; $mailheaders.= "\tcharset=\"UTF-8\"\n"; $mailheaders.= "Content-Transfer-Encoding: 8bit\n\n"; mail($_POST['mail'], "Rejestracja w serwisie!", "

 

Otrzymujesz ten email, poniewaz zarejestrowales sie w serwisie

luksor.koon.pl/sql

 

Oto dane konta:

Login: ".$login."

Haslo: ".$_POST['haslo1']."

Zapamietaj je!

 

Pozdrawiam,

Luksor.

 

", $mailheaders); $haselko = md5(sha1($haslo1)); $email = $_POST['mail']; $ip = $_SERVER['REMOTE_ADDR']; $zapytanie = "INSERT INTO `konta` (`id`, `login`, `haslo`, `email`, `ip`) VALUES ('', '$login', '$haselko', '$email', '$ip')"; $idzapytania = mysql_query($zapytanie); $data = date("d-m-Y H:i:s"); $plik = fopen("log.txt","a"); fwrite($plik,"".$data." - Zarejestrował się nowy użytkownik: ".$login."\n"); fclose($plik); $token=sha1($login); header("Location: rejestracja-koniec.php?l=$login&t=$token"); }else{ echo "Niepoprawny adres e-mail!"; } } } } } } } mysql_close($sql_conn); ?>

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

To widzę, ale i tak nie jest to cały kod tylko coś obciętego.

 

Poza tym, jak mu nie działa, niech poda błąd jaki się wywala - skoro nie pokazuje się błąd, znaczy, że wszystko działa, tylko źle zostało zaprogramowane.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...