找到了一种更简单的方法
<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";}
?>
一切都很棒,感谢您的所有建议。
我慢慢到那里。你们都很有帮助,我非常尊重你们。
答案 0 :(得分: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。