2014-10-12 438 views
-4

对于PHP来说,这是相当新颖的并且可以解决这个问题。您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以在'''附近使用正确的语法)

我试图从下拉菜单中插入一些信息到数据库中,但不断收到此错误。如果可以的话请帮忙。

PHP代码为:

<select name="group_ID"> 
    <?php 
    $pos_query ="SELECT groupName, group_ID FROM 'operations' JOIN members WHERE operations.group_ID = members.group_ID"; 
    $pos_results = $db->query($pos_query); 

    for ($i=0; $i < $pos_results->num_rows ; $i++) 
    { 
     $pos_row = $pos_results->fetch_assoc(); 
     echo'<option value"'.$pos_row['group_ID'].'">'; 
     echo $pos_row['groupName'].'</option>'; 
    } 

    ?></select></td> 

我有一个表称为操作,并试图它加入到另一个表调用的成员,该数据插入到成员表。 错误是: 您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以在'''附近使用正确的语法)SELECT'Church Elders'FROM operations JOIN members ON ope'at line 1.

对不起我发布了错误代码。 实际的代码是:

$查询=“INSERT INTO成员(电子邮件,姓名,性别,出生日期,个人资料,密码) SELECT $ GROUP_ID 运营 加入会员 WHERE operations.group_ID =“$ GROUP_ID '“;

$result = $db->query($query); 

正试图将电子邮件,姓名,性别...... GROUP_ID到成员表和操作表获取GROUP_ID并得到以下错误消息:

错误插入的详细信息。错误消息: 您的SQL语法有错误;请检查与您的MySQL服务器版本相对应的手册,以选择正确的语法以在''附近使用'SELECT Church Elders FROM操作JOIN成员WHERE oper'在第1行。

Please help !!!!

+0

我们需要'$ pos_query'的值。 – Tserkov 2014-10-12 06:05:28

+0

你在sql命令中有错误。不在上面。 – itachi 2014-10-12 06:05:45

+0

请发布错误。 – 2014-10-12 06:07:51

回答

0

无需使用带有表名的单引号(“操作”)&与像groupName.operations,group_ID.operations行指定表名。

+0

试过但没有运气。 – 2014-10-12 06:42:16

+0

我已经测试过它使用像“SELECT table1.num1 FROM table1 JOIN table2 WHERE table1.id = table2.id”这样的虚拟数据&发现好,你能指定新的错误信息吗? – Jobayer 2014-10-12 06:54:40

0

你可能打算在你的SQL查询中使用反引号,而不是单引号。此外,您可能是指ON声明,而不是WHEREWHERE用于筛选,而ON则告诉JOIN声明要加入的列。

SELECT `groupName`, `group_ID` FROM `operations` JOIN `members` ON `operations`.`group_ID` = `members`.`group_ID` 
+0

我确实将WHERE更改为ON,但仍然使用反引号获取错误消息。越来越沮丧! – 2014-10-12 06:40:53

+0

哪个错误?标题中的那个,还是您对OP最新评论中的一个?你的OP注释中的错误看起来像你试图在一个'query()'调用中执行多个查询,这对于该函数来说是不可能的,不管缺少分号。 – Tserkov 2014-10-12 06:45:14

相关问题