Как я могу определить статус и выполнить что-либо в PHP MySQL

#php #mysql #exists

#php #mysql #существует

Вопрос:

Я пытаюсь определить, что статус записи равен 0 или 1.

Я хотел бы использовать этот код, приведенный ниже, чтобы определить, находится ли конкретный элемент в этом случае barcode='D189404954' на складе или нет, если да, то другие элементы ничего не делают.

Но когда я запускаю приведенный ниже код, он продолжает говорить, что статус равен 1, даже когда он равен 0.

 <?php

$link = mysqli_connect("localhost", "root", "", "watermeter");

// Check connection
if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

$query = "SELECT statuswm
FROM users
WHERE barcode='D189404954'";

$result = mysqli_query($link, $query);
$row = $result->fetch_array(MYSQLI_NUM);

// See Value for test
//var_dump($row[0]);

if ($row[0] == 1) { 
echo $row[0]; 
} else { 
echo "not in stock";

}

// Close connection
mysqli_close($link);

?>

  

Ответ №1:

Ваш результирующий код неверен. == является оператором сравнения, тогда как = является оператором присваивания.

 if ($result = 1) {
}
  

должно быть:

 if ($result == 1) {
}
  

Комментарии:

1. затем я получаю следующие ошибки: Обратите внимание: Объект класса mysqli_result не удалось преобразовать в int в C:xampphtdocswatermeterstest.php в строке 19 исправляемая неустранимая ошибка: объект класса mysqli_result не удалось преобразовать в строку в C:xampphtdocswatermeterstest.php в строке 22

2. Добавьте $row = $result->fetch_array(MYSQLI_NUM); перед инструкцией if, затем измените инструкцию if на if ($row[0] == 1) { echo $resu< } else { echo "not in stock}

3. Ошибки исчезли, я изменил статус на 1, но продолжаю говорить, что его нет в наличии., спасибо за помощь, Ральф

4. Не могли бы вы немного пояснить свой запрос? Если вы ищете статус пользователя, где штрих-код равен, D189404954 почему бы вам просто не сделать SELECT status FROM users WHERE barcode='D189404954' также, можете ли вы var_dump $row[0] перед вашим оператором if, чтобы мы могли видеть, какое значение он получает.

5. Я получаю следующую ошибку: Ошибка синтаксического анализа, неожиданный ‘$ row’ (T_VARIABLE) в C:xampphtdocswatermeterstest.php в строке 17, var_dump $ row [0]?, Запрос на получение полного кода, который я опубликовал, изменил способ, которым, по вашему мнению, это должно работать, спасибо за ваше время, Ральф, но мы добираемся туда, лол