查询显示结果而不点击

时间:2017-06-21 09:40:20

标签: php mysql

我的项目是一个活动页面,志愿者可以在活动页面设置是否可以提供帮助。 管理页面显示事件列表以及是否有人可用。

问题是我想让志愿者表明他/她尚未确认是否有空。目前的结果是,当志愿者1已经确认时,志愿者2中未显示未确认的事件。

简单的数据库布局

events:
e_id e_name
1    Test event
2    Party

availability
a_id    v_id    e_id    avail
1       1       1       1
2       1       2       2
3       2       1       1

volunteers:
v_id    name
1       abc
2       xyz

正如你可以读出的那样,志愿者2尚未证实他/她参加活动2。

我现在有以下代码(PHP和MySQL)来读出事件和可用性:

$sql = "SELECT * FROM events LEfT JOIN availability ON events.e_id = availability.e_id WHERE availability.v_id is NULL OR availability.v_id = $v_id " ;
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo('<table border="0" width="100%" name="events">');
    while($row = $result->fetch_assoc())
        {
        echo('<tr><td><h2>');
        echo $row["e_name"];
        echo('</h2>);
        echo('<br>Available? ');
            if ($row["besch"] == 1 ) { // 1 = present
            echo('<img src="img/valid.png"><br>');
            }
            elseif ($row["besch"] == 2 ) { // 2 = absent
            echo('<img src="img/unvalid.png"><br>');
            }
            else {  // ? = No information in database
            echo('<img src="img/question.png">&nbsp;* New event!<br>');
            }
            echo ('</td></tr>');
        }
    echo('</table>');
    } else {
    echo ('There are no events.<hr>');
    }

问题在于,一旦志愿者填写了他/她的可用性,事件2就不再显示为志愿者2的新事物。

我的查询中的问题是,一旦志愿者在可用性中提交文件,根据查询,availability.v_id不再是NULL,而是志愿者n°2。

(我稍微编辑了在本网站上提交的代码:将我的荷兰语单词翻译成英语,从MySQL查询中删除了ORDER BY ......我希望不会创建错误,哪些不存在;)< / p>

0 个答案:

没有答案