1

我有一个问题,我可以连接到我的数据库,但它不会将我在文本区域中写的内容保存在数据库中。每次单击更新它都会保存为空白,如果我直接在 mysql 中编写 lalala 并刷新文本区域所在的页面,我可以在文本区域中看到 lalala 但是如果我将文本区域中的文本 lalala 替换为其他内容并单击更新,它删除之前的文本 lalala 并将该字段留空。这是我的代码:

----------------------------- 文件 1 ------------------- --------------

    <?
    include("header.inc.php");

    $result5 = mysql_query("SELECT faq FROM `demo_a_faq`");
    $myrow5 = mysql_fetch_row($result5);

    $faq = $myrow5[0];

    ?>
    <?
    include("../templates/admin-header.txt");
    ?>
    <form method="post" action="faq2.php">
    <TABLE bgcolor="#FFFFFF" bordercolor="#000008" border="0" width="95%" align="center">
    <TR>
    <TD width="50%"><center><font face="Verdana, Arial, Helvetica, sans-serif" size="2">                      <b>Edit FAQ:</b><br><textarea name="faneu" type="text" cols="80" rows="25"><? echo "$faq";     ?></textarea></TD>
     </TR>
     </TABLE><br><br>
<center><input type="submit" value="Update"></form></center>
<?
include("../templates/admin-footer.txt");
?>

----------------------------- 文件 2 ------------------- --------------

<?
include("header.inc.php");

$asl = "UPDATE `demo_a_faq` SET `faq` = '$faneu'";
$results = mysql_query($asl) or die(mysql_error());

?>
<?
include("../templates/admin-header.txt");
?>
<center><br><br><br><b>Updated!</b></center>
<?
include("../templates/admin-footer.txt");
?>

在 header.inc.php 中,我只是连接到数据库。

有人可以告诉我为什么它没有将我在文本区域中写的内容保存到数据库,因为它让我发疯。

提前致谢

4

2 回答 2

1

尝试这个:

<?php
include("header.inc.php");

// Always escape variables used in SQL-queries to avoid SQL-injections.
$faneu = mysql_real_escape_string($_POST['faneu']);

$asl = "UPDATE `demo_a_faq` SET `faq` = '$faneu'";
$results = mysql_query($asl) or die(mysql_error());

?>
<?
include("../templates/admin-header.txt");
?>
<center><br><br><br><b>Updated!</b></center>
<?
include("../templates/admin-footer.txt");
?>
于 2013-06-23T22:57:24.620 回答
0

您不会将您的 textarea 值发布到“文件 2”。小心。

于 2013-06-23T22:54:54.120 回答