PHP使用HTML表单更新MySQL表

时间:2016-08-03 08:41:52

标签: php html mysql forms

我正在尝试使用HTML页面中的表单来更新我的MySQL表。

这是我的PHP代码

    <?php
 ob_start();
 session_start();
 require_once 'dbconnect.php';

 if( !isset($_SESSION['client']) ) {
  header("Location: homepage_login.php");
  exit;
 }
 // select loggedin users detail
 $res=mysql_query("SELECT * FROM clients WHERE client_id=".$_SESSION['client']);
 $userRow=mysql_fetch_array($res);

 if( isset($_POST['btn-book']) ) { 

 $sql="UPDATE appointments SET date='$slot_date', line='$slot_line', reason='$reason' WHERE id='$id'";
 $result=mysql_query($sql);

 if($result){
echo "Successful";
}

else {
echo "ERROR";
} }

?>

我的HTML表单

<form action"" method"post">

       <p>Date: <input type="text" id="datepicker" name="date"></p>

       <br>
       <br>
       Select a line:
       <ol id="selectable" name="line">
  <li class="ui-widget-content">Line 1</li>
  <li class="ui-widget-content">Line 2</li>
  <li class="ui-widget-content">Line 3</li>
  <li class="ui-widget-content">Line 4</li>
  <li class="ui-widget-content">Line 5</li>
  <li class="ui-widget-content">Line 6</li>
  <li class="ui-widget-content">Line 7</li>
</ol>
<br>
<br>

     <p>Reason for appointment: <input type="text" name="reaosn"></p>

        <div class="form-group">
             <button type="submit" class="btn btn-block btn-primary" name="btn-book">Book</button>
            </div>

            </form>

顺便提一下,这些都在同一页上。所以我需要发生的是当有人填写表单并点击提交按钮时,PHP代码将在特定的已经创建的记录上更新我的MySQL表。

我不确定我是否需要指定要更新的记录,或者我是否完全搞砸了实际更新我的表格。

所以,我的问题是:

如何使用HTML表单和PHP代码更新表格中的特定记录?

2 个答案:

答案 0 :(得分:0)

在表格中你必须像这样改变

<form method="post" action="same_page.php">  
用以下代码改变php。

<?php
ob_start();
session_start();
require_once 'dbconnect.php';

if( !isset($_SESSION['client']) ) {
 header("Location: homepage_login.php");
 exit;
}
// select loggedin users detail
$res=mysql_query("SELECT * FROM clients WHERE client_id='$_SESSION[client]'");
$userRow=mysql_fetch_array($res);
$id=$userRow['client_id'];

if( isset($_POST['btn-book']) ) { 

 $slot_date= $_POST['date'];
 $reason=$_POST['reason'];
 $slot_line=$_POST['line'];

 $sql="UPDATE appointments SET date='$slot_date', line='$slot_line', reason='$reason' WHERE id='$id'";
 $result=mysql_query($sql);

 if($result){
  echo "Successful";
 }else {
  echo "ERROR";
 } 
}

?>

答案 1 :(得分:0)

只需回显表单上的所有值

例如:<p>Date: <input type="text" id="datepicker" name="date"></p>进入<p>Date: <input type="text" id="datepicker" value="<?php echo $result['date']; ?> " name="date"></p>