Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.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_Html_Mysql_Drop Down Menu_Textbox - Fatal编程技术网

在PHP中选择下拉值时显示文本框值

在PHP中选择下拉值时显示文本框值,php,html,mysql,drop-down-menu,textbox,Php,Html,Mysql,Drop Down Menu,Textbox,我一个月前才学会PHP,所以现在我被困了几天,但无法解决它。我有一个1表2列的数据库。我想在PHP中将列1的值带到下拉列表中(我做到了!),但我还想在选中下拉列表值的情况下显示列2的值 示例:如果下拉列表值current为1011,则文本框自动获取值“News”。但是我的代码永远不会返回文本框的值作为下拉列表的第一个值!!!在文本框中返回值之后,它总是返回到下拉列表中的第一个值,而不是保留我想要选择的值。有人能帮我复习一下这个问题吗?谢谢大家! <?php $con=mysqli_

我一个月前才学会PHP,所以现在我被困了几天,但无法解决它。我有一个1表2列的数据库。我想在PHP中将列1的值带到下拉列表中(我做到了!),但我还想在选中下拉列表值的情况下显示列2的值

示例:如果下拉列表值current为1011,则文本框自动获取值“News”。但是我的代码永远不会返回文本框的值作为下拉列表的第一个值!!!在文本框中返回值之后,它总是返回到下拉列表中的第一个值,而不是保留我想要选择的值。有人能帮我复习一下这个问题吗?谢谢大家!

<?php
    $con=mysqli_connect("localhost","root","","my_database_exam"); //connect to my database 
    mysqli_set_charset($con,"utf8"); //set UTF8 for my database

    if(isset($_POST["id_type"])) { //check for the action of select value
        $id_theloai=$_POST["get_id_type"];      
        $ten="SELECT * FROM theloai WHERE ID_TheLoai='".$get_id_type."'";
        $kqten=mysqli_query($con,$ten);
        while($rowten=mysqli_fetch_array($kqten)) {
            $tenresult=$rowten[1];
        }
    }
?>
<form method="POST" action="park.php">
    <label>TYPE OF NEWS</label>
    <select onchange="this.form.submit()" name="id_type">
        <?php
            $sl="SELECT * FROM theloai";
            $result=mysqli_query($con,$sl);
            while ($row=mysqli_fetch_array($result)) {
                echo '<option value="'.$row[0].'">'.$row[0].'</option>';
            }
        ?>
    </select>

    <br>
    <input type="text" name="" value="<?php if(isset($_POST["id_type"])) echo $tenresult; ?>">

</form>


<?php mysqli_close($con);?>


(抱歉英语不好)

将post值指定为
$id\u theloai=$\u post[“get\u id\u type”]
但是您在查询中使用了
$get\u id\u type
。。。应该是:

$get_id_type=$_POST["get_id_type"];

警告:使用
mysqli
时,您应该使用和将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了严重的错误。切勿将
$\u POST
$\u GET
或任何用户数据直接放入查询中,如果有人试图利用您的错误,这可能非常有害。哪里定义了
$GET\u id\u type
?为什么
$id\u theloai
被定义但没有被使用?听起来像是未定义的索引/变量对我来说是的,这是我的错。但在修复了所有这些之后,它仍然不能正常工作。当我选择并没有在文本框中显示第一个值时,它仍然没有在下拉列表中保留值!(抱歉英语不好)如果您检查
isset($\u POST[“id\u type”])
并存储
$\u POST[“get\u id\u type”]
,则应使用与在选择中设置的名称相同的键:
$get_id_type=$_POST["get_id_type"];