Saturday 2 December 2017

php - warning problem: expects parameter 1 to be mysqli_result













I get
the following warning listed below and I was wondering how do I fix
it



Warning: mysqli_fetch_array()
expects parameter 1 to be mysqli_result, boolean given on line
65



The code
is around this section of PHP code listed below. I can list the full code if
needed.



// function to retrieve
average and votes
function getRatingText(){
$dbc = mysqli_connect
("localhost", "root", "", "sitename");
$sql1 = "SELECT COUNT(*)

FROM articles_grades
WHERE users_articles_id =
'$page'";


$result =
mysqli_query($dbc,$sql1);
$total_ratings =
mysqli_fetch_array($result);

$sql2 = "SELECT COUNT(*)

FROM grades
JOIN grades ON grades.id = articles_grades.grade_id

WHERE articles_grades.users_articles_id = '$page'";

$result =
mysqli_query($dbc,$sql2);
$total_rating_points =
mysqli_fetch_array($result);

if (!empty($total_rating_points)
&& !empty($total_ratings)){
$avg = (round($total_rating_points /
$total_ratings,1));
$votes = $total_ratings;
echo $avg . "/10 (" .
$votes . " votes cast)";
} else {
echo '(no votes
cast)';
}
}


Answer





mysqli_query()
returns FALSE if there was an error in the query. So you should
test for it...



/* Select queries
return a resultset */
if ($result = mysqli_query($dbc, "SELECT Name FROM City
LIMIT 10")) {
printf("Select returned %d rows.\n",
$result->num_rows);

/* free result set */

$result->close();
}



See
this link for the mysqli_query reference
href="http://php.net/manual/en/mysqli.query.php"
rel="noreferrer">http://php.net/manual/en/mysqli.query.php



No comments:

Post a Comment

php - file_get_contents shows unexpected output while reading a file

I want to output an inline jpg image as a base64 encoded string, however when I do this : $contents = file_get_contents($filename); print &q...