我希望在使用mySQL提交的表单上更新表列。
。
<form action="<?=$_SERVER['PHP_SELF']; ?>" method="post">
<fieldset>
<div data-role="fieldcontain">
<label for="status" class="select">Current Status:</label>
<select name="status" id="status">
<option value="Open">Open</option>
<option value="Closed">Closed</option>
</select>
</div>
<input type="submit" data-theme="a" name="submit" value="submit-value"></input>
</fieldset>
</form>
<?php
if(isset($_POST['submit'])) {
$query = "UPDATE vtiger_troubletickets SET status='".addslashes($_POST['status'])."' WHERE ticket_no='".$ticket['ticket_no']."'";
echo $query;
mysql_query($query);
}
?>
查询我在地方工作在mysql正确,除了在我的表单提交数据库不更新。我已经尝试了"提交"的输入和按钮标签。一切都连接起来了,就像我以前用连接脚本测试的那样。你知道为什么我的专栏没有更新吗?
你应该有这样的东西:
<?php
if(isset($_POST['submit'])) {
$query = "UPDATE table_name SET col1='".addslashes($_POST['status'])."' WHERE id=1";
mysql_query($query);
}
?>
像这样的东西应该能奏效。显然,您需要更改table_name和id nr:)。
你可以把所有的php代码放在if语句后面的块中,像这样:
if(isset($_POST['submit'])){ //Your update goes here }
这确保表单已提交,这样您就不会在每个请求时都查询DB。如果我没理解错的话,这里有一个小讲座:
Javascript和HTML是客户端脚本,因此它们在web浏览器中运行。PHP是一种服务器端脚本语言,它运行在服务器上。
因为Javascript不能直接与PHP"对话",所以你不能将PHP函数分配给onClick事件,但是你可以使用Javascript向服务器发出AJAX请求。如果你感兴趣,可以在网上浏览一下。网上有大量的PHP和AJAX教程
你应该检查在这个页面是否"状态"已经发送或没有(isset($_POST['status'])),然后如果它已经发送,只需抓取值并执行查询(UPDATE table SET whatever=something WHERE condition)