Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Hasło PHP & MySQL
Forum PHP.pl > Forum > PHP
kamilos809
Witam,
Tak jak w temacie, potrzebuję skrypt na hasło w PHP(do modułu CMS JPortal) tak krótko i zwięźle:
- hasło i login pobiera z bazy danych
- po wpisaniu hasła przekierowuje do podanej strony
- można go użyć w każdej części pliku np. w funkcji logowanie, ale nie przechodzi na funkcję widzialną dla niezalogowanych

Jak by ktoś umiał ale nie nalegam, takie coś, że mam np. link mojastrona.pl/skrypt.php?co=adm, do którego dojdziemy po zalogowaniu, będzie się pokazywał tylko po zalogowaniu, tzn. jak ręcznie wpisze adres to i tak mi się pokaże logowanie.

żeby nie było że nic sam nie robię, napisałem takie coś poniżej, ale bez czytania z bazy:
  1. function zaloguj()
  2. {
  3. echo("<form method=post action=?co=panel>Login: <input type=text name=login> Hasło: <input type=password name=pass> <input type=submit value=ok></form>");
  4. }
  5. if($co=='panel'){
  6. $login = $_POST['login'];
  7. $pass= $_POST['pass'];
  8. if($login=='kamil' && $pass=='123')
  9. echo("Wybierz Opcję:");
  10. }


Jest on jakiś dziwny, bo obojętnie co wpisze w pola login i hasło i tak mnie przekierowuje do linku.

Jeśli ktoś umie coś takiego napisać, to byłbym wdzięczny smile.gif wiem, że takie posty na tym lub innych forach były, ale nie ma zastosowania w modułach itp.
awerd95
  1. if($login=='kamil' && $pass=='123')
  2.  
  3. echo("Wybierz Opcję:");
  4.  
  5. }


Popraw na
  1. if($login=='kamil' && $pass=='123'){
  2.  
  3. echo("Wybierz Opcję:");
  4.  
  5. }}
kamilos809
dzięki awerd95 za szczere chęci ale dalej przenosi do następnej strony po wpisaniu byle czego
Ruio
  1. if($co=='panel'){
  2. $login = $_POST['login'];
  3. $pass= $_POST['pass'];
  4. if($login == 'kamil' && $pass == 123)
  5. header('Location: adres.php');
  6. }


I popraw
  1. <form method=post action=?co=panel>


na :
  1. <form method="POST">


Powinno działać. Pozdro

P.S jeśli hasło jest liczbą nie używaj ' '
topgear
lub spróbuj tak
  1. function zaloguj()
  2. {
  3. echo("<form method=post action=?co=panel>Login: <input type=text name=login> Hasło: <input type=password name=pass> <input type=submit value=ok></form>");
  4. }
  5. if($_GET['co']=='panel'){
  6. $login = $_POST['login'];
  7. $pass= $_POST['pass'];
  8. if($login=='kamil' && $pass=='123'){
  9. echo("Wybierz Opcję:");
  10. }}
Ruio
tepgear ale po co ;/ nie widzę większego sensu używania tutaj GET'a ale mogę się mylić
kamilos809
nosz kurcze... ja nie wiem... ciągle mi loguje jak wpisze coś, albo choćby kliknę wyślij sad.gif
nie wiem, koledzy, czy to wina tego, że mam na webservie pliki? tzn. w tym programie, emulatorze serwera czy czymś.
(program dokładnie się zwie: WebServ) pewnie nie jest to jego wina, ale np. funkcja mail(); w nim nie działa.


nie macie może jakiegoś skryptu na takie hasło, które by działało?


ps. jak wrzuce na jakąś moją stronkę ten moduł to zobacze jak to działa, jeśli dalej nie działa to wam ją pokażę i sami zobaczycie
kmike
Kod
<form method="post" action="?co=panel">
Login: <input type="text" name="login"><br />
Hasło: <input type="password" name="pass"><br />
<input type="submit">
</form>

