Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-奇数_Php_Arrays - Fatal编程技术网

PHP-奇数

PHP-奇数,php,arrays,Php,Arrays,我正在尝试创建一个“查找奇怪的单词”应用程序(给出一个单词列表,如猫、狗、鸟和汽车,后者是奇怪的,因为它不是动物) 首先,我从数据库中随机检索并洗牌五个单词。它们被称为:奇数(奇数),一,二,三,四(其他四个) 然后,我生成一个包含五个单词的表单(单选按钮),以便用户可以选择其中一个: $words = array ( $odd, $one, $two, $three, $four, ); shuffle($words); foreach ($words

我正在尝试创建一个“查找奇怪的单词”应用程序(给出一个单词列表,如猫、狗、鸟和汽车,后者是奇怪的,因为它不是动物)

首先,我从数据库中随机检索并洗牌五个单词。它们被称为:奇数(奇数),一,二,三,四(其他四个)

然后,我生成一个包含五个单词的表单(单选按钮),以便用户可以选择其中一个:

$words = array
(
    $odd,
    $one,
    $two,
    $three,
    $four,
);
shuffle($words);

foreach ($words as $word)
   {
     $string = $word;
     echo '<html><input type="radio" name="odd" value="'.$string.'">'.$string.'<br><br></html>';
   }
$words=数组
(
美元多,
一美元,
两美元,
三美元,
四美元,
);
洗牌($words);
foreach($words作为$word)
{
$string=$word;
回显'.$string'

'; }
在下一个PHP页面中,我想检查所选单词是否为奇数。我不知道怎么做。
有什么建议吗?谢谢

你需要设法把这个奇怪的词带到下一页。有许多不同的方法可以做到这一点,可以说最简单的方法是将奇数字保存在表单中的变量中

会话启动();
如果(isset($\u POST['odd'])和&isset($\u SESSION['odd'])和&$\u POST['odd']==$\u SESSION['odd'])){
退出(“你是个天才,你说得对”);
}否则{
如果(设置($_POST['odd']){echo“对不起,再试一次”;}
}
//这里是sql查询
$words=数组
(
美元多,
一美元,
两美元,
三美元,
四美元,
);
$\会话['odd']=$odd;
洗牌($words);
回声';
foreach($words作为$word)
{
回显“$word

”; } 回声'; 回声';
使用$\u SESSION变量处理此问题,以确定是否选择了奇数

<?php
    session_start();
    $odd = $_SESSION['odd'];
    if ($_REQUEST['odd'] == $odd) { // $_REQUEST handles both $_POST and $_GET
        echo "Odd was selected";
    } else {
        echo "Odd was not selected";
    }
?>
假设以下代码来自显示单选按钮的Odd.php(假设您处理表单元素和提交按钮)


在下一个.php文件中,使用下面的代码验证是否选择了odd

<?php
    session_start();
    $odd = $_SESSION['odd'];
    if ($_REQUEST['odd'] == $odd) { // $_REQUEST handles both $_POST and $_GET
        echo "Odd was selected";
    } else {
        echo "Odd was not selected";
    }
?>


希望这有帮助

猫狗鸟车,对我来说奇怪的词是鸟,四个字母。。。!您应该从循环中删除这些html标记。您不希望在每个循环中创建新的html文档。你应该只打印输入标签。在你的表单请求中,你还需要传回一个变量来识别问题(如问题id),然后对照数据库检查答案是否正确。你如何首先选择哪个是单字?这就是我想知道的,但我意识到我应该就这个问题发表评论。
if ($_SESSION['realodd'] == $_POST['odd']) {
  print "You found the odd word.";
}
session_start();

if(isset($_POST['odd'])&& isset($_SESSION['odd'])&& $_POST['odd']==$_SESSION['odd']){
  exit ("You're a genius, you got the right word");
}else{
  if (isset($_POST['odd'])){ echo "Sorry, try again";}
}

   //sql query goes here

$words = array
(
    $odd,
    $one,
    $two,
    $three,
    $four,
);
$_SESSION['odd'] = $odd;
shuffle($words);
    echo '<form method="POST">';
foreach ($words as $word)
   {
     echo '<input type="radio" name="odd" value="$word"/>$word<br><br>';
   }
    echo '<input type="submit" value="Submit"/>';
    echo '</form>';
<?php
    session_start();
    $_SESSION['odd'] = $odd;

    $words = array
    (
        $odd,
        $one,
        $two,
        $three,
        $four,
    );

    shuffle($words);
    echo '<form method="POST" action="Next.php">';
    foreach ($words as $word)
    {
        $string = $word;
        echo '<input type="radio" name="odd" value="'.$string.'">'.$string.'<br><br>';
    }
    echo '<input type="submit" /></form>';
?>
<?php
    session_start();
    $odd = $_SESSION['odd'];
    if ($_REQUEST['odd'] == $odd) { // $_REQUEST handles both $_POST and $_GET
        echo "Odd was selected";
    } else {
        echo "Odd was not selected";
    }
?>