2012-05-20 2 views
0

сообщение об ошибке: «У Вас есть ошибка в вашем синтаксисе SQL, проверьте руководство, которое соответствует Вашей версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с„портфолио“в строке 1»MySQL Ошибка синтаксиса в PHP

Вот код обижая:

<?php 
if (!function_exists("GetSQLValueString")) { 
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{ 
    if (PHP_VERSION < 6) { 
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; 
    } 

    $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); 

    switch ($theType) { 
    case "text": 
     $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; 
     break;  
    case "long": 
    case "int": 
     $theValue = ($theValue != "") ? intval($theValue) : "NULL"; 
     break; 
    case "double": 
     $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; 
     break; 
    case "date": 
     $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; 
     break; 
    case "defined": 
     $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; 
     break; 
    } 
    return $theValue; 
} 
} 

$host="****"; // Host name 
$username="****"; // Mysql username 
$password="****"; // Mysql password 
$db_name="a9307665_br"; // Database name 
$tbl_name="portfolio"; // Table name 

// Connect to server and select databse. 
mysql_connect("$host", "$username", "$password")or die(mysql_error()); 
mysql_select_db("$db_name")or die(mysql_error()); 

$query_getPosts = "SELECT post_id, title, updated FROM $tbl_name ORDER BY updated DESC"; 
$getPosts = mysql_query($tbl_name) or die(mysql_error()); 
$row_getPosts = mysql_fetch_assoc($getPosts); 
$totalRows_getPosts = mysql_num_rows($getPosts); 
?> 

И я полагаю, видя, как базируется ошибка MySQL это строка кода, которая вызывает ошибку:

$query_getPosts = "SELECT post_id, title, updated FROM $tbl_name ORDER BY updated DESC"; 

Может кто-нибудь указать мне в правильном направлении, пожалуйста?

UPDATE: Результат: echo $query_getPosts;

SELECT post_id, title, updated FROM `portfolio` ORDER BY updated DESC 
+0

Не могли бы вы сделать 'Эхо $ query_getPosts;' и добавить, что в этом вопросе? –

ответ

0

Вы можете попробовать обернуть имя таблицы - обратные кавычки

$query_getPosts = "SELECT post_id, title, updated FROM `$tbl_name` ORDER BY updated DESC"; 

Также вы задающих имя таблицы в качестве строки запроса :)

mysql_query($tbl_name) 

Пробег:

mysql_query($query_getPosts) 
+0

По-прежнему получить ту же ошибку .. – blanksby

+1

PERFECT! Спасибо огромное! Его беспокоило меня часами! – blanksby

2

эта линия не так:

$getPosts = mysql_query($tbl_name) or die(mysql_error()); 

правильно это:

$getPosts = mysql_query($query_getPosts) or die(mysql_error()); 
Смежные вопросы