Я пытаюсь создать сценарий для проверки того, что он уже существует в таблице SQL
Что-то вроде этого:
У меня есть таблица с именем amx_amxadmins, и я хочу проверить, что пользователь flag существует, флаг показывает это, но мой сценарий показывает все время, когда у меня есть флаг
$username = $this->user->getUsername($this->session->userdata('userid'));
$query2 = $this->db->query("SELECT `flags`, `username` FROM `".$amxadmins."` WHERE `flags`='a' AND `username`='".$username."' ");
$row2 = $query2->row();
if ($row2 != "a")
{
echo "If already flag a ";
}else {
echo "If not ";
}
Та же проблема с ошибками Сообщение: Попытка получить свойство не-объекта
затем сначала проверьте, что вы получаете в $ row2






Не сравнивайте объект целиком. Сравните одно значение поля, как показано ниже
if ($row2->username != "a")
{
echo "If already flag a ";
}else {
echo "If not ";
}
Вы получили строку из базы данных, поэтому вам нужно проверить, пуст ли объект строки или нет.
if ($query2->num_rows()>0)
{
echo "If already flag a ";
}else {
echo "If not ";
}
используйте приведенный выше код в условии.
Спасибо за все. Я исправил свою проблему так:
<?php
$username = $this->user->getUsername($this->session->userdata('userid'));
$query2 = $this->db->query("SELECT `auth`, `flag_a` FROM `".$amxadmins."` WHERE `flag_a`='0' ORDER BY `auth`='".$username."' ");
if ($query2->num_rows() != 0)
{
echo "If already flag a ";
}else {
echo "If not ";
}
?>
заменить условия, как если бы ($ row2-> username! = "a")