Autor Zpráva
Mufna
Profil
Zdravím Vás. Hlásí mi to chybu v dotazu, ale nějak se mi nedaří přijít na to, kde by mohla být. Poradíte prosím někdo ? Asi to bude nějaká kravina, ale nedaří se mi zatím přijít na to jaká.

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 '(www.domena.com), aktivni = 1 WHERE id = 1' at line 1


$lnk = $_POST["lnk"];
$act = $_POST["act"];
$ids = $_POST["ids"];

$sql="UPDATE external_links SET www_link = escape($lnk), aktivni = $act WHERE id = $ids";
query($sql);

function query($sql) {
  $res=@mysql_query($sql);
  if (!$res) {
    echo '<p>Nezdařila se operace s databází!<br><i>'.mysql_error().'</i></p>';
    exit;
  }
  return $res;
}
Mufna
Profil
ještě funkce escape()
  function escape($str) {
    $str = trim($str);
    if(!is_numeric($str)) {
        $str = sprintf("%s", mysql_real_escape_string($str));
     } else {
        $str = intval($str);
    }
    return $str;
  }
nightfish
Profil
Mufna:
nelze volat PHP funkce z mySQL dotazu, escape($lnk) musí být mimo uvozovky
Beavis
Profil
Mufna:
V SQL dotazu bych doplnil " ` ".
Kajman_
Profil *
$lnk = escape($_POST["lnk"]);
$act = (int)$_POST["act"];
$ids = (int)$_POST["ids"];

$sql="UPDATE external_links SET www_link = '$lnk', aktivni = $act WHERE id = $ids";
Mufna
Profil
ok, díky všem za rady, už to fachčí

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:

0