だから、私はこのコードをここから手に入れました。データベースに合わせて少し変更し、idGamesに基づいてレートを表示しましたが、うまく機能していますが、今はこのようなことをしたいと思っています。
ゲーム ページに入ってその特定のゲームを評価するときにレートを表示するにはどうすればよいですか? index.php
すべてのゲームを表示するページがgameview.php
あり、各ゲームのパスである がありindex.php
ます。インデックスでゲームをクリックすると、そのゲームがゲームビューに表示されます。でゲームを評価するためにそのコードを実装する方法はありgameview.php
ますか? 私が十分に明確であるかどうかはわかりませんが、そのリンクを例にとると、それはまさに私が望むものです. そして、それMYSQL
が非推奨であることは知っていますが、MYSQLi
それともPDO
. ですから、これで私を助けていただければ幸いです。
<?php
include_once('settings.php');
connect();
$query = "SELECT idGames FROM jogos";
$result = mysql_query($query);
$ids = array();
while ($row = mysql_fetch_assoc($result)) {
$ids[] = $row['idGames'];
}
?>
<html>
<head>
</head>
<body>
<?php
for ($i = 0; $i < count($ids); $i++) {
$rating_tableName = 'jogos';
$id = $ids[$i];
$q = "SELECT total_votes, total_value FROM $rating_tableName WHERE idGames=$id";
$r = mysql_query($q);
if (!$r)
echo mysql_error();
while ($row = mysql_fetch_array($r)) {
$v = $row['total_votes'];
$tv = $row['total_value'];
if ($v)
$rat = $tv / $v;
else
$rat = 0;
}
$j = $ids[$i];
$id = $ids[$i];
echo '<div class="product">
Rate Item ' . $j . '
<div id="rating_' . $id . '" class="ratings">';
for ($k = 1; $k < 6; $k++) {
if ($rat + 1 > $k)
$class = "star_" . $k . " ratings_stars ratings_vote";
else
$class = "star_" . $k . " ratings_stars ratings_blank";
echo '<div class="' . $class . '"></div>';
}
echo ' <div class="total_votes"><p class="voted"> Rating: <strong>' . @number_format($rat) . '</strong>/5 (' . $v . ' vote(s) cast)
</div>
</div></div>';
}
?>
</body>
</html>