2010-08-02 3 views
-1

Мой код:MySQL ошибка синтаксиса в запросе SELECT,

$fileid = $_GET['imgid']; 
$fileid = (int)$fileid; //id is int type in photos table 

require 'database.php'; 

//get the image sourc name 

$q = "SELECT src form photos WHERE id='$fileid'"; 
$result = $mysqli->query($q) or die(mysqli_error($mysqli)); 

if ($result) 
{ 
    $row = $result->fetch_object(); 
    $filename = $row->src; 

ОШИБКА: У вас ошибка в вашем SQL синтаксиса; проверьте руководство, соответствующее версии вашего MySQL-сервера, для правильного синтаксиса для использования рядом с 'photos WHERE id = '12' 'по строке 1

ответ

5

У вас есть FROM с ошибкой. Попробуйте:

$q = "SELECT src FROM photos WHERE id='$fileid'"; 

Кроме того, хотя и не связанные с этой синтаксической ошибки, обратите внимание, что ваш код оказывается уязвимой для SQL Injection.

+0

как это работает? –

+0

это только кажется, пока вы не посмотрите на строку 2;) – Mchl

+0

@Col: Ой, вы правы. Не заметил, что его бросают на «int». –

Смежные вопросы