使用php从Mysql编辑数据

时间:2015-04-24 02:28:25

标签: php mysql database

我已经在带有编辑功能的PHP表格中显示MySQL数据了,但是我无法编辑它们,我也不知道为什么。

<?php
require("db.php");
$id =$_REQUEST['rid'];

$result = mysql_query("SELECT * FROM replies WHERE rid = '$id'");
$test = mysql_fetch_array($result);
if (!$result) 
        {
        die("Error: Data not found..");
        }
                $trigger1=$test['trigger1'] ;
                $reply2= $test['reply2'] ;              

if (isset($_POST['save']))
{   
    $triggera = $_POST['trigger1'];
    $replyb = $_POST['reply2'];

    mysql_query("UPDATE `replies`(trigger,reply) VALUES ('$triggera','$replyb') WHERE rid = '$id'");  
    echo "Saved!";

}
mysql_close($conn);
?>

这是MySQL数据库代码:

CREATE TABLE IF NOT EXISTS `replies` (
  `trigger` text NOT NULL,
  `reply` text NOT NULL,
  `usercontrib` tinyint(4) NOT NULL DEFAULT '0',
  `rid` int(10) unsigned NOT NULL
) ENGINE=MyISAM AUTO_INCREMENT=332 DEFAULT CHARSET=utf8;

最后:

    <form method="post">
        <table>
            <tr>
                <td>Title:</td>
                <td><input type="text" name="trigger" value="<?php echo $trigger1 ?>"/></td>
            </tr>
            <tr>
                <td>Author</td>
                <td><input type="text" name="reply" value="<?php echo $reply2 ?>"/></td>
            </tr>
            <tr>
                <td>&nbsp;</td>
                <td><input type="submit" name="save" value="save" /></td>
            </tr>
        </table>
    </form>

当我点击&#34;编辑&#34;在要修改的具体数据中,&#34;编辑&#34;中的字段。页面是空的,我认为&#34; echo&#34;这不是功能。

2 个答案:

答案 0 :(得分:2)

您的更新SQL不正确。 试试这个:

UPDATE `replies` SET trigger = '$triggera', reply = '$replyb' WHERE rid = '$rid'

希望有所帮助!

答案 1 :(得分:0)

$ _ POST数组的键值与&#39; name&#39;的值完全相同HTML格式的属性。因此,如果要检查是否在php程序中设置了save,则需要进行以下更改 -

$triggera = $_POST['trigger'];
$replyb = $_POST['reply'];

另外,要检查您是否可以尝试使用print_r方法在页面上打印POST数组。