PHP Session在函数内部无效

时间:2016-02-18 22:38:13

标签: php session pdo

我有一个函数,即在有人通过paypal购买了一个项目之后,我不需要将特定数据插入到数据库中,我需要它将用户名插入到数据库中,用户名存储在会话中以及某些奇怪的内容即使在调用该函数的函数中,即使在编写session_start();时,会话也无法工作。 继承我的代码:

    function insert_data($request){
    session_start();
    require_once('../pdo_connect.php');


$post=$request;
$item_name=$this->issetCheck($post,'item_name');
$amount=$this->issetCheck($post,'mc_gross');
$txn_id=$this->issetCheck($post,'txn_id');
$payment_status=$this->issetCheck($post,'payment_status');
$payer_id=$this->issetCheck($post,'payer_id');
$payer_user=$_SESSION['username'];

$send_values = $conn->prepare("INSERT INTO transactions (item_name,amount,txn_id,payment_status,payer_user) VALUES (:scriptname,:amount,:txnid,:paymentstatus)");

    $send_values->bindParam(':scriptname',$item_name);
    $send_values->bindParam(':amount',$amount);
    $send_values->bindParam(':paymentstatus',$payment_status);
    $send_values->bindParam(':txnid',$txn_id);
    $send_values->bindParam(':payeruser',$payer_user);


$send_values->execute();    

    } 

我不确定我在这里做错了什么。谢谢你的高级:)

1 个答案:

答案 0 :(得分:0)

这有效:

film_fieldsets = deepcopy(DisplayableAdmin.fieldsets)
film_fieldsets[0][1]["fields"].insert(1, "release_date")

它的作用是将这些值发送给paypal,但因为它被称为自定义paypal并没有对它们做任何事情并将它们发送给IPN侦听器。