Как проверить существование поля в таблице MySQL базы данных?
Существует таблица my_category, как проверить в ней существование категории, чтобы не пытаться по новой добавить уже существующую?
$id = 'test';
$db->query( "SELECT * FROM my_category WHERE alt_name='$id'" );
while ( $row = $db->get_row() ) {
$cat_info[$row['alt_name']] = array ();
....
}
Как выполнить проверку, чтобы вновь не добавить категорию test?
UPD: пробую так выполнить проверку:
$res = $db->query("SHOW COLUMNS FROM `my_category` LIKE '$id'"); // SHOW COLUMNS FROM `my_category` LIKE 'test'
//$var_dump($res); // object(mysqli_result)#7 (5) { ["current_field"]=> int(0) ["field_count"]=> int(6) ["lengths"]=> NULL ["num_rows"]=> int(0) ["type"]=> int(0) }
$exists = mysqli_num_rows($res);
//$var_dump($exists); // Fatal error: Uncaught Error: Function name must be a string in - $var_dump($exists);
if (!$exists) {
echo "<h1>Поле $id существует</h1>" . '<br>';
}else{
echo "Поле $id не существует" . '<br>';
}
Должно работать, но не работает :(