2014-01-07 80 views
1

在關於提取關聯數組的php文檔(http://php.net/manual/en/mysqli-result.fetch-assoc.php)中,它沒有給出任何使用預準備語句的示例。我試着重新解釋那裏給出的代碼,使用我在過去做過的準備好的語句。但是這個代碼只是錯誤。那麼是否有可能爲此使用準備好的語句?如果是這樣,怎麼樣?如何用預處理語句檢索關聯數組?

<?php 
    $mysqli = new mysqli('website','username','pw','db'); 

    /* check connection */ 
    if (mysqli_connect_errno()) { 
     printf("Connect failed: %s\n", mysqli_connect_error()); 
     exit(); 
    } 

    $startTime = 1389056400; 
    $query = $mysqli->prepare("SELECT * FROM Table2 WHERE Start = ?"); 
    $query->bind_param('i', $startTime); 
    $result = $mysqli->query($query); 

    /* associative array */ 
    $row = $result->fetch_array(MYSQLI_ASSOC); 
    echo $row["Start"]; 
    echo $row["End"]; 

    /* free result set */ 
    $result->free(); 

    /* close connection */ 
    $mysqli->close(); 
    ?> 
+0

它應該工作完全相同的方式與預處理語句。什麼是錯誤? – FaddishWorm

+0

警告:mysqli :: query()期望參數1爲字符串,在第13行D:\ Hosting \ 11750767 \ html \ finder \ index.php中給出的對象。 **致命錯誤:調用成員函數在第16行的D:\ Hosting \ 11750767 \ html \ finder \ index.php中的非對象上的fetch_array()。** – user3168054

回答