2014-02-08 49 views
0

我想創建從我ebank驗證頁面,電子銀行發送波紋管參數:開捕致命錯誤:類mysqli_result的對象不能轉換爲字符串

$Status = $_POST['status']; 
$Refnumber = $_POST['refnumber']; 
$Resnumber = $_POST['resnumber']; 
     $res = $client->VerifyPayment(array("MerchantID" => $MerchantID , "Password" =>$Password , "Price" =>$Price,"RefNum" =>$Refnumber)); 
$Status = $res->verifyPaymentResult->ResultStatus; 
$PayPrice = $res->verifyPaymentResult->PayementedPrice; 

我想添加量隨波紋管用戶數據庫代碼:

$MerchantID = 'xxxxx'; 
$Password = 'xxxxx'; 




if(isset($_POST['status']) && $_POST['status'] == 100){ 



    $Status = $_POST['status']; 
    $Refnumber = $_POST['refnumber']; 
    $Resnumber = $_POST['resnumber']; 
    $price = $db2->query("SELECT `price` FROM `user_payments` WHERE `invoice_number` = '$Resnumber'"); 

    $client = new SoapClient('http://merchant.parspal.com/WebService.asmx?wsdl');  
    $res = $client->VerifyPayment(array("MerchantID" => $MerchantID , "Password" =>$Password , "Price" =>$Price,"RefNum" =>$Refnumber)); 
    $Status = $res->verifyPaymentResult->ResultStatus; 
    $PayPrice = $res->verifyPaymentResult->PayementedPrice; 

    $db2->query("UPDATE `user_payments` SET `done` = '1' , `refid` = '$Refnumber' WHERE `invoice_number` = '$Resnumber'"); 
    $new_balance = $this->user->info->balance + $PayPrice; 
    $uid = $this->user->info->id; 
    $fee = $PayPrice; 
    $time = time(); 
    $db2->query("UPDATE `users` SET `balance` = '$new_balance' WHERE `id` = '$uid' "); 
    $db2->query("INSERT INTO `user_balance_report` (`uid`,`type`,`fee`,`msg`,`date`)VALUES('$uid','3','+".$fee."','your code: ".$Resnumber."','$time')"); 
    $D->user_purchase = "success <br>cost $fee Added in your account."; 
    $this->user->sess['LOGGED_USER'] = $this->network->get_user_by_id($this->user->id, TRUE); 
    $this->user->info = & $this->user->sess['LOGGED_USER']; 
    } 

,但我有看到這個代碼時,從銀行回來: 開捕致命錯誤:類mysqli_result的對象無法轉換爲字符串這一行:

 $res = $client->VerifyPayment(array("MerchantID" => $MerchantID , "Password" =>$Password , "Price" =>$Price,"RefNum" =>$Refnumber)); 
+0

你的價格變量是一個MySQL的數據集對象,提取物價格從它的字符串,你會好 –

+0

你能更解釋我好嗎?我怎麼能夠 ? :) – user3261715

+0

不知道你用什麼類來處理數據庫操作,但通常你會得到一組對象/數組,其中每一個看起來像'array('id'=> 1,'price'=> 9.99 )',通過執行' - > query()',所以你只需要提取它。合理? –

回答

0

我應該用

$price = $db2->fetch_field("SELECT `price` FROM `user_payments` WHERE `invoice_number` = '$Resnumber'"); 
相關問題