Diskuze: Problém s zapisováním do databáze
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
zdroják registrace, předtím se mi to neposlalo
<?php
session_start();
require('Db.php');
Db::connect('127.0.0.1', 'rs', 'root', '');
if ($_POST)
{
if ($_POST['rok'] != date('Y'))
$zprava = 'Chybně vyplněný rok.';
else if ($_POST['heslo'] != $_POST['heslo_znovu'])
$zprava = 'Hesla se neshodují';
else
{
$existuje = Db::querySingle('
SELECT COUNT(*)
FROM uzivatele
WHERE jmeno=?
LIMIT 1
', $_POST['jmeno']);
if ($existuje)
$zprava = 'Uživatel s touto přezdívkou již existuje.';
else
{
$heslo = password_hash($_POST['heslo'], PASSWORD_DEFAULT);
Db::query('
INSERT INTO uzivatele (jmeno, heslo)
VALUES (?, ?)
', $_POST['jmeno'], $heslo);
$_SESSION['uzivatel_id'] = Db::getLastId();
$_SESSION['uzivatel_jmeno'] = $_POST['jmeno'];
$_SESSION['uzivatel_admin'] = 0;
header('Location: administrace.php');
exit();
}
}
}
?>
<!DOCTYPE html>
<html lang="cs-cz">
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="styl clanky2.css" type="text/css" />
<title>Registrace</title>
</head>
<body>
<div id="centrovac"></div>
<header>
<div id="logo"><h1>IT Tipy a triky</h1></div>
<nav>
<ul>
<li id="aktivni"><a
href="index.php">Domů</a></li>
<li><a href="clanky.php">Články</a></li>
<li><a href="kontakt.php">Kontakt</a></li>
</ul>
</nav>
</header>
<article>
<header>
<h2>Registrace</h2>
</header>
<section>
<?php
if (isset($zprava))
echo('<p>' . $zprava . '</p>');
?>
<form method="post">
Jméno<br />
<input type="text" name="jmeno" /><br />
Heslo<br />
<input type="password" name="heslo" /><br />
Heslo znovu<br />
<input type="password" name="heslo_znovu" /><br />
Zadejte aktuální rok (antispam)<br />
<input type="text" name="rok" /><br />
<input type="submit" value="Registrovat" />
</form>
</section>
<div class="cistic"></div>
</article>
<footer>
Vytvořil Tomáš Kala 2018 podle návodu na <a
href="http://www.itnetwork.cz/">ITnetwork.cz</a>
</footer>
</body>
</html>
ano mám auto increment
nikdy mi to žádnou chybu nevyhodí, dokonce mi to uživatele po registraci
přihlásí, ale po odhlášení už ho nepřihlásím (není v databázi)
už jsem to vyřešil. celou databázi jsem předělal
u článků mi chybělo AUTO INCREMENT, měl jsem je jen u členů
error_reporting(E_ALL); // tam mas?
// + vypis sql chyb tam mas?
Jakou chybu to pise? Treba mas spatne pripojeni k db. Nebo spatnou tabulku? Nebo tabulka vubec neexistuje
Jinak, to vypada, ze by to mohlo fungovat.
Aha, uz nic, uz jsi to vyresil
Jeste mne napadlo, ze tohle by se dalo resit treba tak, ze si vypises sql prikaz na obrazovku. Oznacis. das ctrl+c ctrl+v do jineho okna, kde mas spustemy phpmyadmin, zalozku sql, vybranou tvou databazi. A spustits to tam. Phpmyadmin vypisuje sql chyby, takze by to pindalo nejsip na ten autoinkrement.
Zobrazeno 9 zpráv z 9.