1

Тема: You have an error in your SQL syntax; check the manual that correspond

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 '*) FROM table_one WHERE type_graf='vector' AND sreda='CorelDRAW'' at line 1
Не можу  вирішити проблему

  include("include/db_connect.php");
    include("include/functions.php"); 
   
$cat = $_GET["cat"]; 
$type = $_GET["type"]; 
 
if (isset($cat))
{
   switch ($cat) {

        case 'all':

        $cat_name = 'Все работы';
        $url = "cat=all&";
        $cat = ""; 
              

        break;

        case 'vector':

        $cat_name = 'Векторная графика';
        $url = "cat=vector&";
        $cat = "WHERE type_graf='vector'"; 
             

        break;
        
        case 'rastrovaya':

        $cat_name = 'Растровая Графика';
        $url = "cat=rastrovaya&";
        $cat = "WHERE type_graf='rastrovaya'"; 
             

        break; 
        
        case 'frac':

        $cat_name = 'Фрактальная';
        $url = "cat=frac&";
        $cat = "WHERE type_graf='frac'"; 
             

        break;                
        
        default:
        
        $cat_name = $cat;
     
        $url = "type=".clear_string($type)."&cat=".clear_string($cat)."&";
        $cat = "WHERE type_graf='".clear_string($type)."' AND sreda='".clear_string($cat)."'"; 
        
             
        break;

    } 
    
}
else
{
        $cat_name = 'Все товары';
        $url = "";
        $cat = "";        
}
$count = mysql_query("SELECT COUNT (*) FROM table_one $cat",$link)or die(mysql_error());

Не можу зрозуміти чому не працює

2

Re: You have an error in your SQL syntax; check the manual that correspond

У вас помилка

sreda='CorelDRAW''

Потрібно щоб було так

sreda='CorelDRAW'

В кінці замість " має бути '

3

Re: You have an error in your SQL syntax; check the manual that correspond

Майже Знайшов помилку SELECT COUNT (*)  як  цей вираз можно замінити якщо видаляю дужки з зіркою то  роботи заданого типу знаходить но не працює посторінкова навігація   
ост код усієї сторінки

