2013-12-10 28 views
0

我正在做一個網上購物的樣本網站,但我在這裏卡住了。當我將所有的細節插入到數據庫中時,itemname和order_id沒有成功插入,剩餘的字段可以正常工作。存儲貝寶詳細資料在數據庫中

這是形式的代碼:

<form method="post" action="https://www.sandbox.paypal.com/cgi-bin/webscr"> 
       <input type="hidden" name="cmd" value="_xclick"> 
       <input type="hidden" name="add" value="1"> 
       <input type="hidden" name="business" value="[email protected]"> 
       <input type="hidden" name="item_name" value="<?php echo $_SESSION['itemname'];?>"> 
       <input type="hidden" name="item_number" value="<?php echo $_SESSION['itemnum'];?>"> 
       <input type="hidden" name="amount" value="1"> 
       <input type="hidden" name="shipping" value="0"> 
       <input type="hidden" name="shipping2" value="0"> 
       <input type="hidden" name="handling" value="0"> 
       <input type="hidden" name="currency_code" value="USD"> 
       <input type="hidden" name="return" value="example.com"> 
       <input type="hidden" name="notify_url" value="example.com" /> 
       <input type="hidden" name="quantity" value="1"> 
       <input type="submit" style="margin-top:10px; background:url(images/btn_bg1.png); color:#FFFFFF;" border="0" name="addtocart" value="[email protected] 1$" width="87" height="23" alt="Make payments with PayPal - it's fast, free and secure!"> 
       </form> 

,這下面的代碼是用於存儲在數據庫中的信息。

