从一个表中获取值以插入PHP中的其他表

时间:2017-04-25 11:15:26

标签: php mysql

此代码未获得在切换案例中使用的单选按钮的值。我必须从一个表中获取值以保存到另一个表中。 请告诉我我在哪里犯错,以及如何解决这个问题。

$qry="select * from quiz";
        $result=mysql_query($qry);

        while($row = mysql_fetch_array($result))
        {
            echo "<br>". $row['QuestionNo']." ". $row['Question']. " " . $row['NoOfOptions'];
            ?>  

            <form method="post" action="quiz.php" >        
            <?php 
            $noofoptions = $row['NoOfOptions'];
            switch ($noofoptions)
            {   
                Case 0:
                        echo "<textarea col='50' row='4' name='subjectiveanswer'></textarea>";
                break;      
                Case 1:
                ?>  A: <?php echo $row['OptionA'];?><input type="radio" name="option" value="<?php echo $row['OptionA'];?>"> <?php
                break;
                case 2:
                ?>  A: <?php echo $row['OptionA'];?><input type="radio" name="option" value="<?php echo $row['OptionA'];?>"> <?php
                ?>  B:<?php echo $row['OptionB'];?><input type="radio" name="option" value="<?php echo $row['OptionB'];?>">  <?php
                break;
                case 3:
                ?>  A: <?php echo $row['OptionA'];?><input type="radio" name="option" value="<?php echo $row['OptionA'];?>"> <?php
                ?>  B:<?php echo $row['OptionB'];?><input type="radio" name="option" value="<?php echo $row['OptionB'];?>">  <?php
                ?>  C:<?php echo $row['OptionC'];?><input type="radio" name="option" value="<?php echo $row['OptionC'];?>">  <?php
                break;
                Case 4:
                ?>  A: <?php echo $row['OptionA'];?><input type="radio" name="option" value="<?php echo $row['OptionA'];?>"> <?php
                ?>  B:<?php echo $row['OptionB'];?><input type="radio" name="option" value="<?php echo $row['OptionB'];?>">  <?php
                ?>  C:<?php echo $row['OptionC'];?><input type="radio" name="option" value="<?php echo $row['OptionC'];?>">  <?php
                ?>  D:<?php echo $row['OptionD'];?><input type="radio" name="option" value="<?php echo $row['OptionD'];?>">  <?php
                break;          
            }

            ?>
            <div class="button"><a href ="quiz.php?Save=<?php echo $row['QuestionNo'] ; ?>"> Save   </a></div>                      

                <?php echo "<hr />";  ?>
            </form>

            <?php   

        }                    
                if(isset($_GET['Save']))
                {   
                    if(isset($_POST['option']))
                    {
                        $a = $_POST['option'];
                    } else 
                    {
                            echo " answer is not set "; exit;
                    }

                    $q= $_GET['Save'];

                    SaveAnswer($q,$a);


                }

2 个答案:

答案 0 :(得分:0)

使用get方法,您可以在隐藏中传递questionNo值,并从php端检索它。您还需要更改保存按钮,类型为:

<input type="hidden" name="QuestionNo" value="<?php echo $row['QuestionNo']?>" >
<input type="submit" name="Save" value="Save" >

答案 1 :(得分:0)

中的变量保存
<div class="button">
<a href ="quiz.php?Save=<?php echo $row['QuestionNo'] ; ?>">Save</a>
</div>

永远不会被提交有两个原因:表单将被发送到的网址是 quiz.php (在<form method="post" action="quiz.php" >中),而不是 quiz.php?保存= xy < / strong>,第二个是表单永远不会提交(没有提交按钮)。

将链接转为提交按钮,例如<button>Save</button>,否则永远不会提交表单。将?Save=<?php echo $row['QuestionNo'] ; ?>附加到表单的网址,它应该按预期工作。