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";}
?>

一切都很好,感谢您的所有建议。

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

4

1 回答 1

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。

于 2013-04-07T12:26:38.800 回答