php'ISSET'功能不起作用。或者代码跳过我的if语句

时间:2017-06-07 14:04:18

标签: php html mysql mysqli phpmyadmin

不工作,我获得了与上一个else语句中定义的相同的错误输出。

我是Php的新手,请帮帮我。我做错了什么?

这里是代码

<form action="imagespace.php?groupid=<?php echo $_GET['groupid'] ;?>" method = "POST">
<input type="button" name="Up-Vote" value ="Up-Vote" class="up-votes" />
<input type="button" name="Down-Vote" value="Down-Vote" class="down-votes" />
</form>
<?php

$emailid=$_SESSION['emailid'];
$groupid = $_GET['groupid'];
$emailid = mysqli_real_escape_string($con,$emailid);
$groupid = mysqli_real_escape_string($con,$emailid);

if(isset($_POST['Up-Vote']))
    { echo ' trial';
    $query = "INSERT into VOTES (emailid, groupid, vote) values ('$emailid','$groupid', '1') ";
    $query_run = mysqli_query($con,$query);
    if($query_run)
    {echo 'upvoted';}
    }

else if(isset($_POST['Down-Vote']))
    {
        $query = "INSERT into VOTES (emailid, groupid, vote) values ('$emailid','$groupid', '0') ";
        $query_run = mysqli_query($con,$query);
        if($query_run)
        {echo 'downvoted';}
    }
else{
echo 'error' ;
}
}
?>

</body>
</html>

3 个答案:

答案 0 :(得分:0)

我似乎无法在那里找到提交按钮。尝试添加

<input type="submit" />

在结束</form> - 标记之前。然后尝试如果单击它仍然会出现错误。

此外,尝试使用复选框/单选按钮而不是按钮。我不知道是否可以用按钮做到这一点。

答案 1 :(得分:0)

除了提供的答案之外,我还建议如下:

// Before anything else, start your session
if (!isset($_SESSION)) {
    session_start();
}

// Next, check if your form is actually submitted
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if (isset($_POST['...'])) {

    } elseif (isset($_POST['...'])) {

    }
}
?>

<!-- Keep PHP and html seperated -->
<form>
...
</form>

通过查看您的表单,我注意到您正在使用type='button'。我建议以下之一:

<input type="submit" ... />

<button type="submit">...</button>

答案 2 :(得分:0)

不需要额外提交按钮,<button>默认类型相同。