2

I get this error:

Fatal error: Call to a member function fetch_assoc() on boolean in C:\xampp\htdocs\cronjob\SQLreader.php on line 13

<?php
//readout Top10
// Hier mySQL - Zugangsdaten eingeben.
$servername = "*";
$username = "*";
$password = "*";
$db = "*";

$conn = new mysqli($servername, $username, $password, $db);

$user = $conn->query("SELECT * FROM btcstats ORDER BY kdr DESC LIMIT 10");

while($a = $user->fetch_assoc()) {
    $file = fopen("statscache.txt", "w+");
    fwrite($file, $a['uuid'] . "|" . $a['kills'] . "|" . $a['deaths'] . "|" . $a['gamesplayed'] . $a['gameswon'] . "|/n");
    fclose($file);
}

So we've got a problem here, can some find the mistake ?

Dharman
  • 30,962
  • 25
  • 85
  • 135
motoxdev
  • 21
  • 3

1 Answers1

-2

The answer is in the mysqli::query documentation.

Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.

Clearly there is a MySQL error occurring, and the function is returning 'false'.

$user = $conn->query("SELECT * FROM btcstats ORDER BY kdr DESC LIMIT 10");

if ($user) {
    while($a = $user->fetch_assoc()) {
        $file = fopen("statscache.txt", "w+");
        fwrite($file, $a['uuid'] . "|" . $a['kills'] . "|" . $a['deaths'] . "|" . $a['gamesplayed'] . $a['gameswon'] . "|/n");
        fclose($file);
    }
} else {
    die ("Mysql error: " . $conn->error);
}
samlev
  • 5,852
  • 1
  • 26
  • 38