PHP更新命令无法正常工作

时间:2013-08-02 22:35:22

标签: php mysql

我现在一直撞在墙上约2个小时,我无法弄清楚我做错了什么。我只是想用新信息更新MySQL数据库。但当我点击“更新信息”时,没有任何事情发生。

<div id="tabs-1"> 
<?php  

 //update main informaion

if(isset($_POST["toolnameupdate"])){

  $companyname1 = "";

  $toolname1 = "";

 include_once("../php_includes/db_connect.php");

 $companyname1 = $_POST['clientname'];

 $toolname1 = $_POST['webtoolname'];

 $sql = "UPDATE siteinformation SET clientname = $companyname1, srcname = $toolname1";

$query = mysqli_query($db_connect, $sql); 

error_reporting(E_ALL);

header('Location: user.php');
}
?>     
<form method="post" action="">
  <fieldset>
<legend><strong>Main Title Information</strong></legend>
<div id="prompt">Client Company Name:</div><div id="answer"><input type="text" name="clientname" id="clientname" value="<? echo $companyname; ?>"/></div>
<div id="prompt">Web Tool Name:</div><div id="answer"><input type="text" name="webtoolname" id="webtoolname" value="<? echo $toolname; ?>"/></div>
<div id="prompt"><input type="submit" id="toolnameupdate" name="toolnameupdate" value="Update Information" /></div><div id="answer">&nbsp;</div>
<div id="prompt">&nbsp;</div><div id="answer">&nbsp;</div>
</fieldset> 
</form>
  </div>  

有人能看到缺少信息的地方吗?

由于

2 个答案:

答案 0 :(得分:5)

我不确定这是否是完整的代码。但表单字段应包含在<form>标记中。

<form method="post" action="">
<fieldset>
<legend><strong>Main Title Information</strong></legend>
<div id="prompt">Client Company Name:</div><div id="answer"><input type="text" name="clientname" id="clientname" value="<? echo $companyname; ?>"/></div>
<div id="prompt">Web Tool Name:</div><div id="answer"><input type="text" name="webtoolname" id="webtoolname" value="<? echo $toolname; ?>"/></div>
<div id="prompt"><input type="submit" id="toolnameupdate" name="toolnameupdate" value="Update Information" /></div><div id="answer">&nbsp;</div>
<div id="prompt">&nbsp;</div><div id="answer">&nbsp;</div>
</fieldset> 
</form>

正确的语法是$ _POST ['..'],而不是括号。

并将error_reporting(E_ALL);移到文件顶部,否则不会太有用。

答案 1 :(得分:4)

$_POST('clientname')应为$_POST['clientname']。和其他帖子一样。另请阅读Aris关于表单标签的回答。

修改代码后,删除了变量周围的引号,它们需要保留。

$sql = "UPDATE siteinformation SET clientname = '$companyname1', srcname = '$toolname1'";