SQL将页面查询的结果发布到db

时间:2014-04-04 16:08:14

标签: php mysql sql

我有2位代码,它们都在做他们应该做的事情:

A)此代码根据输入字段中的值显示和更新数据库中的字段

<input id="input" class="input-small" type="text" name='C_N_C' value="<?php if(isset($_POST['C_N_C'])) echo $_POST['C_N_C']; else echo $C_N_C; ?>">

B)此代码计算另一个数据库中的值并返回一个或多个行

<?php 
$query = "SELECT COUNT(C_ID) FROM CfortoC WHERE C_ID = '{$_GET['id']}'";
$results = mysql_query($query);
$rows = mysql_fetch_array($results);
echo $rows[0];
?>

单独这些工作正常!

**我需要做的是先运行查询FIRST,然后在输入框中显示该值。然后当&#34; UPDATE&#34;单击以将C_N_C值更新为查询的值! **

我希望这是有道理的!谢谢你的帮助!

更多代码

根据要求,这里有更多代码!

 <div class="control-group">
      <label class="control-label" for="input">C Label </label>
      <div class="controls">
      <input id="input" class="input-small" type="text" name='C_N_C' value="<?php if(isset($_POST['C_N_C'])) echo $_POST['C_N_C']; else echo $C_N_C; ?>">

 <?php if(isset($_GET['id'])) { ?>

 <?php 
      $query = "SELECT COUNT(C_ID) FROM CfortoC WHERE C_ID = '{$_GET['id']}'";
      $results = mysql_query($query);
      $rows = mysql_fetch_array($results);
      echo $rows[0];
 ?>

 <?php } ?>
      </div>
</div>

1 个答案:

答案 0 :(得分:1)

我相信这是你正在寻找的。第一次通过页面时,输入将显示$C_N_C的值,这是SELECT COUNT语句的结果(假设有$_GET['id']的值)。当用户在该字段中输入数据并提交表单时,将设置$_POST['C_N_C']的第二次,输入将显示该值。

<?php 
if(isset($_GET['id'])) {
    $id = mysql_real_escape_string($_GET['id']);
    $query = "SELECT COUNT(C_ID) FROM CfortoC WHERE C_ID = '{$id}'";
    $results = mysql_query($query);
    $rows = mysql_fetch_array($results);
    $C_N_C = $rows[0];
} 

if(isset($_POST['C_N_C'])){
    $C_N_C = htmlspecialchars($_POST['C_N_C']);
}

?>

<div class="control-group">
<label class="control-label" for="input">C Label </label>
    <div class="controls">

    <input id="input" class="input-small" type="text" name="C_N_C" value="<?php echo $C_N_C; ?>">

    </div>
</div>

此外,自PHP 5.5起,不推荐使用mysql_函数。 您应该切换到mysqli functionsPDO