Autor | Zpráva | ||
---|---|---|---|
tomvyb Profil |
Prosím o radu:
Jde mi o chybovou hlášku: 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 '1' at line 1 connect.php <?php $db_server = 'localhost'; $db_login = 'root'; $db_password = '***'; $db_name = 'pokus'; $link = mysqli_connect($db_server, $db_login, $db_password, $db_name); mysqli_set_charset($link,"utf8"); ?> script.php <?php if (isset($_POST['odesli'])) { $ikona = $_POST['ikona']; $nazev = $_POST['nazev']; $adresa = $_POST['adresa']; if ($ikona=="") { echo "Něco nebylo vyplněno"; } else { $vysledek = mysqli_query($link, "insert into social values (Null,'$ikona','$nazev','$adresa')"); if (mysqli_query($link, $vysledek)) { echo "Vloženo do databáze"; } else { echo "Error: " . $vysledek . "<br>" . mysqli_error($link); } mysqli_close($link); } } ?> Problém je v tom, že do databáze se vše přidá správně, ale místo "Vloženo do databáze" se objeví chyba #1064 (viz výše...) CREATE TABLE `social` ( `id` int(50) NOT NULL AUTO_INCREMENT, `ikona` varchar(200) COLLATE utf8_czech_ci DEFAULT NULL, `nazev` varchar(500) COLLATE utf8_czech_ci DEFAULT NULL, `adresa` varchar(500) COLLATE utf8_czech_ci DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `unique` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci |
||
Alphard Profil |
#2 · Zasláno: 4. 2. 2017, 22:26:34
Nevolejte
mysqli_query opakovaně. To druhé volání dostane jen výsledek toho předchozího a ten přirozeně končí chybou.
|
||
tomvyb Profil |
#3 · Zasláno: 5. 2. 2017, 12:55:51
Alphard:
Děkuji vyřešeno ;-) |
||
Časová prodleva: 7 let
|
0