bobo Opublikowano 24 Sierpnia 2006 Udostępnij Opublikowano 24 Sierpnia 2006 Mam taki sobei skrypt: w pliku login.php <form method="post" action="login_sprawdza.php"> <table border="0" cellspacing="0" cellpadding="2"> <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">Login:<input type="text" name="login2" size=20></div></td> </tr> <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">haslo:<input type="text" name="haslo2" size=20></div></td></tr> <td colspan="2" align="center"><input type="submit" class="textbox2" value="Zaloguj"> </table> </form> w pliku sprawdza.php <?php include "urzytkownicy.php"; if (strstr($urzytkownicy, "$_POST[login2]$_POST[haslo2]")) { echo "Zostałeś zalogowany"; } else { echo "nie $_POST[login2]$_POST[haslo2]"; } ?> w pliku urzytkownicy.php <?php $urzytkownicy= include "lista.txt"; ?> w lista.txt boboA Według tego skryptu wynika że gdy wpisze do formularza logowania: login:bobo a haslo:A to powinien wyskoczyc mi napisz Zostałeś zalogowany, jednak gdy tak wpisze wyskakuje mi nie boboA. Doszłem do tego że problem tkwi w pliku urzytkownicy.php a dokladniej w includowaniu pliku lista.txt bo gdy wpisze boboA zamiast include "lista.txt" to wszystko jest ok. ALe ja potrzebuje coś takiego żeby do zmiennej $urzytkownicy zdefiniowanej w pliku urzytkownicy.php została przypisana wartość z pliku lista.txt. Wie ktoś jak to zrobić? Z góry thx :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
blackmaul Opublikowano 24 Sierpnia 2006 Udostępnij Opublikowano 24 Sierpnia 2006 Sproboj w pliku uzytkownicy stworzyc tablice z uzytkownikami i potem w skrypcie przy pomocy in_array(); sprawdzac czy dany user istnieje Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 24 Sierpnia 2006 Filar Społeczności Udostępnij Opublikowano 24 Sierpnia 2006 Może zastąp: "$_POST[login2]$_POST[haslo2]" tym: trim("$_POST[login2]$_POST[haslo2]") Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bobo Opublikowano 24 Sierpnia 2006 Autor Udostępnij Opublikowano 24 Sierpnia 2006 A co robi funkcja trim()? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 24 Sierpnia 2006 Filar Społeczności Udostępnij Opublikowano 24 Sierpnia 2006 Usuwa z początku i końca stringa znaki typu twarda spacja, tabulator, nowa linia, powrót karetki czy null. Następnym razem sam sobie poszukaj na php.net - tam przecież jest wyszukiwarka funkcji. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bobo Opublikowano 24 Sierpnia 2006 Autor Udostępnij Opublikowano 24 Sierpnia 2006 Ale i tak nie działa :| A z php.net nie skorzystałem bo nie znam angielskiego:| Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 24 Sierpnia 2006 Filar Społeczności Udostępnij Opublikowano 24 Sierpnia 2006 To może zmień ten cały skrypt na coś bardziej sensownego? Z pamięci będzie: <?php $loginy = array ( 'user1' => 'aaa', 'bobo' => 'A' ); $zalogowany = false; if ( @$_POST['login2'] && @$_POST['haslo2'] ) if (array_key_exists($_POST['login2'],$loginy) && $loginy[$_POST['login2']]==$_POST['haslo2'] ) $zalogowany = true; edit: Lekko poprawiłem z błędów, bo mi się trochę z javascriptem zaczęło mieszać. :P edit2: Jakbyś nie wiedział co daje znaczek @, to blokuje on wysyłanie treści błędu do domyślnego outputa czyli na stronę www. Niechlujnie ale szybciej niż isset( $_POST['login2'] ) && $_POST['login2'] Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
blackmaul Opublikowano 24 Sierpnia 2006 Udostępnij Opublikowano 24 Sierpnia 2006 http://download.4programmers.net/logowanie-mateusch.zip - looknij to system logowania Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bobo Opublikowano 24 Sierpnia 2006 Autor Udostępnij Opublikowano 24 Sierpnia 2006 THX ranmus za kod. Blackmaul ale ja chce zrobić własny system logowania w ramach nauki php :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
blackmaul Opublikowano 24 Sierpnia 2006 Udostępnij Opublikowano 24 Sierpnia 2006 Hehe ale zawsze mozesz go zdeczko przerobic to przypiszesz do siebie ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marmot Opublikowano 24 Sierpnia 2006 Udostępnij Opublikowano 24 Sierpnia 2006 Tylko wiesz Blackamaul, to już wtedy zalicza się do lamerstwa ;) . Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
bobo Opublikowano 24 Sierpnia 2006 Autor Udostępnij Opublikowano 24 Sierpnia 2006 Dobra poradziłem sobie :) Tylko teraz dane użytkownika muszą być zapisywane w oddzielnych linijkach jak to zrobić?? obecnie mam taki kod dodawania userów: formluarz <form method="post" action="rejestracja.php"> <table border="0" cellspacing="0" cellpadding="2"> <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">Login:<input type="text" name="login" size=20></div></td> </tr> <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">haslo:<input type="text" name="haslo" size=20></div></td></tr> <tr><td colspan="2" background="gfx/tlo3.gif" style="width: 300px" text-align:center; font-size:8px; font-weight:bold;><div align="center">email:<input type="text" name="email" size=20></div></td></tr> <td colspan="2" align="center"><input type="submit" class="textbox2" value="Wyslij"> <input type="reset" class="textbox2" value="Wyczysc"></td> </table> </form> rejestracja <? $dataloc="lista.txt"; $read=fopen($dataloc, "a"); $fileread = fread($read, filesize($dataloc)); fclose($read); fwrite (fopen($dataloc, "a+"), "$fileread $_POST[login]$_POST[haslo]"); fclose(fopen($dataloc, "a+")); ?> Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę