Hallo PhillippK,
danke für die rasche Antwort, hat funktioniert, allerdings wird trotzdem nix in die DB geschrieben, auch wenn ich via phpmyAdmin reinschaue, steht nix drin, wenn ich den durch "echo" ausgegebenen SQL-Befehl per phpMYAdmin einfüge, funzt es:
Code: Alles auswählen
while($row = $db->sql_fetchrow($result))
{
$user = $row['username'];
if ($mon[$user] > 0 OR $hi[$user] > 0)
{
$c = $c + 1;
$total = $mon[$user] * $monat + $hi[$user] * $ewig;
if ($mon[$user] == 0) {$mon[$user] = "0";}
if ($hi[$user] == 0) {$hi[$user] = "0";}
$sql="INSERT INTO `phpbb_total_scores` VALUES ($c, '$user', {$mon[$user]}, {$hi[$user]}, $total)";
echo $sql;
}
}
woran liegt das?
Hier der ganze Code, falls nötig:
Code: Alles auswählen
$sql = 'DELETE FROM `phpbb_total_scores`';
$monat = 2;
$ewig = 5;
$sql='SELECT highscore_player, Count(*) AS Anzahl FROM `phpbb_ina_highscore` WHERE `highscore_mon` = ' . date("m", time()) . ' AND `highscore_year` = ' . date("Y", time()) . ' GROUP BY highscore_player';
if(!$result = $db->sql_query($sql)) {
message_die(GENERAL_ERROR, 'Fehler beim Auslesen der HiScore-Informationen', '', __LINE__, __FILE__, $sql);
}
while($row = $db->sql_fetchrow($result))
{
$mon[$row['highscore_player']] = $row['Anzahl'];
}
$sql = "SELECT * FROM " . iNA_GAMES . "
ORDER BY game_name";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, $lang['no_game_data'], "", __LINE__, __FILE__, $sql);
}
$game_count = $db->sql_numrows($result);
$game_rows = $db->sql_fetchrowset($result);
for($i = 0; $i < $game_count; $i++)
{
$game_id = $game_rows[$i]['game_id'];
$game_name = $game_rows[$i]['game_name'];
if ($game_rows[$i]['reverse_list'])
{
$list_type = 'ASC';
}
else
{
$list_type = 'DESC';
}
$sql = "SELECT * FROM " . iNA_SCORES . "
WHERE game_name = '" . $game_name . "'
ORDER BY score $list_type, date ASC";
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, $lang['no_score_data'], "", __LINE__, __FILE__, $sql);
}
$score_info = $db->sql_fetchrow($result);
$best_player[$i] = $score_info['player'];
$arr[$best_player] = $arr[$best_player] + 1;
}
$zaehle = array_count_values($best_player);
while(list($key, $val) = each($zaehle))
{
$hi[$key] = $val;
}
$sql = "SELECT username FROM " . USERS_TABLE . " ORDER BY username";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, $lang['no_user_data'], "", __LINE__, __FILE__, $sql);
}
while($row = $db->sql_fetchrow($result))
{
$user = $row['username'];
if ($mon[$user] > 0 OR $hi[$user] > 0)
{
$c = $c + 1;
$total = $mon[$user] * $monat + $hi[$user] * $ewig;
if ($mon[$user] == 0) {$mon[$user] = "0";}
if ($hi[$user] == 0) {$hi[$user] = "0";}
$sql="INSERT INTO `phpbb_total_scores` VALUES ($c, '$user', {$mon[$user]}, {$hi[$user]}, $total)";
echo $sql;
}
}
$sql = 'SELECT * FROM `phpbb_total_scores` ORDER BY total';
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, $lang['no_user_data'], "", __LINE__, __FILE__, $sql);
}
while($row = $db->sql_fetchrow($result))
{
$x = $x + 1;
$template->assign_block_vars("total", array(
"PLATZ" => $x,
"NAME" => $row['player'],
"MON_ANZ" => $row['mon_total'],
"HI_ANZ" => $row['hi_total'],
"TOTAL" => $row['total']
));
}
*edit*
es wird nichtmal die Tabelle entleert... (siehe erste Zeile im Code)