2014-02-13 49 views
0

有我使哎呀PHP的概念的項目,我無法從數據庫中檢索量。我做兩個文件,一個來回連接amothe HTML我想打印在HTML我DAT使用PHP這裏打印量的html代碼使用哎呀概念

<?php 
    include('connection.php'); 
    $obj=new connect; 

    $x=$obj->search(); 
    while($row = MySQLi_Result($x)) 
    { 
     echo $row['amount']; 
    } 
    ?> 


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <title>Untitled Document</title> 
    </head> 

    <body> 
    Your Amount 
    <input type="text" name="date" value="<?php echo date("d-m-y");?>"/> 
    <input type="text" name="amount" id="amount" /> 

    <a href="add.php">add</a> 
    <a href="subtract.php">subtract</a> 
    </body> 
    </html> 

這裏我connection.php

<?php 
    //con.php 

     class connect 
     { 
      var $conn; 
      function __construct() 
      { 
       $this->conn=new MySQLi("localhost","root","","project111"); 
      } 

      function add($date,$amount,$d) 
      { 
       $addData=$this->conn->prepare('INSERT INTO `totalamount` (`date`,`amount`,detail)values (?,?,?)'); 
       $addData->bind_param('sss',$date,$amount,$d); 
       $addData->execute(); 
      } 

      function search() 
      { 
       $search=$this->conn->prepare('select * from `totalamount`'); 
       $search->execute(); 
       } 
     } 



     ?> 
+2

它不是'oops';),它的'OOP' –

回答

1

search()方法文件的最後一行不返回任何東西。但是,您將其輸出分配給$x,然後嘗試使用它。我猜你想返回你必須首先獲取的mysqli結果手柄...

這也表明,這不是一個好主意,不要做任何錯誤檢測和處理。在使用$x之前,您應該檢查它包含的內容!如果它不是一個有效的mysqli資源句柄,那麼出現了問題,並且在隨後的mysqli檢索命令中嘗試使用它是沒有意義的。

第三個問題是mysqli_result()確實不是如您所期望的那樣從結果集中返回一行。

我建議你學習工作代碼,特別是mysqli擴展的(它也帶有示例)的文件的幾個例子。

-1

你必須有一個函數中寫的回報,那麼你可以貓在一個陣列形式的所有值。

這是寫入語法:

return $ search-> execute();

+0

它將返回bool而不是行或數組 – zzlalani

+0

,這意味着它正在返回需要在數組中轉換的資源ID。 –

+0

http://www.php.net/manual/en/mysqli-stmt.execute.php – zzlalani