<?php
define('mysite', true);
 
    session_start();
    if ($_SESSION['auth_admin'] == "yes_auth")
{
       if (isset($_GET["logout"]))
    {
        unset($_SESSION['auth_admin']);//уничтожить сесию
        header("Location: login.php");
    }
 
 
 $_SESSION['urlpage'] = "<a href='index.php' >Главная</a> \ <a href='work.php' >Работы</a>";

    include("include/db_connect.php");
    include("include/functions.php"); 
   
$cat = $_GET["cat"]; 
$type = $_GET["type"]; 
 
if (isset($cat))
{
   switch ($cat) {

        case 'all':

        $cat_name = 'Все работы';
        $url = "cat=all&";
        $cat = ""; 
              

        break;

        case 'vector':

        $cat_name = 'Векторная графика';
        $url = "cat=vector&";
        $cat = "WHERE type_graf='vector'"; 
             

        break;
        
        case 'rastrovaya':

        $cat_name = 'Растровая Графика';
        $url = "cat=rastrovaya&";
        $cat = "WHERE type_graf='rastrovaya'"; 
             

        break; 
        
        case 'frac':

        $cat_name = 'Фрактальная';
        $url = "cat=frac&";
        $cat = "WHERE type_graf='frac'"; 
             

        break;                
        
        default:
        
        $cat_name = $cat;
     
        $url = "type=".clear_string($type)."&cat=".clear_string($cat)."&";
        $cat = "WHERE type_graf='".clear_string($type)."' AND sreda='".clear_string($cat)."'"; 
        
             
        break;

    } 
    
}
else
{
        $cat_name = 'Все товары';
        $url = "";
        $cat = "";        
} 


$action = $_GET["action"];
if (isset($action))
{
   $id = (int)$_GET["id"]; 
   switch ($action) {

        case 'delete':

           $delete = mysql_query("DELETE FROM table_one WHERE id_image = '$id'",$link);  
    
  
        break;
        
    } 
}


?>




<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="content-type" content="text/html" />


    <title>Панель Управления</title>
   <link href="css/reset.css" rel="stylesheet" type="text/css" />
    <link href="css/style.css" rel="stylesheet" type="text/css" />
    <link href="jquery_confirm/jquery_confirm.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="js/jquery-1.8.2.min.js"></script> 
    <script type="text/javascript" src="js/script.js"></script> 
    <script type="text/javascript" src="jquery_confirm/jquery_confirm.js"></script> 
</head>

<body>
<div id="block-body">
<?php
    include("include/block-header.php");
    
     $all_count = mysql_query("SELECT * FROM table_one",$link);
     $all_count_result = mysql_num_rows($all_count);
?>
<div id="block-content">

<div id="block-parameters">

<ul id="options-list">
<li>Товары</li>
<li><a id="select-links" href="#"><? echo $cat_name; ?></a>
<div id="list-links" >
<ul>
<li><a href="work.php?cat=all"><strong>Все Работы</strong></a></li>
<li><a href="work.php?cat=vector"><strong>Векторная Графика</strong></a></li>
<?php


 $result1 = mysql_query("SELECT * FROM category WHERE type='vector'",$link);
  If (mysql_num_rows($result1) > 0)
{
$row1 = mysql_fetch_array($result1);
do
{
    
 echo '<li><a href="work.php?type='.$row1["type"].'&cat='.$row1["sreda"].'">'.$row1["sreda"].'</a></li>';   
    
} while ($row1 = mysql_fetch_array($result1));
}
?>
</ul>
<ul>
<li><a href="work.php?cat=rastrovaya"><strong>Растровая Графика</strong></a></li>
<?php
 $result1 = mysql_query("SELECT * FROM category WHERE type='rastrovaya'",$link);
  If (mysql_num_rows($result1) > 0)
{
$row1 = mysql_fetch_array($result1);
do
{
    
 echo '<li><a href="work.php?type='.$row1["type"].'&cat='.$row1["sreda"].'">'.$row1["sreda"].'</a></li>';   
    
} while ($row1 = mysql_fetch_array($result1));
}
?>
</ul>
<ul>
<li><a href="work.php?cat=frac"><strong>Фрактальная</strong></a></li>
<?php
 $result1 = mysql_query("SELECT * FROM category WHERE type='frac'",$link);
  If (mysql_num_rows($result1) > 0)
{
$row1 = mysql_fetch_array($result1);
do
{
    
 echo '<li><a href="work.php?type='.$row1["type"].'&cat='.$row1["sreda"].'">'.$row1["sreda"].'</a></li>';   
    
} while ($row1 = mysql_fetch_array($result1));
}
?>
</ul>
</div>
</li>
</ul>
</div>








<div id="block-info">
<p id="count-style">Всего работ - <strong><?php echo  $all_count_result; ?></strong></p> 
</div>
<ul id="block-work">
<?php
if (isset($msgerror)) echo '<p id="form-error" align="center">'.$msgerror.'</p>';

$num = 2;

$page = (int)$_GET['page'];              

$count = mysql_query("SELECT COUNT (*) FROM table_one $cat",$link)or die(mysql_error());
$temp = mysql_fetch_array($count);
$post = $temp[0];
// Находим общее число страниц
$total = (($post - 1) / $num) + 1;
$total =  intval($total);
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0) $page = 1;
  if($page > $total) $page = $total;
// Вычисляем начиная с какого номера
// следует выводить сообщения
$start = $page * $num - $num;
    
if ($temp[0] > 0)   
{
$result = mysql_query("SELECT * FROM table_one $cat ORDER BY id_image DESC LIMIT $start, $num",$link);
 
 If (mysql_num_rows($result) > 0)
{
$row = mysql_fetch_array($result);
do
{
    if  (strlen($row["image"]) > 0 && file_exists("../uploads_image/".$row["image"]))
{
$img_path = '../uploads_image/'.$row["image"];
$max_width = 160; 
$max_height = 160; 
 list($width, $height) = getimagesize($img_path); 
$ratioh = $max_height/$height; 
$ratiow = $max_width/$width; 
$ratio = min($ratioh, $ratiow); 
// New dimensions 
$width = intval($ratio*$width); 
$height = intval($ratio*$height);    
}else
{
$img_path = "./image/no-image-90.png";
$width = 90;
$height = 164;
}
  
 echo '
 <li>

 <p>'.$row["title"].'</p>
<center>
 <img src="'.$img_path.'" width="'.$width.'" height="'.$height.'" />
</center>
<p align="center" class="link-action" >
<a class="green" href="edit_product.php?id='.$row["id_image"].'">Изменить</a> | <a rel="work.php?'.$url.'id='.$row["id_image"].'&action=delete" class="delete" >Удалить</a>
</p>
 </li> 
 ';   
    
} while ($row = mysql_fetch_array($result));
echo'
</ul>
';
} 
}  
    
