我正在使用 PHP 和 MySQL 进行交易。使用 PHPMyAdmin,我将查询插入到我的大学数据库中,我应该在其中使用某些表中的事务。到目前为止,我已经为我的 Staff 交易编写了这段代码,但我的问题是如何获取插入 addStaff.php 的信息,以便我可以将其用作对此代码的查询?就在它说的地方 //values();
<?php
function begin()
{
mysql_query("BEGIN");
}
function commit()
{
mysql_query("COMMIT");
}
function rollback()
{
mysql_query("ROLLBACK");
}
mysql_connect("localhost","username", "password") or die(mysql_error());
mysql_select_db("test") or die(mysql_error());
$query = "INSERT INTO Staff (id,name,position,phone,email,roomNumber,dnumber)"
//values();
begin(); // BEGIN
$result = mysql_query($query);
if(!$result)
{
rollback(); // ROLLBACK
echo "You rolled back";
exit;
}
else
{
commit(); // COMMIT
echo "Transaction was succesful";
}
?>
最佳答案
这可能是您正在寻找的:
$new_row = mysql_insert_id();
$query = mysql_query("SELECT * FROM `Staff` WHERE `id`=".$new_row);
$r = mysql_fetch_assoc($query);
echo $r['name'];
将回显插入的行名称。
编辑:这是一个非常非常基本的操作方法版本,在将任何内容投入生产之前,您需要阅读 SQL 注入(inject)、准备好的语句/转义用户输入、XSS 攻击等等SQL查询安全的更重要部分
关于php/mysql事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5983504/