首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 ><?php ?>中的变量在if/else中不可访问

<?php ?>中的变量在if/else中不可访问
EN

Stack Overflow用户
提问于 2017-09-29 09:59:53
回答 1查看 63关注 0票数 0

因此,我正在构建一个简单的程序,它要求用户输入一个数字,然后将其张贴并生成几个随机的相似数字。

然后,程序要求用户选择正确的变量,然后由程序进行验证。

我遇到了一些问题,因为在if/else语句中没有更好的词,所以我认为变量是不可用的。

我觉得我犯了一个非常简单/愚蠢的错误。

代码语言:javascript
复制
<?php
$numb = $_GET["number"];
switch ($numb) {
    case 1:
        echo "1x<br>";
        $ans = 1; $n1 = rand(($ans - 5), ($ans + 5)); $n2 = rand(($ans - 5), ($ans + 5)); $n3 = 1; $n4 = rand(($ans - 5), ($ans + 5));
    break;
    case 2:
        echo "2";
    break;
    case 3:
        echo "3";
    break;
} echo $ans;

if(isset($_POST['submit']))
{
    $rb = $_POST['radio'];
    if($rb == $ans){echo "test";}
    else{echo "fail";}
}
?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="radio" name="radio" value="<?php echo $n1; ?>"><?php echo $n1 ?>
<input type="radio" name="radio" value="<?php echo $n2; ?>"><?php echo $n2 ?>
<input type="radio" name="radio" value="<?php echo $n3; ?>"><?php echo $n3 ?>
<input type="radio" name="radio" value="<?php echo $n4; ?>"><?php echo $n4 ?>
<input type="submit" name="submit" value="submit" />
</form>
EN

回答 1

Stack Overflow用户

发布于 2017-09-29 10:05:43

在switch/case中使用变量之前,必须先定义变量。

代码语言:javascript
复制
// Check if get is used
if (isset($_GET['number'])){

$numb = $_GET["number"];
// predefine Variables here
$ans = '';
$n1 = '';
$n2 = '';
$n3 = '';
$n4 = '';
switch ($numb)
{
    case 1:
        echo "1x<br>";
        $ans = 1;
        $n1  = rand(($ans - 5), ($ans + 5));
        $n2  = rand(($ans - 5), ($ans + 5));
        $n3  = 1;
        $n4  = rand(($ans - 5), ($ans + 5));
        break;
    case 2:
        echo "2";
        break;
    case 3:
        echo "3";
        break;
}
echo $ans;

if (isset($_POST['submit']))
{
    $rb = $_POST['radio'];
    if ($rb == $ans)
    {
        echo "test";
    }
    else
    {
        echo "fail";
    }
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
    <input type="radio" name="radio" value="<?php echo $n1; ?>"><?php echo $n1 ?>
    <input type="radio" name="radio" value="<?php echo $n2; ?>"><?php echo $n2 ?>
    <input type="radio" name="radio" value="<?php echo $n3; ?>"><?php echo $n3 ?>
    <input type="radio" name="radio" value="<?php echo $n4; ?>"><?php echo $n4 ?>
    <input type="submit" name="submit" value="submit"/>
</form>
<?php
} else {
    echo "Number not set in get!";
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46480672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档