【发布时间】:2014-06-29 11:38:57
【问题描述】:
我在 file1.php 中有一个表单,我在其中输入新闻文章,该文章被发送到 MYSQL。我想要做的是使用 MAX(id) 显示来自 MYSQL 的 file2.php 上输入的数据。
这是我的 PHP 代码:
文件1.php
if (isset($_POST['Publish']))
$Name = $_POST["Name"];
$Content = $_POST["Content"];
$NewsType = $_POST["NewsType"];
$Author = $_POST["Author"];
$Date = $_POST["Date"];
mysql_connect('localhost', 'username', 'password') or die (mysql_error());
mysql_set_charset('utf8');
mysql_selectdb('dbname') or die (mysql_error());
$query = "INSERT INTO `table`
(`Name`, `Content`, `NewsType`, `Author`, `Date`)
VALUES
('$Name','$Content','$NewsType','$Author','$Date')";
mysql_query($query) or die (mysql_error());
header ('Location: File2.php');
mysql_close();
【问题讨论】:
-
SELECT * FROM table ORDER BY id DESC LIMIT 1? -
不是错误,但请考虑使用 PDO 或 MySQLi
-
我想你是在问最后插入的 id 吗?
-
@asprin auto_increment 列不保证最后插入的值最大
-
此外,您的 SQL 会受到 SQL 注入,因为您直接将
$_POST值放入查询中而无需任何过滤