Jeżeli mam funkcję zaloguj(); to wyskakuje mi błąd
Cytat
Fatal error: Call to a member function prepare() on a non-object
a jeżeli zaloguj($db) to wyskakuje:
Cytat
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `id` = '(jakieś id)' AND `password` = '(jakieś hasło)''
Kod:
<? include 'config.php'; $zalogowany = $_SESSION['login']; if($_GET['cmd'] == 'zaloguj') { zaloguj($db); } function index() { if($zalogowany == 'y') { panel(); } else { echo'<form action="login.php?cmd=zaloguj" method="POST"> <input type="text" name="id"><br> <input type="password" name="password"><bR> <input type="submit"><br>'; } } function zaloguj($db) { $stmt = $db -> prepare('SELECT id, password WHERE `id` = :id AND `password` = :password'); $stmt->execute(); foreach ($stmt as $r) { $id_check = $r['id']; $password_check = $r['password']; } if ($_POST['id'] == $id_check && $_POST['password'] == $password_check) { $_SESSION['login'] = 'y'; } } ?>