[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Couldnot execute query
Гость_Mila
Дравствуйте! в чем может быть проблема?
Выдает ошибку
Couldnot execute query.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 '' at line 10

10-я строка

$result = mysql_query('SELECT COUNT(*) AS count FROM tovar INNER JOIN _order ON (tovar.id_tovar = _order.id_tovar)');




Спустя 12 минут, 32 секунды (14.06.2010 - 15:19) tomash написал(а):
а какая версия MySQl?

Спустя 2 минуты, 51 секунда (14.06.2010 - 15:22) vasa_c написал(а):
название таблиц, полей и алиасов заключайте в ``

Спустя 5 минут, 35 секунд (14.06.2010 - 15:28) Гость_Mila написал(а):
Цитата (tomash @ 14.06.2010 - 12:19)
а какая версия MySQl?

MySQL client version: 5.0.51a

Спустя 5 минут, 49 секунд (14.06.2010 - 15:34) Гость_Mila написал(а):
Цитата (vasa_c @ 14.06.2010 - 12:22)
название таблиц, полей и алиасов заключайте в ``

Результат тот-же ((

Спустя 2 минуты, 5 секунд (14.06.2010 - 15:36) tomash написал(а):
Попробуйте выполнить этот запрос напрямую, через утилиту какую-то

Спустя 1 минута, 26 секунд (14.06.2010 - 15:37) Гость_Mila написал(а):
Цитата (tomash @ 14.06.2010 - 12:36)
Попробуйте выполнить этот запрос напрямую, через утилиту какую-то

Запрос выполняеться корректно... проверяла на SQL Manager 2010 for MySQL

Спустя 2 минуты, 24 секунды (14.06.2010 - 15:40) Гость_Mila написал(а):
Вот файл целиком

<?php
$page = $_GET['page']; // get the requested page
$limit =$_GET['rows'];; // get how many rows we want to have into the grid
$sidx = $_GET['sidx']; // get index row - i.e. user click to sort
$sord = $_GET['sord']; // get the direction
if(!$sidx) $sidx =1;
// connect to the database
mysql_connect('localhost', 'root', '')or die("Connection Error: " . mysql_error());
mysql_select_db('order_zpp');
$result = mysql_query('SELECT COUNT(*) AS count FROM `tovar` INNER JOIN `_order` ON (`tovar`.`id_tovar` = `_order`.`id_tovar`)');
$row = mysql_fetch_array($result,MYSQL_ASSOC);
$count = $row['count'];

if( $count > 0 && $limit > 0) {
$total_pages = ceil($count/$limit);
} else {
$total_pages = 0;
}

if ($page > $total_pages) $page=$total_pages;
$start = $limit*$page - $limit; // do not put $limit*($page - 1)
$SQL = "SELECT
`_order`.reg_num,
`_order`.data_reg,
`_order`.commerce_name,
tovar.tovar_name,
`_order`.srokdeyst_ceni,
`_order`.id_order
FROM
tovar
INNER JOIN `_order` ON (tovar.id_tovar = `_order`.id_tovar) ORDER BY "
.$sidx." ".$sord." LIMIT ".$start.", ".$limit;
$result = mysql_query( $SQL ) or die("Couldnot execute query.".mysql_error());

if ( stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ) {
header("Content-type: application/xhtml+xml;charset=windows-1251"); } else {
header("Content-type: text/xml;charset=windows-1251");
}
$et = ">";

echo "<?xml version='1.0' encoding='utf-8'?$et\n";
echo "<rows>";
echo "<page>".$page."</page>";
echo "<total>".$total_pages."</total>";
echo "<records>".$count."</records>";
// be sure to put text data in CDATA
while($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
echo "<row id='". $row[id]."'>";
echo "<cell><![CDATA[". $row[reg_num]."]]></cell>";
echo "<cell>". $row[data_reg]."</cell>";
echo "<cell><![CDATA[". $row[commerce_name]."]]></cell>";
echo "<cell>". $row[srokdeyst_ceni]."</cell>";
echo "<cell><![CDATA[". $row[tovar_name]."]]></cell>";
echo "</row>";
}
echo "</rows>";
?>

Спустя 5 минут, 31 секунда (14.06.2010 - 15:45) tomash написал(а):
$result = mysql_query('SELECT * FROM `tovar` INNER JOIN `_order` ON `tovar`.`id_tovar` = `_order`.`id_tovar`');
$count = mysql_num_rows($result);
if( $count > 0 && $limit > 0) {.....


А так?

p.s. кстати JOIN это и есть INNER JOIN.

Спустя 4 минуты, 14 секунд (14.06.2010 - 15:49) Гость_Mila написал(а):
Цитата (tomash @ 14.06.2010 - 12:45)
$result = mysql_query('SELECT * FROM `tovar` INNER JOIN `_order` ON `tovar`.`id_tovar` = `_order`.`id_tovar`');
$count = mysql_num_rows($result);
if( $count > 0 && $limit > 0) {.....


А так?

p.s. кстати JOIN это и есть INNER JOIN.

Результат не изменный (

Спустя 1 минута, 33 секунды (14.06.2010 - 15:51) tomash написал(а):
SELECT * FROM tovar AS t INNER JOIN _order AS o ON t.id_tovar = o.id_tovar

Спустя 3 минуты, 31 секунда (14.06.2010 - 15:54) Гость_Mila написал(а):
запросы все рабочие! но где беруться/отсутствуют ковычки !??? я так поняла что это проблемма с синтаксисом MySQL

Спустя 5 минут, 38 секунд (14.06.2010 - 16:00) Гость_Mila написал(а):
Вот сдесь лишняя ;

$limit =$_GET['rows'];;

но ошибка не пропала (

Спустя 12 минут, 12 секунд (14.06.2010 - 16:12) vasa_c написал(а):
mysql_query('SELECT COUNT(*) AS count FROM `tovar` INNER JOIN `_order` ON (`tovar`.`id_tovar` = `_order`.`id_tovar`)')

Вы всё-таки не заключили все имена таблиц, столбцов и алиасов в кавычки.

Спустя 8 минут, 21 секунда (14.06.2010 - 16:21) Гость_Mila написал(а):
Цитата (vasa_c @ 14.06.2010 - 13:12)
mysql_query('SELECT COUNT(*) AS count FROM `tovar` INNER JOIN `_order` ON (`tovar`.`id_tovar` = `_order`.`id_tovar`)')

Вы всё-таки не заключили все имена таблиц, столбцов и алиасов в кавычки.

Я уже все перепробовала.... и с кавычками и без них.... запрос выполняеться правильно в консоли.... а вот в чем проблемма в php понять не могу

Спустя 8 минут, 25 секунд (14.06.2010 - 16:29) Basili4 написал(а):
Дело значит не в запросе а что то до него например предыдущий запрос косячит ты новый пытаешся выполнить и ошибка вылетает шас код гляну поближе.

Спустя 3 минуты, 45 секунд (14.06.2010 - 16:33) tomash написал(а):
Проверьте название базы! Попробуйте вывести ответ MYSQL черep mysql_error()

Спустя 51 секунда (14.06.2010 - 16:34) Gabriel написал(а):
а запрос заткнуть не в одинарные кавычки, а в двойные ("бла бла бла")?
vasa_c
Цитата
`_order`.`id_tovar`

может так?
Цитата
`_order.id_tovar`


Спустя 4 минуты, 50 секунд (14.06.2010 - 16:38) Гость_Mila написал(а):
и все в пустую.... ничего не меняеться

Спустя 3 минуты, 1 секунда (14.06.2010 - 16:41) tomash написал(а):
Цитата
Попробуйте вывести ответ MYSQL черep mysql_error()

Текст запроса в переменную и распечатайте!

Спустя 1 минута, 4 секунды (14.06.2010 - 16:42) SlavaFr написал(а):
ошибка не в первом а во втором sql. v strochke 10

зделай
echo "ORDER BY ".$sidx." ".$sord." LIMIT ".$start.", ".$limit;
и все будет ясно.

уже вижу, что запятую забыла

Спустя 28 минут, 30 секунд (14.06.2010 - 17:11) tomash написал(а):
Мда.... нужно учиться читать))))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.