使用'发布数据;标题(位置:)&x27;在php中

使用'发布数据;标题(位置:)&x27;在php中,php,header,http-post,Php,Header,Http Post,我刚刚为我的网站做了一个手稿。表单将数据发布到自身,然后检查所有数据是否正确。如果是这样,它将加载一个付款页面。要加载此付款页面,我使用: header(location: payment.php); 因此,我想将数据发送到我正在加载的页面,我想我可以使用: $userid = mysql_insert_id(); 要将最后一个id添加到数据库中,但它不起作用,可能我用错了。无论如何,我知道数据库中每个记录上的电子邮件地址和id都是唯一的,所以我想也许我应该将标题改为: heade

我刚刚为我的网站做了一个手稿。表单将数据发布到自身,然后检查所有数据是否正确。如果是这样,它将加载一个付款页面。要加载此付款页面,我使用:

  header(location: payment.php);
因此,我想将数据发送到我正在加载的页面,我想我可以使用:

  $userid = mysql_insert_id();
要将最后一个id添加到数据库中,但它不起作用,可能我用错了。无论如何,我知道数据库中每个记录上的电子邮件地址和id都是唯一的,所以我想也许我应该将标题改为:

 header(location: payment.php?email=$email);
通过这种方式,它会将电子邮件地址放入URL中,我可以在下一页通过以下方式再次找到该用户:

 $email = $_GET['email'];
现在这一切都很好,我可以从数据库中获取用户的详细信息。然而,我认为把某人的电子邮件地址放进URL不是最好的做法,但我一辈子都想不出另一种方法来解决这个问题

有什么建议或好办法吗

感谢您抽出时间。

使用持久数据与客户端关联 使用
$\u SESSION
将数据与当前客户端关联,不要忘记调用
SESSION\u start()

注意:这需要在客户端使用cookie


将功能包含到一个文件中 尽管如果发布数据的页面的唯一目的是验证数据,那么您可以
include(“payment.php”),无需重定向

或者将表单登录页的功能放在
payment.php


使用发送到payment.php的GET参数 您还可以重定向到
payment.php?id=
,其中
是事务的id,但不应公开真实id,因为这会降低安全性

除非您选中查看,以便用户只能访问实际属于他们的
id
s

可以改为使用支付信息的散列,因为该值不容易猜测。

使用持久数据与客户端关联 使用
$\u SESSION
将数据与当前客户端关联,不要忘记调用
SESSION\u start()

注意:这需要在客户端使用cookie


将功能包含到一个文件中 尽管如果发布数据的页面的唯一目的是验证数据,那么您可以
include(“payment.php”),无需重定向

或者将表单登录页的功能放在
payment.php


使用发送到payment.php的GET参数 您还可以重定向到
payment.php?id=
,其中
是事务的id,但不应公开真实id,因为这会降低安全性

除非您选中查看,以便用户只能访问实际属于他们的
id
s


可以使用支付信息的散列来代替,因为这个值不容易猜到或根本猜不到。

在这两个页面中执行任何操作之前,只需启动一个会话即可

<?php session_start()
最后,在付款页面上,您可以通过

$email = $_SESSION['email'];

在做这两页中的任何事情之前,只需开始一个会话

<?php session_start()
最后,在付款页面上,您可以通过

$email = $_SESSION['email'];


我想你应该回去看看为什么
mysql\u insert\u id()
不起作用。这将是最好的方式让数据被传递。

我想你应该回去检查一下为什么
mysql\u insert\u id()
不起作用。这是获取数据的最佳方式。

一旦您更新了付款,请从数据库中创建/获取GUID或唯一id,并使用GUID或唯一id重定向到成功页面,公开此id不会有任何伤害。

一旦您更新了付款,请从数据库中创建/获取GUID或唯一id,并使用guid或唯一id重定向到成功页面,公开此id不会有任何伤害。

使用会话并将数据存储到会话中有什么关系?我一看到这些话,就会立即想到!谢谢。顺便说一下,
位置:
标题(不要使用相对位置)。老实说,尽管发布了所有复杂的会话内容,但按照您第一次想到的方式发布电子邮件地址并没有什么错。但是,如果要使用此命令运行查询,则需要根据需要对输入或以这种方式接收的任何内容进行清理。使用会话并将数据存储到会话中有什么意义?当我看到这些单词时,我会立即想到!谢谢。顺便说一下,
位置:
标题(不要使用相对位置)。老实说,尽管发布了所有复杂的会话内容,但按照您第一次想到的方式发布电子邮件地址并没有什么错。但是,如果要使用此功能运行查询,则需要根据需要对输入或以这种方式接收的任何内容进行清理。我认为这是因为我使用的是与原始表单不同的页面功能。。。。这有关系吗?
mysql\u query()
是否在同一页面中插入用户?只要是这样,
mysql\u insert\u id()
应该可以正常工作。不,我想这就是我没有得到的。。。。。所以也许我应该拿到身份证然后把它寄过来。谢谢。是的,你应该这样做。我想这是因为我使用的是与原始表单不同的页面功能。。。。这有关系吗?
mysql\u query()
是否在同一页面中插入用户?只要是这样,
mysql\u insert\u id()
应该可以正常工作。不,我想这就是我没有得到的。。。。。所以也许我应该拿到身份证然后把它寄过来。谢谢。是的,你应该这样做。始终最好这样做。当您