ugrás a tartalomhoz

Nem fut le az ELSE ág!

supi007 · 2009. Már. 8. (V), 18.07
Hello,

Nem fut le az else ág és nem értem, hogy miért. Valaki szakértő vetne rá egy pillantást?
 
1

A kód

supi007 · 2009. Már. 8. (V), 18.08
<?php
//A felhasználói bejelentkezést végzi el
session_start();
//felépíti a kapcsolatot azz adatbázissal
include ("csatlakozas.php");
//lekérem az 'felhasznalo' tábla értékeit
$felhasznalo = "SELECT `user_name`,`password`,`name` FROM `felhasznalo` WHERE user_name='$_POST[name]' AND password=md5('$_POST[pswd]');";
$felhasznalo_result = mysql_query($felhasznalo, $sql_csatlakozas) or die(mysql_error());
while ($felhasznalo_array = mysql_fetch_array($felhasznalo_result))
{
	if($_POST['name'] == $felhasznalo_array['user_name'] && md5($_POST['pswd']) == $felhasznalo_array['password'])
	{
		$_SESSION['user'] = $felhasznalo_array['user_name'];
		$_SESSION['real'] = $felhasznalo_array['name'];
		header("Location: /cimlap.php");
	}
		else 
		{
		header("Location:".$_SERVER['HTTP_REFERER']);
		}
}
?>
2

Miért futna?

abesto · 2009. Már. 8. (V), 18.48
Javíts ki ha tévedek, de az SQL lekérdezésben már garantáltad, hogy a kapott rekord(ok)ban csak a megadott felhasználónév és jelszó szerepelhet. Így az else ág nem is futhat le.. felesleges a PHP-s ellenőrzés.
3

Hogyan

supi007 · 2009. Már. 8. (V), 19.10
Akkor hogyan tudom elérni azt, hogy hibás eredmény esetén is történjen valami.
4

Attól függ...

abesto · 2009. Már. 8. (V), 19.21
Ha 'hibás eredmény' alatt azt érted, hogy nincs ilyen rekord az adatbázisban, akkor próbálj ilyesmit:

$felhasznalo = "SELECT `user_name`,`password`,`name` FROM `felhasznalo` WHERE user_name='$_POST[name]' AND password=md5('$_POST[pswd]');";  
$felhasznalo_result = mysql_query($felhasznalo, $sql_csatlakozas) or die(mysql_error());

if (mysql_num_rows($felhasznalo_result) == 0) {
  // Rossz felhasználónév/jelszó
} else {
  // Van ilyen user_name/password pár
}
6

Köszi szépen!

supi007 · 2009. Már. 8. (V), 20.07
Köszi szépen!
5

off: SQL injection-ra figyelj

solkprog · 2009. Már. 8. (V), 19.31
Ügye az SQL injection-ról hallottál már, és csak a fenti kódból azért marad ki a szűrés mert csak példakód...

üdv,
Balázs
7

hallani

supi007 · 2009. Már. 8. (V), 20.10
Hallani már hallottam, de nem tudom hogy kell :lol:
Hogy kell olyat? nem vicc
8

Nekem ez a cikksorozat

Ustak · 2009. Már. 8. (V), 21.01
nagyon tetszett, és a fent említett dolog is benne van többek között:

writing secure php

Üdv:
Gábor
9

OK

supi007 · 2009. Már. 8. (V), 22.17
OKÉ,

Köszi, utánajárok.