if ($page != 1) $pervpage = '<li><a class="pstr-prev" href="work.php?'.$url.'page='. ($page - 1) .'" />Назад</a></li>';

if ($page != $total) $nextpage = '<li><a class="pstr-next" href="work.php?'.$url.'page='. ($page + 1) .'"/>Вперёд</a></li>';

// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 5 > 0) $page5left = '<li><a href="work.php?'.$url.'page='. ($page - 5) .'">'. ($page - 5) .'</a></li>';
if($page - 4 > 0) $page4left = '<li><a href="work.php?'.$url.'page='. ($page - 4) .'">'. ($page - 4) .'</a></li>';
if($page - 3 > 0) $page3left = '<li><a href="work.php?'.$url.'page='. ($page - 3) .'">'. ($page - 3) .'</a></li>';
if($page - 2 > 0) $page2left = '<li><a href="work.php?'.$url.'page='. ($page - 2) .'">'. ($page - 2) .'</a></li>';
if($page - 1 > 0) $page1left = '<li><a href="work.php?'.$url.'page='. ($page - 1) .'">'. ($page - 1) .'</a></li>';

if($page + 5 <= $total) $page5right = '<li><a href="work.php?'.$url.'page='. ($page + 5) .'">'. ($page + 5) .'</a></li>';
if($page + 4 <= $total) $page4right = '<li><a href="work.php?'.$url.'page='. ($page + 4) .'">'. ($page + 4) .'</a></li>';
if($page + 3 <= $total) $page3right = '<li><a href="work.php?'.$url.'page='. ($page + 3) .'">'. ($page + 3) .'</a></li>';
if($page + 2 <= $total) $page2right = '<li><a href="work.php?'.$url.'page='. ($page + 2) .'">'. ($page + 2) .'</a></li>';
if($page + 1 <= $total) $page1right = '<li><a href="work.php?'.$url.'page='. ($page + 1) .'">'. ($page + 1) .'</a></li>';

if ($page+5 < $total)
{
    $strtotal = '<li><p class="nav-point">...</p></li><li><a href="work.php?'.$url.'page='.$total.'">'.$total.'</a></li>';
}else
{
    $strtotal = ""; 
}

   
?>
<div id="footerfix"></div>
<?php
    if ($total > 1)
{
    echo '
    <center>
    <div class="pstrnav">
    <ul>   
    ';
    echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left."<li><a class='pstr-active' href='work.php?".$url."page=".$page."'>".$page."</a></li>".$page1right.$page2right.$page3right.$page4right.$page5right.$strtotal.$nextpage;
    echo '
    </center>   
    </ul>
    </div>
    ';
} 
?>




</div>
</div>
</body>
</html>
<?php
    }else
{
    header("Location: login.php");
}
?>

4

Re: You have an error in your SQL syntax; check the manual that correspond

VTrim написав:

У вас помилка

sreda='CorelDRAW''

Потрібно щоб було так

sreda='CorelDRAW'

В кінці замість " має бути '

Вибачте Але  де саме я не  зрозумів вже бити  час з цим сиджу

5

Re: You have an error in your SQL syntax; check the manual that correspond

Помилка виникає тільки тоді, коли ви вводите в адресний рядок cat=CorelDRAW ?

6 Востаннє редагувалося Chemist-i (12.04.2015 11:34:46)

Re: You have an error in your SQL syntax; check the manual that correspond

Нет count = mysql_query("SELECT COUNT (*) FROM table_one $cat",$link)or die(mysql_error()) если я уберу скобки (*) то буде все працювати роботи заданого типу відбиратися але посторівнкова  навігація працювати  неадекватно .