Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在paypal验证付款之前不将用户输入保存在数据库中?_Php_Session_Paypal - Fatal编程技术网

Php 如何在paypal验证付款之前不将用户输入保存在数据库中?

Php 如何在paypal验证付款之前不将用户输入保存在数据库中?,php,session,paypal,Php,Session,Paypal,我想使用html表单获取一些用户信息,提交后,用户输入存储在会话中,用户被重定向到paypal执行支付操作。付款验证后,用户将再次重定向到网站,输入将存储在数据库表中 问题是:会话变量在重定向到网站后丢失 有人需要帮忙吗 谢谢。从php手册中,session\u start从get、post或cookie获取会话id。听起来你在用饼干。要在会话中使用cookies,您需要在将任何内容发送到浏览器之前调用session_start。如果这不是问题,解决方法是将会话id设置为get参数,并基于返回页

我想使用html表单获取一些用户信息,提交后,用户输入存储在会话中,用户被重定向到paypal执行支付操作。付款验证后,用户将再次重定向到网站,输入将存储在数据库表中

问题是:会话变量在重定向到网站后丢失

有人需要帮忙吗


谢谢。

从php手册中,session\u start从get、post或cookie获取会话id。听起来你在用饼干。要在会话中使用cookies,您需要在将任何内容发送到浏览器之前调用session_start。如果这不是问题,解决方法是将会话id设置为get参数,并基于返回页中的id加载会话


那是个坏主意。用户到达目标页面并不意味着他们是在贝宝发送后到达的。他们甚至可以欺骗
Referer
标题,使其看起来像他们那样


相反,在发送到PayPal之前保存他们的信息,然后使用PayPal的IPN系统进行更新并将其标记为付费。

我看不出任何原因,为什么会话会丢失。如果用户返回同一主机,则其会话应可用。如何创建会话?我只是使用session_start(),然后,您是否会发布站点的新页面?如果没有,sessionID将不会保存在用户的浏览器中。当然,会话与用户会话一起工作,用户可以在所有用户空间中导航,而不会丢失会话值。根据这句话,我仍然看不到任何原因,为什么用户从PayPal返回的会话会消失。谢谢您的重播,但我已经尝试过这个问题。