将数据从MySQL数据库加载到下拉列表中的文本框单击

时间:2015-12-22 16:26:39

标签: php html mysql

我有这个代码



<?php

  include("konek.php");

mysql_connect('localhost', 'root', '');
mysql_select_db('psc_db');
$sql = "SELECT * FROM komponen ORDER BY komponen_id";
//$query = "SELECT * FROM taxi_services ORDER BY SID";
$result2 = mysql_query($sql); //$conn

if(isset($_POST["loadbtn"]))
{
    $id = (integer) $_POST["codes"];

    $query = "SELECT nama_komponen, ekuivalen_sks, ekuivalen_jam FROM komponen WHERE komponen_id = '$id' ";
    $result = mysql_query($sql);
    $details = mysql_fetch_array($result);

    $savedName = $details["nama_komponen"];
    $savedJam = $details["ekuivalen_sks"];
    $savedSks = $details["ekuivalen_jam"];
}

?>

<html>
<head>
</head>
<body>

<div id="upserv">
<b id="caption2">Planning</b>
<br/><br/>
    <form name="upServForm" method="post" >
        <?php
        $dropdown = "<select name='codes'>";
        while($row = mysql_fetch_assoc($result2)) 
        {
            $dropdown .= "\r\n<option value='{$row['komponen_id']}'>{$row['komponen_id']}</option>";
        }
        $dropdown .= "\r\n</select>";
    ?>
     Service ID  <?php echo $dropdown; ?> <input type="submit" value="Load" name="loadbtn">
        <table width="300" border="0">
          <tr>
            <td>Name</td>
            <td><input type="text" name="upName" style="text-align:right" value="<? echo $savedName; ?>" /></td>
          </tr>
          <tr>
            <td>ekuivalen sks</td>
            <td><input type="text" name="upCost" style="text-align:right" value="<? echo $savedJam; ?>" /></td>
          </tr>
          <tr>
            <td>ekuivalen jam</td>
            <td><input type="text" name="upActive" style="text-align:right" value="<? echo $savedSks; ?>" /></td>
          </tr>
        </table>
</div>
<br/>
<div id="buttons">
    <input type="reset" value="Clear" /> <input type="submit" value="Save" name="updatebtn" />
</div>
    </form>

</body>
</html>
&#13;
&#13;
&#13;

,结果是这样的

result

单击按钮后,我仍然无法成功显示数据。 我从另一篇文章中得到了示例代码,我尝试了它,上面是结果(但我还是失败了)。 我想要做的就是在没有加载按钮的情况下将数据显示在文本框中

请帮我编码这段代码,谢谢

2 个答案:

答案 0 :(得分:0)

我认为您的服务器中未配置短标签。 您必须将<?替换为<?php

答案 1 :(得分:0)

我认为您必须停止使用PHP短标记(<? ?>),或者您需要或习惯使用服务器上 php.ini 文件中的启用它。 发生的事情是php处理程序由于短标记而无法识别输入的value属性中的代码,因此不会对其进行评估。总而言之,启用短标记,您可以为<?=执行<? echo之类的操作,很不错...... 在你的php.ini文件中,

short_open_tag 代表开始和结束<? ?>表示法。

asp_tags 代表<% %>符号

我创建了这个来模拟你的问题

<?php 
    if ($_POST['btnsubmit']){
        echo $_POST['codes'];
    }
?>

<html>
<body>
    <form method="post">
        <select name="codes">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
        </select>   
        <input type="submit" name="btnsubmit" value="send"/>
    </form>
</body>
</html>

并且按预期工作,另外一点是,如果要跟踪选择输入上的所选选项,则必须在输入的选项中添加条件选择子句,以打印所选的=&#34;选择& #34;根据先前提交的值对选项进行归因。