Üdv!
Bejelentkezés űrlapnál feltételesen íratom ki a form action-ját . Ezzel
semmi probléma mert ha a feltételnek megfelelt akkor ki is írja az
adott oldal nevét pl valami.php. Ugye bár az inputba bevitt jelszó és
felhasználónév összehasonlításra kerül az adatbázisban és ha egyezik
akkor engedi át a következő oldalra (persze ha nem felel meg akkor
természetesen nem megy semerre). Ezekkel eddig semmi gond. Na de a 2
együtt. Úgy akarom megoldani hogy ha a jelszó meg a felhasználó stimmel
akkor dobja át az adott oldalra. Hozzáteszem nem mindegyik
felhasználóhoz tartozik ugyan az az oldal szóval ezért csináltam if-es
form action""-t. A probléma a következő: Mivel a submit lenyomásakor még
nem tudja hogy melyik oldalra menjen(küldje $_post-al az adatokat)
(mivel a form action"<?php echo $action?>" ) még null értékü.
Szóval ha a jelszó és a felhasználó egyezik akkor válik a $action =
"valami.php"-re.De nem navigált semerre, nem is ment a valami.php-ra
mert a jelszó és a felhasználó beírása tán a submit lenyomásakor az
$action még NULL-értékü. Vagyis visszadob ugyan oda és tökmindeggy hogy
milyen nevet és jelszót adok meg lehet az bármi mert nem fog ellenőrizni
semmit(mert ekkor a $action = "valami.php" ). Így akkor is át enged ha
olyan jelszóval lépek be ami nem is létezik az adatbázisban. Elvileg igy
is lehet
header('Location: valami.php?user='.$name); .
De ezzel az a probléma hogy csak $_GET-el lehet elkapni ($_POSTAL már próbáltam,
nem megy)így fent kiírja a felhasználót és a jelszót URL-nél;
Szóval hogy lehetne ezt
Pl:
$action = NULL;
if(isset($_POST['subm']))
{
if(isset($_POST['name']) && !empty($_POST['name']) && isset($_POST['passw']) && !empty($_POST['passw']) )
{
$name =$_POST['name'];
$passw =$_POST['passw'];
//adatbázisos dolgok(itt vizsgáljuk a jelszót és a felhasználót)
if($result > 0)
{
$action = "valami.php";
}
if($result1 >0)
{
$action = "masik.php";
}
if($result6 > 0)
{
$action = "naez.php";
}
}
}
?>
//HTML
//az action-ban echo-zom a változót.
<form action="<?php echo $action; ?>" method="post">
<input type="text" name="name" >
<input type="password" name="passw" >
<input type="submit" name="subm" value="belépés">
</form>
Könyvjelzők