Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP+mySQL:三个表,使用多个复选框编辑一个条目_Php_Mysql_Join_Checkbox - Fatal编程技术网

PHP+mySQL:三个表,使用多个复选框编辑一个条目

PHP+mySQL:三个表,使用多个复选框编辑一个条目,php,mysql,join,checkbox,Php,Mysql,Join,Checkbox,我有三张桌子 - questions (question_id, name_of_question) - events (event_id, name_of_event, etc) - event_questions (question_to_event_id, question_id, event_id) 当用户去编辑一个事件,即事件表中的一行时,他们会遇到一系列问题 - Sample Question 1 - Sample Question 2 - Sample Question 3...

我有三张桌子

- questions (question_id, name_of_question)
- events (event_id, name_of_event, etc)
- event_questions (question_to_event_id, question_id, event_id)
当用户去编辑一个事件,即事件表中的一行时,他们会遇到一系列问题

- Sample Question 1
- Sample Question 2
- Sample Question 3...and so on
我希望这样做的方式是,一些复选框将在他们上次创建条目或编辑条目时被选中,但其他复选框将保持未选中状态。无论如何,所有可能的问题都应该列为选项

现在我只是有点不对劲

     $query = 'SELECT id, name 
      FROM questions
      INNER JOIN event_questions 
      ON event_questions.question_id = questions.id
      WHERE event_questions.event_id LIKE ' . $event_id;

      $rows = $wpdb -> get_results($query);

     foreach ($rows as $key=>$value) {

    $question_id = $value->id;
    $question_str = $value->name;?>
    <input type='checkbox' checked='yes' value='<?php echo $question_id; ?>' 
name='question_ids[]' />&nbsp;&nbsp;<?php echo $question_str; ?><br /><?php
}
但是,这样做只是显示选中的复选框,而不是所有可能的复选框,并且我多次将值传递到表中,这样一个有问题1和2的事件就变成了问题1、2和2,这根本不是我想要的


是否有办法显示所有复选框,并选中正确的复选框,使事件与正确选择的问题相匹配,并使其正确更新

从问题表中选择,左外连接到事件\u问题表。这将为您提供event_questions表中的所有问题和空值,其中该问题与事件无关。这些是未选中的。

不要使用带通配符的类似字符串比较来比较数字。其中event_questions.event_id='$event_id.我尝试使用==但无效。那么就用一个=符号?比如,这不是赋值,而是相等?等等,这是=而不是==…嗯。