$item_name = $_POST['item_name']; 
     $business = $_POST['business']; 
     $item_number = $_POST['item_number']; 
     $payment_status = $_POST['payment_status']; 
     $mc_gross = $_POST['mc_gross']; 
     $payment_currency = $_POST['mc_currency']; 
     $txn_id = $_POST['txn_id']; 
     $receiver_email = $_POST['receiver_email']; 
     $receiver_id = $_POST['receiver_id']; 
     $quantity = $_POST['quantity']; 
     $num_cart_items = $_POST['num_cart_items']; 
     $payment_date = $_POST['payment_date']; 
     $first_name = $_POST['first_name']; 
     $last_name = $_POST['last_name']; 
     $payment_type = $_POST['payment_type']; 
     $payment_status = $_POST['payment_status']; 
     $payment_gross = $_POST['payment_gross']; 
     $payment_fee = $_POST['payment_fee']; 
     $settle_amount = $_POST['settle_amount']; 
     $memo = $_POST['memo']; 
     $payer_email = $_POST['payer_email']; 
     $txn_type = $_POST['txn_type']; 
     $payer_status = $_POST['payer_status']; 
     $address_street = $_POST['address_street']; 
     $address_city = $_POST['address_city']; 
     $address_state = $_POST['address_state']; 
     $address_zip = $_POST['address_zip']; 
     $address_country = $_POST['address_country']; 
     $address_status = $_POST['address_status']; 
     $tax = $_POST['tax']; 
     $option_name1 = $_POST['option_name1']; 
     $option_selection1 = $_POST['option_selection1']; 
     $option_name2 = $_POST['option_name2']; 
     $option_selection2 = $_POST['option_selection2']; 
     $for_auction = $_POST['for_auction']; 
     $invoice = $_POST['invoice']; 
     $custom = $_POST['custom']; 
     $notify_version = $_POST['notify_version']; 
     $verify_sign = $_POST['verify_sign']; 
     $payer_business_name = $_POST['payer_business_name']; 
     $payer_id =$_POST['payer_id']; 
     $mc_currency = $_POST['mc_currency']; 
     $mc_fee = $_POST['mc_fee']; 
     $exchange_rate = $_POST['exchange_rate']; 
     $settle_currency = $_POST['settle_currency']; 
     $parent_txn_id = $_POST['txn_id']; 
     $pending_reason = $_POST['pending_reason']; 
     $reason_code = $_POST['reason_code']; 
     if (($_POST['payment_status']=='Completed') && ($_POST['receiver_email'] == '[email protected]')){ 
      $fecha = date("m")."/".date("d")."/".date("Y"); 
      $fecha = date("Y").date("m").date("d"); 

      //check if transaction ID has been processed before 
      $checkquery = "SELECT id from paypal_payment_info where id='".$parent_txn_id."'"; 
      $sihay = mysql_query($checkquery); 
      $nm = mysql_num_rows($sihay); 
       if ($nm == 0){ 
        if ($txn_type == "web_accept"){ 
         $strQuery = "INSERT into paypal_payment_info(paymentstatus,buyer_email,firstname,lastname,order_id,street,city,state,zipcode,country,mc_gross,mc_fee,memo,paymenttype,paymentdate,txnid,pendingreason,reasoncode,tax,datecreation) 
          values ('".$payment_status."','".$payer_email."','".$first_name."','".$last_name."','".$custom."','".$address_street."','".$address_city."','".$address_state."','".$address_zip."','".$address_country."','".$mc_gross."','".$mc_fee."', 
          '".$memo."','".$payment_type."','".$payment_date."','".$txn_id."','".$pending_reason."','".$reason_code."','".$tax."','".$fecha."')"; 

          $result = mysql_query($strQuery) or die("Cart - paypal_payment_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno()); 




        } 
        else{ 

         $strQuery = "insert into paypal_payment_info(paymentstatus,buyer_email,firstname,lastname,street,city,state,zipcode,country,m c_gross,mc_fee,itemnumber,itemname,os0,on0,os1,on1,quantity,memo,paymenttype,paymentdate,txnid,pendi ngreason,reasoncode,tax,datecreation) values ('".$payment_status."','".$payer_email."','".$first_name."','".$last_name."','".$address_street."','".$address_city."','".$address_state."','".$address_zip."','".$address_country."','".$mc_gross."','".$mc_fee."','".$item_number."','".$item_name."','".$option_name1."','".$option_selection1."','".$option_name2."','".$option_selection2."','".$quantity."','".$memo."','".$payment_type."','".$payment_date."','".$txn_id."','".$pending_reason."','".$reason_code."','".$tax."','".$fecha."')"; 
         $result = mysql_query("insert into paypal_payment_info(paymentstatus,buyer_email,firstname,lastname,street,city,state,zipcode,country,mc_gross,mc_fee,itemnumber,itemname,os0,on0,os1,on1,quantity,memo,paymenttype,paymentdate,txnid,pendi ngreason,reasoncode,tax,datecreation) values ('".$payment_status."','".$payer_email."','".$first_name."','".$last_name."','".$address_street."','".$address_city."','".$address_state."','".$address_zip."','".$address_country."','".$mc_gross."','".$mc_fee."','".$item_number."','".$item_name."','".$option_name1."','".$option_selection1."','".$option_name2."','".$option_selection2."','".$quantity."','".$memo."','".$payment_type."','".$payment_date."','".$txn_id."','".$pending_reason."','".$reason_code."','".$tax."','".$fecha."')") or die("Default - paypal_payment_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno()); 

        } 

       } 
       else{ 
        echo 'Sorry,Transaction id already exists'; 

       } 

     } 
     else{ 
      echo "<div class=\"errortext\">We cannot verify your purchase. Please contact ".ADMINMAIL."</div>"; 

     } 

回答

2

custom在php數據庫中沒有聲明你的表單中加入這行<input type="hidden" name="custom" value="yourvalue">。確保你的$_SESSION['itemname'];有效。

+0

謝謝親愛的orderid正在工作,但項目名稱呢? – user3077217

+0

嘗試查看$ _SESSION ['itemname']是否在您的上一個會話中以這種方式聲明$ _SESSION ['itemname'] =「您的項目名稱」; –

+0

對不起,問題出在我的查詢中。現在解決了謝謝 – user3077217

0

請嘗試調試代碼。 在將數據插入數據庫之前,您可以嘗試打印print_r($ _ POST)和print_r($ _ SESSION)。

相關問題