当前位置: 首页 > 面试题库 >

“组”列以某种方式导致语法错误

茹展鹏
2023-03-14
问题内容

我不断收到此错误:

您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册,以找到在第1行的“ …”附近使用的正确语法。

我知道我的“组”字段有问题,因为如果删除它,我的表将被更新而不会出现任何问题。

这是我的表单代码:

<form enctype="multipart/form-data" action="products_import_confirmation.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="99999999" />
<center><table><br><br>
<td>Prek臈s pavadinimas:     
<td><input type="text" name="name_p" value="<?php echo $name_p;?>">
<span class="error">* <?php echo $name_pErr;?></span></td>
<tr>
<td>Gamintojas:<td><input type="text" name="brand" value="<?php echo $brand;?>">
<span class="error">* <?php echo $brandErr;?></span></td>
<tr>
<td>Specifikacijos:<td><textarea style="resize:none" name="specs" rows="5" cols="60"><?php echo $specs;?></textarea>
<span class="error">* <?php echo $specsErr;?></span></td>
<tr>
<td>Apra拧ymas:<td><textarea style="resize:none" name="about" rows="5" cols="60"><?php echo $about;?></textarea>
<tr>
<td>Kategorija:<td><select name="group" value="<?php echo $group;?>">
<option value="">Pasirinkite kategorij膮</option>
<option disabled>------------------</option>
<option value="Telefonai">Telefonai</option>
<option value="Plan拧et臈s">Plan拧et臈s</option>
<option value="Kompiuteriai">Kompiuteriai</option>
</select>
<span class="error">* <?php echo $groupErr;?></span></td>
<td><div><input name="image" accept="image/jpeg" type="file" /></div></td>
<tr>
</center></table>                               
<td><div><input type="submit" value="Submit" /></div></td>
</form>

这是我对MySQL代码的更新:

<?php
require("/includes/connection_to_db.php");

mysql_query("SET NAMES 'utf8'");

session_start();
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>";

if(isset($_GET['logout']) && $_GET['logout'] == "true"){
unset($_SESSION['user_id']);
header("Location: index.php");
}
if (isset($_FILES['image']) && $_FILES['image']['size'] > 0) 
    {
        // Temporary file name_p stored on the server
        $tmpname_p = $_FILES['image']['tmp_name'];

        // Read the file
        $fp = fopen($tmpname_p, 'r');
        $image = fread($fp, filesize($tmpname_p));
        $image = addslashes($image);
        fclose($fp);

        date_default_timezone_set('Europe/Vilnius');
        $V_ID = mysql_real_escape_string($_SESSION['user_id']);
        $name_p = mysql_real_escape_string($_POST['name_p']);
        $group = mysql_real_escape_string($_POST['group']);
        $brand = mysql_real_escape_string($_POST['brand']);
        $specs = mysql_real_escape_string($_POST['specs']);
        $about = mysql_real_escape_string($_POST['about']);
        $date = date('Y-m-d H:i:s');

        $query = "INSERT INTO prek臈s (V_ID, name, group, brand, specs, about, image, date)
                VALUES ($V_ID, '$name_p', $group, '$brand', '$specs', '$about', '$image', '$date')";

        if(mysql_query($query))
        {

            echo "Prek臈 ".$name." s臈kmingai 寞kelta <br>";
            echo "<a href=\"../main.php\">Gr寞啪ti</a>";
        }
        else
        {

            echo "漠vyko klaida: ".mysql_error()."<br>";
            echo "<a href=\"../products_import.php\">Gr寞啪ti</a>";
            echo $date;
            echo $name_p;
            echo $brand;
            echo $specs;
            echo $about;
            echo $group;
        }
    }
    else 
    {
        echo "Neu啪pildyti visi reikalaujami duomenys.";
    }

mysql_close();
?>

如您所见,我做了一些回显,以检查是否获取了我的数据,并且一切正常。“分组”数据只会使事情变糟。有任何想法吗?


问题答案:

group 是保留关键字,它用于查询。

您需要对保留字使用backtics作为

`group`

在这里检查他们的名单

https://dev.mysql.com/doc/refman/5.5/zh-CN/reserved-
words.html



 类似资料:
  • 问题内容: 我收到错误消息 “您的SQL语法有错误;请检查与您的MySQL服务器版本相对应的手册,以找到在第1行的“ orderr”附近使用的正确语法” -因此,我认为错误是用了两个 ‘, 但是在我的代码中我没有用 ‘ 。注意,该表实际上被命名为订购者。 问题答案: 在大多数数据库中,您无法参数化表名称之类的对象名称,在MySQL中,理论上您可以做到,因为默认情况下,MySQL Connector

  • 我有一个覆盆子圆周率,我用来上大学。由于我家里没有显示器,我决定用Lubuntu在我的笔记本电脑上汇编代码。

  • 我有一个非常简单的ftp路由,应该递归地从URL下载文件。今天让它静止运行将是非常重要的。 正如Upadete1中添加的那样,我没有使用pollenfrich()。现在无法从计时器启动路由,但它可以工作。所以我将结束这个问题。我真的很喜欢幂等消费者的想法(与最初的问题无关)。

  • 本文向大家介绍解决delphi TAdoQuery组件的close方法导致”列名无效“错误的问题,包括了解决delphi TAdoQuery组件的close方法导致”列名无效“错误的问题的使用技巧和注意事项,需要的朋友参考一下 1,故障现象 一次程序运行,出现如下错误: 对应代码如下: 2,故障分析 Query_alert_2的语句在查询分析器中单独执行是正常的。排除语句出错。 如果注解掉Quer

  • 问题内容: 我需要不时动态地更改表和变量,因此我编写了这样的python方法: 但是,这导致语法错误异常。我尝试对其进行调试,因此我将变量打印在方法中,然后手动将其填充,并且可以正常工作。所以我不确定我在做什么错? 是因为我尝试使用表的替代品吗? 另外,我该如何调试mysqldb以便将替换查询打印为字符串? 问题答案: DB API中的参数替换仅适用于值-不适用于表或字段。您将需要使用普通的字符串

  • 我在几个设备和浏览器上测试了一个网页(PC、平板、iPad、android手机),一切看起来都不错。 我发现的唯一问题是当我使用Android手机测试网页时,使用IE作为浏览器。 网页以某种方式被推到屏幕左侧,导航链接没有正确对齐。只有在android手机上使用Internet Explorer查看时才会出现这种情况。 知道为什么会发生这种情况以及如何解决吗? 以下是网页:http://www.n