Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]System Logowania na plikach, Probelmy z usytułowaniem kodu
b_chmura
post
Post #1





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


Witam
Mam mały problem...

zrobiłem taki skrypt:
  1. <?php
  2. include('strona/gora.php');
  3.  
  4. $file = file("usr.txt");
  5. foreach ($file as $linia) {
  6. $usr = explode('||', $linia);
  7. if($_COOKIE['haslo']!=1){
  8. if ($login==$usr[0] and $haslo==$usr[1]) {
  9. setcookie('haslo', 1, time()+86400);
  10. echo '<a href="edit.php">Zarzdzaj Trescia</a>';
  11. }
  12. else {
  13. echo '<form method="post" action="logowanie.php">';
  14. echo 'Login <input type="text" name="login" size="20"><br />';
  15. echo 'Haslo <input type="password" name="haslo" size="20"><br />';
  16. echo '<input type="submit" value="Wyslij" name="wyslij" ><br />';
  17. }
  18. }
  19. else {
  20. echo '<a href="edit.php">Zarzdzaj Trescia</a>';
  21. }
  22. }
  23.  
  24. include('strona/dol.php');
  25.  
  26. ?>


Problem pojawia sie gdy w "bazie" (usr.txr) jest więcej jak jedna dana (gdy jest jedna problemu nie ma).
Problem polega na tym ze nie wiem gdzie i jak i co mam umieścić w pętli foreach.Aktualnie gdy jest więcej jak jeden użytkownik pojawia sie tyle formularzy ile linijek w usr.txt do tego funkcjonuje tylko ostatni z nich z ostatnimi danymi.

Problem błahy ale nie potrafię się z nim uwikłać, wrr
Jeśli ktoś był by tak miły i pomógł...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
misiek172
post
Post #2





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


no pewnie ze bedzie pojawiasz sie tyle formularzy co userów bo masz początek formualrza w PĘTLI!!!!

to:
echo '<form method="post" action="logowanie.php">';

musić wyjąć przed foreach
Go to the top of the page
+Quote Post
b_chmura
post
Post #3





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


Cytat(misiek172 @ 18.03.2007, 17:15:36 ) *
no pewnie ze bedzie pojawiasz sie tyle formularzy co userów bo masz początek formualrza w PĘTLI!!!!

to:
echo '<form method="post" action="logowanie.php">';

musić wyjąć przed foreach


To nie jest rozwiązanie, owszem jeśli wyciągnę cały formularz przed pętle to nie będzie ona powtarzana ALE
no właśnie są dwa "ale"

- działa tylko ostatnia linijka danych "login||haslo" inne hasła i loginy wyświetlają FALS ostatnie zapewnia nam wejście
- formularz jest cały czas na wierzchu a efektem kodu ma być wystawienie formularza jeśli ciacho nie ma "1" OR login lub hasło nie są właściwe , w innym wypadku wyświetlić link do zabezpieczonym przez ciacho pliku

Jeśli potraficie pomóc byłbym wdzięczny (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
misiek172
post
Post #4





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


niedokońca rozumiem, ale napewno jeśli formularz będzie w pętli to będzie się kopiował bo innej siły nie ma, właśnie na tej zasadzie polegają pętle. Widocznie musisz przerobić strukture.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.12.2025 - 01:12