| Autor | Zpráva | ||
|---|---|---|---|
| Manny Profil |
#1 · Zasláno: 7. 3. 2013, 13:28:30
Ahojte,
překopal jsem si jednoduchý přihlašovací dialog a teď tam nemůžu najít chybu. Špatné přihlašovací údaje to odchytí, ale se správnými neudělá nic. Žádná chybová hláška, nic. část kódu: if (!empty($_POST)) {
include "admin/db_connect.php";
$jmeno = htmlspecialchars($_POST["jmeno"]);
$heslo = htmlspecialchars($_POST["heslo"]);
$sql = "SELECT id FROM uzivatel WHERE jmeno = '$jmeno' AND heslo = '$heslo'";
$dotaz = mysql_query($sql,$spojeni);
if (!$dotaz)
die('Nepodařilo se načíst řádky z databáze.');
if (mysql_num_rows($dotaz)==1)
{
while($zaznam=mysql_fetch_array($dotaz))
{
$_SESSION["user_id"] = $zaznam["id"];
}
header("location:admin/administrace.php");
}
else
$chyba = '<h3>Uživatel neexistuje</h3>';
} |
||
| Taps Profil |
#2 · Zasláno: 7. 3. 2013, 14:04:16
Manny:
if (!empty($_POST)) {
include "admin/db_connect.php";
$jmeno = htmlspecialchars($_POST["jmeno"]);
$heslo = htmlspecialchars($_POST["heslo"]);
$sql = "SELECT id FROM uzivatel WHERE jmeno = '$jmeno' AND heslo = '$heslo'";
$dotaz = mysql_query($sql,$spojeni);
if (!$dotaz)
die('Nepodařilo se načíst řádky z databáze.');
if (mysql_num_rows($dotaz)==1)
{
$zaznam=mysql_fetch_array($dotaz);
$_SESSION["user_id"] = $zaznam["id"];
header("location:admin/administrace.php");
}
else
$chyba = '<h3>Uživatel neexistuje</h3>';
} |
||
| Martin02 Profil |
#3 · Zasláno: 7. 3. 2013, 14:08:14
Manny:
Nemůže se nějakým záhadným způsobem stát, že budeš mít v db dvě schody? Pak by toto nefungovalo if (mysql_num_rows($dotaz)==1). Zkus místo ==1 dát >0.
|
||
| Manny Profil |
Taps:
Díky, while mi tam zůstalo, protože těch proměnných bylo původně víc. Ale myslel jsem, že by to nemělo vadit.
Vyzkouším a uvidím:-) Martin02: Momentálně to není možné. |
||
| Manny Profil |
#5 · Zasláno: 7. 3. 2013, 17:59:27
Taps:
Tak nefunguje. Je to stále stejné, jak jsem myslel. |
||
| Magnus123 Profil |
#6 · Zasláno: 7. 3. 2013, 18:10:00
Manny:
Máš zapnuté sessions (fce session_start())? Když zadáš správné údaje, přesměruje to? |
||
| Manny Profil |
#7 · Zasláno: 7. 3. 2013, 18:20:21
Magnus123:
Mám. A i kdyby ne, nehodí to žádnou chybovou hlášku. Jen znova načte prázdný formulář. |
||
| Taps Profil |
#8 · Zasláno: 7. 3. 2013, 18:29:00
Manny:
v rámci testování si zkus vypsat $dotaz = mysql_query($sql,$spojeni) or die (mysql_error()); |
||
| Manny Profil |
#9 · Zasláno: 8. 3. 2013, 08:26:36
Postupným testováním jsem přišel na to, že problém bude až s přesměrováním pomocí
header, který mě nejspíš stále přesměrovává na aktuální stránku.
Nechápu ale proč. Původní script fungoval a cesta je správná. |
||
|
Časová prodleva: 13 let
|
|||
0