使用单选按钮设置 Cookie 首选项


Using radio button to set cookie preferences?

我有这 4 个单选按钮,我在其中提交到 validatepreferences.php这是下面的 php 代码,但是我很难理解为什么当我单击提交时什么都没有经过 if 语句,因此没有给我我的 cookie 来根据用户输入更改图像

<input type="radio" name="radioimage"><img class="prefimage" src="../images/image1.jpg">
                        <br>
                        <input type="radio" name="radioimage"><img class="prefimage" src="../images/image2.jpg">
                        <br>
                        <input type="radio" name="radioimage"><img class="prefimage" src="../images/image3.jpg">
                        <br>
                        <input type="radio" name="radioimage"> No Picture   

我认为 php 代码一定有错误,或者我的 if 不正确,但我看不到它。

<?php
    if(isset($_POST['radioimage'])){
        $radioimage = $_POST['radioimage'];
        if ($radioimage == "0" || $radioimage == "1" || $radioimage == "2" || $radioimage =="3") {
        setcookie("image", $radioimage, time()+300);
    }
}
    ?>

您没有在表单中为单选按钮提供值。您必须为它们提供值,以便您可以在 validatepreferences.php 中使用 $_POST 检索这些值。所以 HTML 应该是:

                    <input type="radio" name="radioimage" value="1"><img class="prefimage" src="../images/image1.jpg">
                    <br>
                    <input type="radio" name="radioimage" value="2"><img class="prefimage" src="../images/image2.jpg">
                    <br>
                    <input type="radio" name="radioimage" value="3"><img class="prefimage" src="../images/image3.jpg">
                    <br>
                    <input type="radio" name="radioimage" value="4"> No Picture