2016-09-22 76 views
-2

我試圖從數據庫插入等級和給定等級的呼叫平均

<?PHP 
$connection = mysqli_connect("localhost", "akdnaklnd", "lfnlfns","faknfns"); 
$game = $_POST['game']; 
$post_rating = $_POST['rating']; 
$find_data = mysqli_query("SELECT * FROM rates WHERE game='$game'"); 
while($row = mysqli_fetch_assoc($find_data)){ 
    $id=$row['id']; 
    $current_rating = $row['rating']; 
    $current_hits=$row['hits']; 
} 
$new_hits = $current_hits + 1; 
$update_hits= mysqli_query("UPDATE rates SET hits = '$new_hits' WHERE id='$id'");         
$pre_rating= $current_rating + $post_rating; 
$new_rating = $pre_rating/$new_hits; 
$update_rating = mysqli_query("UPDATE rates SET rating ='$new_rating' WHERE  id='$id'"); 
header("location : average.php"); 
?> 
+5

將是巨大的,如果你可以提到你看到的以及錯誤。 – kkaosninja

+0

在joomla中運行無法訪問此頁面? –

+0

無法獲得輸出 –

回答

0

插入評級數據庫,並呼籲平均,鑑於評級添加$connection參數去mysqli_query這樣的:

$find_data = mysqli_query($connection, "SELECT * FROM rates WHERE game='$game'"); 

在冒號前的「位置」後刪除空格符號:header("location: average.php");

+0

是的,現在它工作非常感謝 –

0

嘗試通過刪除所有MySQL從代碼中提取東西,並保留重定向代碼,即沒有空格。

header("location:average.php"); 

如果它工作,那麼你的MySQL查詢必須有錯誤。嘗試在執行每個MySQL查詢操作後添加錯誤檢查。希望這可以幫助您在重定向語句之前找到執行終止的斷點。

+0

好吧,我的支票 –

+0

是的,現在它正在工作thaks了很多..! –

0

首先,您不需要選擇數據,您可以直接編寫像這樣的更新查詢。 請確保您傳遞變量而不是字符串,以便更好地練習使用雙引號和單引號以及多特。

最重要的傳遞連接變量。

$update_hits= mysqli_query($connection,"UPDATE rates SET hits = hits+1 WHERE id='".$id."'"); 

嘗試回聲$ update_hits如果給一個再查詢成功的其他有問題。

對於您可以使用錯誤日誌

if (!$result) { 
     $errorQuery = $update_hits; 
     throw new Exception(mysqli_error($connection)); 
     $errorMessage = mysqli_real_escape_string($connection,$e->getMessage()); 
     echo $errorMessage; 
     exit(); 
    } 
    else{ 
     echo "Success"; 
    }