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
Nevolejte mysqli_query opakovaně. To druhé volání dostane jen výsledek toho předchozího a ten přirozeně končí chybou.
tomvyb
Profil
Alphard:
Děkuji vyřešeno ;-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: