Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] formularz do logowania nie działa
yahreck
post 14.10.2007, 11:33:04
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 12.10.2007

Ostrzeżenie: (0%)
-----


Przepisałem z mądrej książki dwa pliki:
1. login.php
  1. <?php
  2. switch ($do) {
  3.  
  4. case "authenticate":
  5. $connection = mysql_connect("mysql.adres_serwera", "moj_login", "moje_haslo")
  6. or die ("Couldn't connect to server.");
  7. $db = mysql_select_db("moja_baza", $connection)
  8. or die ("Couldn't select database.");
  9. $sql = "SELECT id 
  10. FROM users 
  11. WHERE username='$username' and password='$password'";
  12. $result = mysql_query($sql)
  13. or die("Couldn't execute query.");
  14. $num = mysql_numrows($result);
  15. if ($num == 1) {
  16. echo "You are a valid user!";
  17. echo "Your username is $username";
  18. echo "Your password is $password";
  19. } else if ($num == 0) {
  20. unset($do);
  21. echo "You are not authorized! Please try again.";
  22. include("login_form.inc");
  23. }
  24. break;
  25. default:
  26. include("login_form.inc");
  27. }
  28. ?>


2. login_form.inc
  1. <FORM ACTION="login.php?do=authenticate" METHOD="post">
  2. <table border=0>
  3. <tr>
  4. <td> <strong> Nazwa użytkownika </strong> </td>
  5. <td> <input type="text" name="username" size="10" maxsize="10"></td>
  6. </tr>
  7. <tr>
  8. <td> <strong> Hasło </strong> </td>
  9. <td> <input type="password" name="password" size="10" maxsize="10"></td>
  10. </tr>
  11. <tr>
  12. <td colspan="2" align="center"> <input type="submit" value="Zweryfikuj mnie"></td>
  13. </tr>
  14. </FORM>

W bazie danych utworzyłem tabelę users z trzema kolumnami:
- id
- username
- password

Gdy klikam na Zweryfikuj mnie, pola są czyszczone i nic się nie dzieje.
Co jest źle?

Ten post edytował yahreck 14.10.2007, 15:11:57


--------------------
Człowiek uczy się całe życie, ale i tak głupim umrze.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
yahreck
post 14.10.2007, 13:07:52
Post #2





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 12.10.2007

Ostrzeżenie: (0%)
-----


Cytat(cornholio666 @ 14.10.2007, 13:05:52 ) *
nie mysql_numrows tylko [manual\]http://pl2.php.net/manual/pl/function.mysql-num-rows.php\[/manual\]

Dziękuję bardzo za zauważenie tej literówki, moja przeoczenie, ale niestety nie pomogło.

Cytat(Cysiaczek @ 14.10.2007, 13:15:11 ) *
Popraw proszę tytuł topiku na zgodny z zasadami forum Przedszkole

Z miłą chęcią. Tylko jak go teraz zmienić?

Cytat(-agemlonZ- @ 14.10.2007, 13:18:22 ) *
hehe ale się zapędziłeś biggrin.gif Zamiast się nauczyć to ty przepisujesz.. zal.pl

Najlepiej uczyć się na przykładach.


--------------------
Człowiek uczy się całe życie, ale i tak głupim umrze.
Go to the top of the page
+Quote Post
Hazel
post 14.10.2007, 13:14:22
Post #3





Grupa: Zarejestrowani
Postów: 492
Pomógł: 33
Dołączył: 16.08.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


1. Jakby Wam była potrzebna wiedza, to mysql_numrows() jest aliasem mysql_num_rows() i działa tak samo. Więc nie miało prawa pomóc.
Pierwszym, co mi się rzuciło w oczy, jest stosowanie krótkich nazw zmiennych ($password zamiast $_POST['password']). Przy wyłączonym register_globals to nie będzie działać. Jeśli nie o to chodzi, to chyba nie wiem, albo niedostatecznie dokładnie przejrzałem kod.

2. No jasne, ja też ucząc się, przepisywałem książki. Uważam to za zdecydowanie najlepszy sposób, bo nie trzeba wkuwać niczego na pamięć - wszystko widać w praktyce.

3. Nazwę tematu możesz zmienic, edytując pierwszego posta smile.gif

4. Ale śmietnik w temacie. Takie talenty się wypowiadają na forum o php, że aż strach myśleć. A nieraz mi sie wydaje, że to ja jestem słaby, cienki, głupi i niedouczony...

Ten post edytował Hazel 14.10.2007, 13:16:32


--------------------
Go to the top of the page
+Quote Post

Posty w temacie
- yahreck   [php] formularz do logowania nie działa   14.10.2007, 11:33:04
- - cornholio666   nie mysql_numrows tylko http://pl2.php.net/manual/...   14.10.2007, 12:05:52
- - Cysiaczek   Popraw proszę tytuł topiku na zgodny z zasadami fo...   14.10.2007, 12:15:11
- - -agemlonZ-   hehe ale się zapędziłeś Zamiast się nauczyć to ty...   14.10.2007, 12:18:22
- - agemlonZ   sorka ale ten post wczesniej to ja napisalem pszep...   14.10.2007, 12:19:25
- - in5ane   Powiem Ci tylko jedno.. nie wtrącaj się,...   14.10.2007, 12:31:20
- - agemlonZ   kurcze pieczone co rzes z nieba spad incostam soct...   14.10.2007, 12:32:48
- - in5ane   Raport kolego poleciał. @edit: Tak się ...   14.10.2007, 12:36:22
- - cornholio666   Cytat(agemlonZ @ 14.10.2007, 13:32:48...   14.10.2007, 12:37:14
- - agemlonZ   jaki report. a ty dla mnie to pierd w morde jezusi...   14.10.2007, 12:38:22
- - yahreck   Cytat(cornholio666 @ 14.10.2007, 13:05...   14.10.2007, 13:07:52
|- - Hazel   1. Jakby Wam była potrzebna wiedza, to mysql_...   14.10.2007, 13:14:22
- - yahreck   Miałem trochę (kilka lat?) przerwy w pisaniu kodu ...   14.10.2007, 14:57:27
- - cornholio666   jak masz w adresie ?do=cos to nie ma bata zeby ko...   14.10.2007, 15:16:19
- - Hazel   [PHP] pobierz, plaintext <?phpswitch($_GET...   14.10.2007, 15:21:55
- - yahreck   Dzięki Zaczyna działać, tzn. wchodz...   14.10.2007, 15:32:56
- - Hazel   Dobrze miałeś w pierwotnej wersji, tylko przed tym...   14.10.2007, 16:22:29
- - yahreck   Dziękuję wszystkim za pomoc. Pomogło.   14.10.2007, 17:13:36


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 16:55