mismatch_questionnaire 问卷

 

<?php 
require_once('comment/startsession.php');
$title = "Quistionaire";
require_once('comment/header.php');
require_once('comment/navmenu.php');

if (!isset($_SESSION['user_id'])) {
    echo '<p>Please <a href="mismatch_login.php">log in </a> to access this page.</p>';
    exit();
}
require_once('dbc.php');
//第一步 判断是否是空响应表   如果不是生成一个空响应表
$query = "select * from match_response where user_id = '".$_SESSION['user_id']."'";

$data = mysqli_query($dbc,$query);
if (mysqli_num_rows($data) == 0) { //如果没有响应记录 查找分类表里的id值
    $query = "select topic_id from match_topic order by category_id    ,topic_id"; 
    $data = mysqli_query($dbc,$query);
    $topicIDs = array();
    while ($row=mysqli_fetch_array($data)) {
        array_push($topicIDs,$row['topic_id']);//将主题id保存到一个数组中
    }
    //把id插入到响应表  生成一个空响应表  response_id,user_id,topic_id,response
    foreach ($topicIDs as $topic_id) {
        $query = "insert into match_response (user_id,topic_id) values ('".$_SESSION['user_id']."','$topic_id')";
        mysqli_query($dbc,$query);
    }
    
}
//第二步如果存在submit提交,保存响应
if (isset($_POST['submit'])) {
    foreach ($_POST as $response_id => $response) {
        $query = "update match_response set response = '$response' where response_id = '$response_id'";
        mysqli_query($dbc,$query);
    }
    echo '<p style="color:green"><strong>You response have been saved.</strong></p>';
 }
//第三步从数据库里拿出响应生成表格
// $query = "select response_id,topic_id,response from match_response where user_id = '".$_SESSION['user_id']."'";
// $data = mysqli_query($dbc,$query);
// $responses = array();
// while ($row=mysqli_fetch_array($data)) {
//     //用topic_id找到对应的主题
//     $query2 = "select name,category from match_topic where topic_id = '".$row['topic_id']."'";
//     $data2 = mysqli_query($dbc,$query2);
//     if (mysqli_num_rows($data2)==1) {//如果有响应
//          $row2 = mysqli_fetch_array($data2);
//          $row['topic_name'] = $row2['name'];
//          $row['category_name'] = $row2['category'];
//          array_push($responses,$row); //把这个虚拟的五列表格保存到responses数组 response_id,topic_id,response,topic_name,topic_category
//          // echo '<pre>';
//          // var_dump($responses);

//      } 
// }
//三表内联查询代码  简化版
 $query = " select mr.response_id,mr.topic_id,mr.response, mt.name as topic_name,mc.name as category_name from match_response as mr inner join match_topic as mt using(topic_id) inner join match_category as mc using (category_id) where mr.user_id='".$_SESSION['user_id']."'";
 $data = mysqli_query($dbc,$query);
 $responses = array();
 while ($row=mysqli_fetch_array($data)) {
     array_push($responses,$row);
 }

mysqli_close($dbc);

echo '<form method="post" action="'.$_SERVER['PHP_SELF'].'">';
echo '<p>How do you fell about each topic?</p>';
$category = $responses[0]['category_name'];//第一个主题
echo '<fieldset><legend>'.$responses[0]['category_name'].'</legend>';
foreach ($responses as $response) {
    //如果主题改变了  增加新主题  其他主题
    if ($category != $response['category_name']) {
        $category = $response['category_name'];
        echo '</fieldset><fieldset><legend>'.$response['category_name'].'</legend>';
    }
    //类别
    echo '<label'.($response['response'] == NULL ? 'class="error"' : ' ').' for="'.$response['response_id'].'">'.$response['topic_name'].':</label>';

    echo '<input type="radio" name="'.$response['response_id'].'" id="'.$response['response_id'].'" value="1" '.($response['response']==1? 'checked="checked"':'' ).'/> Love';
    echo '<input type="radio" name="'.$response['response_id'].'" id="'.$response['response_id'].'" value="2" '.($response['response']==2? 'checked="checked"':'' ).'/> Hate<br/>';
}
echo '</fieldset>';
echo '<input type="submit" name="submit" value="Save Questionnaire"/>';
echo '</form>';


require_once('comment/footer.php');

 ?>
<!--  <form>
     <fieldset>
         <legend>abcd</legend>
         <label for="abc" >abcd</label>
         <input type="radio" name="abd" id="abc" value="1">love
         <input type="radio" name="abd" id="abc" value="2">hate
     </fieldset>
 </form> -->

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值