У меня много проблем с кодом, над которым я работаю, но этот, похоже, часто встречается. Я использую процедурный метод для кодирования этого сайта, и я не могу найти ответ на этот вопрос без упоминания ООП, подготовленных утверждений или неудачных запросов. Самое смешное, что оператор работает с веб-сайта, и строка все еще добавляется в базу данных, поэтому я не считаю ее ошибочным запросом. Может ли кто-нибудь помочь мне понять, что означает это предупреждение?
Предупреждение: mysqli_free_result () ожидает, что параметр 1 будет mysqli_result, логическое значение дано в ..... on line (выберите число)
Это один из кодов, с которыми я работаю.
if (isset($_POST['picturesubmit']))
{
$target_path = "uploads/";
$target_path = $target_path . basename( $_FILES['profilepic']['name']);
$ext = $_FILES['profilepic']['type'];
if(($ext == "image/jpeg") || ($ext == "image/jpg") || ($ext == "image/png") || ($ext == "image/gif"))
{
$temp_file = $_FILES['profilepic']['tmp_name'];
if(move_uploaded_file($temp_file, $target_path))
{
$picture = mysqli_real_escape_string($dbc, $target_path);
$q = "UPDATE Users SET profilepic = '$picture' WHERE email = '$sessionuser' ";
$r = mysqli_query ($dbc, $q)
or trigger_error("Query: $q\n<br />MySQL Error: " . mysqli_error($dbc));
mysqli_free_result($r);
}
else
{
echo "Picture did not upload properly. please try again";
}
}
else
{
echo "Uploaded file was not an image, please try again.";
}
}