我无法使用PHP更新更新textarea

我无法使用PHP更新更新textarea,php,mysql,Php,Mysql,我想做的是在一个文本区域中,在表格的“text”行中显示文本about。。。(那是一个奇怪的句子) 我应该能够添加/删除/编辑文本区域中的文本,然后按save更新它 尝试时,about表会清除所有数据 <?php if(isset($_POST['submit_about'])) { mysql_query("UPDATE about SET `text` = '$row['text']'"); } // get result from database $result =

我想做的是在一个文本区域中,在表格的“text”行中显示文本about。。。(那是一个奇怪的句子) 我应该能够添加/删除/编辑文本区域中的文本,然后按save更新它

尝试时,about表会清除所有数据

<?php 

if(isset($_POST['submit_about']))

{

mysql_query("UPDATE about SET `text` = '$row['text']'");

}

// get result from database
  $result = mysql_query("SELECT * FROM about") 
    or die(mysql_error());

// present the result
  while($row = mysql_fetch_array( $result )) {

  echo "<form method='post' action='uc_admin.php'>
  <textarea name='text' rows='8'>" . $row['text'] . "</textarea>
  <br />
  <button type='submit' name='submit_about' class='btn'>Save</button>";
}

?>
更改

mysql_query("UPDATE about SET `text` = '$row['text']'");

另外,尝试移动到mysqli或PDO..

更改

mysql_query("UPDATE about SET `text` = '$row['text']'");


另外,尝试移动到mysqli或PDO..

您的更新查询应该如下所示:

mysql_query("update `about` set `text`='".mysql_real_escape_string($_POST['text'])."'");

您的更新查询应该如下所示:

mysql_query("update `about` set `text`='".mysql_real_escape_string($_POST['text'])."'");

您应该尝试以下代码

mysql_query("UPDATE about SET `text` = '$_POST['text']' WHERE DBid='dbid'");

DBid是数据库表的主id。

您应该尝试以下代码

mysql_query("UPDATE about SET `text` = '$_POST['text']' WHERE DBid='dbid'");

DBid是您的数据库表主id。

您的查询应该使用$\u POST['text']而不是$行,并且这里存在安全数据卫生问题。您确实应该清理输入。我相信你会的,但我认为这是一个很好的提醒,通常是这样。这里有一个很好的解释:您是真的连接到了数据库还是从上面的代码片段中删除了它?这可能无助于回答您的问题,但您应该停止使用
mysql.*
函数。他们被弃用了。改为使用(从PHP5.1开始支持)或(从PHP4.1开始支持)。如果你不确定该用哪一个,好洞。。。享受您的服务器pwn3d。您的查询应该使用$_POST['text']而不是$row,并且这里存在安全数据卫生问题。您确实应该清理输入。我相信你会的,但我认为这是一个很好的提醒,通常是这样。这里有一个很好的解释:您是真的连接到了数据库还是从上面的代码片段中删除了它?这可能无助于回答您的问题,但您应该停止使用
mysql.*
函数。他们被弃用了。改为使用(从PHP5.1开始支持)或(从PHP4.1开始支持)。如果你不确定该用哪一个,好洞。。。享受您的服务器pwn3d。好吧,那么我应该将所有$row['text']替换为$u POST['text']?至于安全问题,在将用户内容放入mysql数据库时,是否应该使用htmlspecialchars()?使用
mysql\u real\u escape\u string
。如果要在HTML页面中回显用户内容,请使用
htmlspecialchars
。好的,那么我应该将所有$row['text']替换为$\u POST['text']?至于安全问题,在将用户内容放入mysql数据库时,是否应该使用htmlspecialchars()?使用
mysql\u real\u escape\u string
。如果要在HTML页面中回显用户内容,请使用
htmlspecialchars