Autor | Zpráva | ||
---|---|---|---|
sir_lamoid Profil |
#1 · Zasláno: 3. 8. 2012, 13:32:28
Dobrý den,
mám taký problém mám kód <?php /** * @author sir_lamoid * @copyright 2012 */ include "include/dibi.min.php"; dibi::connect(array( 'driver' => 'mysql', 'host' => 'localhost', 'username' => 'userdb', 'password' => 'heslodb', 'database' => 'db', 'charset' => 'utf8', )); dibi:; $nick = $_POST[nick]; $heslo = md5(md5($_POST['heslo'])); session_start() $dotaz = mysql_query("SELECT * FROM uzivatele WHERE nick='".mysql_real_escape_string($nick)."' AND heslo='$heslo'"); if (mysql_num_rows($dotaz) > 0) { $uzivatel = mysql_fetch_object($dotaz); $_SESSION["id"] = $uzivatel->id; $_SESSION["nick"] = $uzivatel->nick; $_SESSION["email"] = $uzivatel->email; $_SESSION["opravneni"] = $uzivatel->opravneni; header("Location: index.php"); } else { echo "Špatné jméno nebo heslo, zkus to znova."; } ?> a mě to píše chybu Parse error: syntax error, unexpected T_VARIABLE in xx/loginnow.php on line 21 jinak mám formulář: <form action="loginnow.php" method="POST"> <input type="text" name="nick"/> <input type="password" name="heslo"/> <input type="submit" name="tlacitko"/> </form> prosím pomozte.. bude asi chyba v uvozovkách, ale nevím kde.. |
||
Alphard Profil |
sir_lamoid:
Co je to za nesmysl, proč to dibi nepoužíváte? $uzivatel = dibi::query("SELECT * FROM uzivatele WHERE nick = %s AND heslo = %s", $_POST['nick'], $heslo)->fetch(); if ($uzivatel) |
||
martin1312 Profil |
#3 · Zasláno: 3. 8. 2012, 13:38:27
riadok 20, chyba ti bodkočiarka na konci
|
||
sir_lamoid Profil |
#4 · Zasláno: 3. 8. 2012, 13:42:57 · Upravil/a: sir_lamoid
neboť objektové programování není můj šálek kávy
pomocí dibi jen vkládám záznamy do db ale získávání výsledku z db pomocí dibi je zatím pro mě španělská vesnice martin1312: děkuji |
||
ShiraNai7 Profil |
#5 · Zasláno: 3. 8. 2012, 13:47:48
sir_lamoid:
„pomocí dibi jen vkládám záznamy do db ale získávání výsledku z db pomocí dibi je zatím pro mě španělská vesnice“ Stačí strávit 5 minut čtením dokumentace. Ohledně OOP nemusíš vědět nic.. voláš jen statickou metodu a o zbytek se nestaráš. |
||
sir_lamoid Profil |
#6 · Zasláno: 3. 8. 2012, 13:52:52
nebojte mám v plánu se na to vrhnout co nejdříve
jinak není tady chyba $uzivatel = dibi::query("SELECT * FROM uzivatele WHERE nick = %s AND heslo = %s", $_POST['nick'], $heslo)->fetch(); if ($uzivatel) proč by jsme hledaly kde nick je prazdný řetězec ?? |
||
Alphard Profil |
#7 · Zasláno: 3. 8. 2012, 14:01:51
Ale on se nehledá prázdný řetězec, to %s je zástupný znak. Takhle je to proto, aby se vstupy mohly automaticky ošetřit.
|
||
sir_lamoid Profil |
#8 · Zasláno: 3. 8. 2012, 18:13:21 · Upravil/a: sir_lamoid
a nemělo by po tom %s následovat $_POST['nick']??
joo už chápu to %s je zastupne a po tom se definuje za ", |
||
sir_lamoid Profil |
#9 · Zasláno: 4. 8. 2012, 00:00:46
jinak ještě otázečka jak to udělat:
<?php /* pokud existuje proměná session nick potom vypiš odkaz na administraci na odhlášení jinak vypiš odkaz pro přihlášení */ if(isset($_SESSION['nick'])) { echo '<a href="admin.php">Administrace</a>'; echo '<a href="logout.php">Odhlasit se</a>'; } else { echo 'Prosíme <a href="login.php">přihlašte se</a>'; } ?> |
||
Časová prodleva: 12 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0