PHP Select语句绑定到输入框

时间:2011-02-16 05:41:33

标签: php mysql

我有一个数据库表,其中包含的字段包括类别(cat)和发布价格(postprice)。我需要将网页上的输入字段绑定到与同一页面下拉框中选择的类别对应的postprice值。我看到语法错误但不确定它是什么。这是下拉框的代码:

<select name="postcat" class="req" style="width:220px" onchange="getCats(this.value);">
<?php
if ($_POST['postsubcats'] == "none") {
echo "<option value=\"none\" selected=\"selected\">Select a category</option>";
} else {
echo "<option value=\"none\">Select a category</option>";
}

?>
<?php

$querycat = "SELECT * FROM `index` LIMIT 0, 30 ";
$resultcat = mysql_query($querycat);

while($rowcat = mysql_fetch_array($resultcat)){
echo "<option value=\"" . $rowcat['cat'] . "\">" . $rowcat['title'] .  "</option>\n";
}

?>
</select>

以下是输入框的代码段:

<input type="text" id="adFee" name="adfee" contenteditable="false" 
value="<?php SELECT 'postprice' FROM 'index' WHERE 'cat' = $_POST(['postcat']); ?>">

非常感谢你的帮助。

修改 感谢Mash,我修改了我的代码如下:

<label>Posting Fee:</label><br/>
<?php
$queryprice =  "SELECT 'postprice' FROM 'index' WHERE 'cat' = " . $_POST('postcat'); 
$resultprice = mysql_query($queryprice);  
while($row= mysql_fetch_array($resultprice)){   
echo '<input type="text" id="adFee" name="adfee" contenteditable="false" value="';   
echo $row['postprice'] . '" />';
} ?>

我现在收到致命错误:函数名必须是字符串。我错过了一个'或者;某个地方?

致命错误已解决。新错误:

mysql_fetch_array(): supplied argument is not a valid MySQL result resource 

修订代码:

<?php

$queryprice =  "SELECT postprice FROM 'index' WHERE cat = '" . mysql_real_escape_string($_POST['postcat'])."'"; 

$resultprice = mysql_query($queryprice);  

while($row= mysql_fetch_array($resultprice)){   

?><input type="text" id="adFee" name="adfee" contenteditable="false" value="<?php echo $row['postprice'];?>">
<?php } ?>

这是否意味着我的代码块没有“看到”选项字段postcat?

1 个答案:

答案 0 :(得分:2)

试试这个..

<label>Posting Fee:</label><br/>
<?php
$queryprice =  "SELECT postprice FROM `index` WHERE cat = '" . mysql_real_escape_string($_POST['postcat'])."'"; 
$resultprice = mysql_query($queryprice);  
while($row = mysql_fetch_array($resultprice)){   
?>
<input type="text" id="adFee" name="adfee" contenteditable="false" value="<?php echo $row['postprice'];?>" />
<?php } ?>

记住:

  1. 仅在必要时使用php标签
  2. $ _ POST [而不是(
  3. 或者如果你想按照自己的方式行事,请使用下面的

    echo '<input type="text" id="adFee" name="adfee" contenteditable="false" value="'.$row[postprice].'" />';