<?php
if($_GET['co']=='panel'){
    $login = $_POST['login'];
    $pass= $_POST['pass'];
        if($login=='kamil' && $pass=='123'){
            echo("Wybierz Opcję:");
        }
}
?>

Trochę zmodyfikowałem i u mnie działa. Masz link poniżej, jak sobie przypomnę to kiedyś usunę.
http://www.gdziekupic.org/asd.php?co=panel
kamilos809
kmike, fajne, nawet działa tylko jak ja mam to użyć w środku modułu? chyba że hmm... zrobie plik haslo.php i z modułu przekierowanie do niego, ale to znowu masło maślane....

Dobra, pomyślałem i coś wykręciłem smile.gif mam już takie logowanie jak chciałem(no prawie). Jak by ktoś umiał zrobić takie coś żeby użytkowników i hasła pobierało z bazy danych i mógłby mi napisać na gg:2964203 to był bym baaaaaaardzo wdzięczny. Co do mojego "triczku" to po prostu jak jest w modułach do JPortala:
  1. if($co=='zaloguj'){
  2. main_title_open();
  3. echo 'Logowanie do panelu';
  4. main_title_close();
  5. main_text_open();
  6. echo("cokolwiek")
  7. stopka();
  8. main_text_close();
  9. }

zamieniłem tamto echo na: include('haslo.php'); i wszystko gra, no fakt, żeby wszystko stykało musiałem poprawić troszkę kod od kmike, zeby w pliku haslo.php wyszło coś takiego:
  1. <form method="post" action="gazetka.php?co=zaloguj">
  2. Login: <input type="text" name="login"><br />
  3. Hasło: <input type="password" name="pass"><br />
  4. <input type="submit">
  5. </form>
  6.  
  7. <?php
  8. if($_GET['co']=='zaloguj'){
  9. $login = $_POST['login'];
  10. $pass= $_POST['pass'];
  11. if($login=='kamil' && $pass=='123'){
  12. echo("<a href='skrypt.php?co=panel'>Wejdź do panelu</a>");
  13. }
  14. }
  15. ?>


fakt, masło maślane jak nie wiem ale działa, mam nadzieję, ze komus się to przyda winksmiley.jpg

kmike
kiedyś napisałem artykuł o logowaniu pobierając dane z bazy. Jak teraz patrze to całość nie jest idealna, ale działa.
kamilos809
dobra, załapałem te hasła jak to się pisze i w ogóle, Kmike, ten link co podałeś wypróbowałem, ale u mnie on po prostu nie działa, błędy wyskakują. Ale mam takie pytanie: jak chce zrobić antywłamanie czyli coś takiego, ze jak ktoś pomyli hasła, do mnie moduł wyśle o tym maila. wiem, ze to idzie zrobić funkcja mail(); ale moje pytanie: jak zrobić tak żeby w mailu było też IP tego użytkownika.
kmike
  1. <?php
  2. echo $_SERVER['REMOTE_ADDR'];
  3. ?>

dużo odpowiedzi na twoje pytania jest w google, trzeba tylko poszukać smile.gif
kamilos809
dobra, jeszcze tylko spytam o przedszkole w php. Jak mam do spełnienia warunek IF, warunek ELSE IF. wpisane dane w okienka nie spełniają żadnego z podanych warunków... załącza się ELSE. Ale w tym problem, że za pierwszystm włączeniem skryptu, np. żeby się zalogować to on od razu nie wiadomo po co się załacza, a ne wtedy kiedy nacisne "zaloguj"(chciaż wtedy też się włącza ELSE) ale wkurzające jest to, ze zrobie sobie w else jakieś tam funkcje, np. mail(); i za kazdym włączeniem logowania do skryptu to do mnie maila wyśle, da sie to jakos zrobić żeby nie zalączał się przy starcie?

ps. sorry za błędy ale późno się robi, i pisze szybko, żeby móc powoli szykować się do spanka smile.gif
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.