数据库的主键作为PHP头信息

数据库的主键作为PHP头信息,php,mysql,database,Php,Mysql,Database,我已经在application.php中创建了一个注册表单,提交时将使用submit.php对其进行处理并存储内容,我想重定向到Thank.php,使用一个名为message的参数,其值等于最近插入行的主键。。例如,它应该将我的第100个申请人返回到页面 www.mydomain.com/thanky.php?message=100 其中100是主键(AI) 换句话说,我想打印表的主键作为用户的引用id。。我试过了 标题(“位置:Thanke.php?message=“.id”)和 标题(“位置

我已经在
application.php
中创建了一个注册表单,提交时将使用
submit.php
对其进行处理并存储内容,我想重定向到
Thank.php
,使用一个名为message的参数,其值等于最近插入行的主键。。例如,它应该将我的第100个申请人返回到页面

www.mydomain.com/thanky.php?message=100

其中100是主键(AI)

换句话说,我想打印表的主键作为用户的引用id。。我试过了

标题(“位置:Thanke.php?message=“.id”)

标题(“位置:Thanke.php?message=“.$\u POST['id'])

两个都不适合我

请帮帮我,伙计们

编辑:

这是我的
submit.php
code

错误的执行顺序-简单修复 首先分配$id,然后运行查询

扭转它们,使其工作

不使用自动增量


我在您评论中的查询中看到,您手动传递了要输入的id。您是否意识到
mysql\u insert\u id()
不会返回您调用“id”的sql列,而是返回您设置了自动递增的列?这是表中的一行,可以自动获取递增的数字,而无需手动输入。

。。。看起来您正在将
mysql\uuu
方法与
mysqli
混合使用,并且执行顺序错误

如果数据库表是自动递增的,则不需要在查询中传递ID。通过调用
$id=mysql_insert_id()
并在查询中使用id,将0作为使用下一个自动增量id的id传递

$conn->query($sql)之后获取
insert\u id
将返回您使用的插入id

回显一些变量以查看您为
mysql_insert_id()获取的值前后

但是,如果您正在执行
$conn->query()
,那么您就没有使用标准的
mysql\uu
函数

试试这个:

require "admin/sources/connection.php";

// Other variables are declared here

$sql = "my_INSERT_query_goes_here";

$result = $conn->query($sql);

if($result) {
    $id = $conn->insert_id;
    header("location: thanks.php?message=".$id);
}

让我们看看
submit.php
你说的“它不工作”是什么意思?@webbiedave添加为edit:)@TimWolla每次它进入
www.mydomain.com/thanky.php?message=0
而不是所需的id。。但是数据库中的内容已正确更新!请注意,
require
是一个构造,而不是一个函数,不需要parans。
$id=mysql\u insert\u id()应在查询运行后执行。。。否则就没有插入id…我尝试了这个
$sql=“插入到寄存器值('$id',*其他变量*)”$结果=$conn->query($sql)$id=mysql_insert_id();如果($result){header(“location:thanking.php?message=“.$id);}
但它不工作!通过arg 0传递静止消息
require "admin/sources/connection.php";

// Other variables are declared here

$sql = "my_INSERT_query_goes_here";

$result = $conn->query($sql);

if($result) {
    $id = $conn->insert_id;
    header("location: thanks.php?message=".$id);
}