【发布时间】:2017-01-02 18:04:35
【问题描述】:
我对 MySQLi 和 PHP 有疑问。
我创建了一个表单,一旦我输入所需的值并点击提交,这些值就会立即发送到数据库。这没有错。
我想要发生的是:点击提交按钮后,PHP 将回显刚刚提交的条目的结果。也就是说:
`INSERT INTO table VALUES (x, x, y) -> SELECT x, x, y FROM table ORDER BY id DESC LIMIT 1`
我尝试了很多方法来做到这一点,但所有方法要么回显上一个条目(刚刚提交的条目之前的那个),要么根本不起作用。
我已经尝试过 mysqli_insert_id($conn) 但这没有返回任何内容。
这是我的代码目前所在的位置:
$conn = mysqli_connect($server, $user, $pw, $BD);
if (!$conn) {
die ('<span style="color: #FF0000;">"connection failed: "</span>' . mysqli_connect_error());
}
$nome = $_POST['nome'];
$preco = $_POST['preco'];
$query = "INSERT INTO produtos(nome, preco) VALUES ('$nome', '$preco')";
$result = mysqli_insert_id($conn);
var_dump ($result);
if (mysqli_query($conn, $query)){
echo '<br>'."Succeeded!";
} else {
echo '<br>'."ERROR!" .'<br>'. $query ."<br>". mysqli_error($conn) .'<br><br>'. '<span style="color: #FF0000;">You have to fill all the fields.</span>';
}
mysqli_close($conn);
请注意,如果有任何帮助,var_dump 目前会输出 int(0)。 提前致谢。我一直在为此苦苦挣扎。
【问题讨论】:
-
不执行查询就无法获得
mysqli_insert_id!! -
@Saty 好的,修好了!现在mysqli_insert_id 起作用了。但是,它仍然从最后一个条目之前的条目返回 id。