2013-04-07 139 views
0

发现了一个更简单的方法周围将数据添加到搜索结果

<html> 
<form method="post" name="update" action="edit.php" /> 
Alliance Name : 

<input type="text" name="term" /> 

Diplomacy : 

<select name="dip"> 
     <option value="">Neutral</option> 
     <option value="Hostile">Hostile</option> 
     <option value="pending">Pending</option> 
     <option value="friendly">Friendly</option> 
     <option value="">Neutral</option> 
     </select> 
<input type="submit" name="Submit" value="update" /> 
</form> 

</html> 

connection 

$term = $_POST['term']; 
$dip = $_POST['dip']; 

$query = "UPDATE my_table SET dip = '$dip' WHERE alliance = '$term'"; 

if(mysql_query($query)){ 
echo "updated";} 
else{ 
echo "fail";} 
?> 

所有的伟大工程,感谢您的咨询。

我正在慢慢到达那里。你们都是有很大的帮助,我尊重你大大

+1

当你说'add'时,你的意思是改变数据库中的数据还是添加一个全新的行? – christopher 2013-04-07 12:25:25

+0

更新声明中您想要执行的操作。 根据查询,您只需用'$ dip'变量更新'dip'列,其中'dip'列值等于'$ dip'值。 表示您只是更新具有相同值的certail记录? – 2013-04-07 12:27:21

+0

该列已经存在一个NULL值,我想插入数据来替换NULL – 2013-04-07 12:29:28

回答

2

不会做实际上是将数据添加到数据库中

这是唯一的事情,因为你的SQL:

UPDATE mordred13 SET dip='$dip' WHERE dip='$dip' 

实际上并没有改变任何东西(就像说“设置蓝色到蓝色的所有东西的颜色”)。如果你想更新是NULL(从您的意见收集)列,你可以这样做:

UPDATE mordred13 SET dip='$dip' WHERE dip IS NULL 

几个重要的旁白,你的代码很容易受到SQL注入和mysql_*功能已被弃用。研究使用支持参数化查询的API,例如mysqli或PDO。