Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: skrypt logowania
Forum PHP.pl > Forum > PHP
Terrorizer
Witam,
Usiłowałem stworzyć atrapę skryptu do logowania na stronie.
Niestety kod nie bardzo działa.
Nie muszę nawet nic wpisywać w rubryki loginu i hasła, a i tak na ekranie jest ciągle wyświetona odpowiedź z funkcji else.
Mogę poprosić o pomoc?

oto kod:
Kod
<form action="login.php" method="post">
<div id="login_input">
<p>
LOGIN<br />
<input type="text" name="login" /><br /><br />
PASSWORD<br />
<input type="text" name="password" /><br/>
<input type="submit" value="OK" />
</p>
</div></form>

<?php
$login = $_request['login'];
$password = $_request['password'];
if($login == 'Terrorizer' and $password == 'admin'){
echo '<p>WITAJ TERRORIZER!</p>';}
else{
echo 'nie znasz hasła? WYPIERDALAJ!';}
?>
Szymciosek
Zamiast request nie powinno byc get/post ?
Terrorizer
request podobno jest uniwersalne, ale jestem kompletnie początkujący, więc mogłem coś źle zrozumieć....

EDIT: właśnie to sprawdziłem... okazuje się ,że GET zapisuje się w bazie danych get, a POST w bazie danych post,
przy czym REQUEST wczytuje informacje z obu baz danych.
być może źle to wyjaśniam, bo mam jeszcze małe wyobrażenie na ten temat, ale idea jest mniej więcej taka jak powyżej ;p
Szymciosek
Nie jestem przy komputerze, ale na twoim miejscu zaczalbym od wyswietlenia za pomoca echo tych dwoch zmiennych jeszcze przed wykonanie if. Wtedy dowiesz sie co zostaje przekazane z fornularza do pliku php.
Terrorizer
chyba średnio kumam co mam zrobić, a raczej nie bardzo wiem jak to mam zrobić, ale dzięki za podpowiedź biggrin.gif
Szymciosek
  1. <?php
  2. $login = $_request['login'];
  3. $password = $_request['password'];
  4.  
  5. echo $login;
  6. echo '<br />'
  7. echo $password;
  8. if($login == 'Terrorizer' and $password == 'admin'){
  9. echo '<p>WITAJ TERRORIZER!</p>';}
  10. else{
  11. echo 'nie znasz hasła? WYPIERDALAJ!';}
  12. ?>


Taka zmiana powinna Ci wyświetlić te dane które wprowadzasz, to wyświetli jeszcze przed sprawdzeniem w warunku if. Wtedy zobaczysz co otrzymujesz po wysłaniu formularza
tehaha
w php wielkość liter w nazwie zmiennych ma znaczenie, więc
  1. $_request
to nie jest to samo co
  1. $_REQUEST
. Odbierając dane z formularza odnosisz się do ustawionych zmiennych super globalnych http://php.net/manual/en/language.variables.superglobals.php, więc musisz tutaj użyć
  1. $_POST['login']
albo
  1. $_REQUEST['login']
. Lepiej nie używać $_REQUEST, zwłaszcza jak jesteś początkujący i nie wiesz jakie są tego konsekwencje
Terrorizer
wielkie dzięki 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.