[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: MySQLi запрос
Stasonix
Функция проверяет наличие записи в таблице, тут проверяется email:



protected function checkEmail()
{

$query = mysql_query("SELECT `email` FROM `mytable` WHERE (`email`='$this->email')");

if (!$result = mysql_fetch_array($query)){
// если нету такого email в БД верни TRUE, значить можно регить новый
return TRUE;
}
else
{
// если есть такой email, то верни FALSE
return FALSE;
}
}




как это переделать под MySQLi?



Спустя 34 минуты, 18 секунд (5.05.2012 - 20:27) Stasonix написал(а):
Сам себе отвечу.


/* Проверка на наличие такого email уже в БД */
protected function checkEmail()
{
if ($result = $this->mysqli->prepare('SELECT `email` FROM `league` WHERE `email`=? LIMIT 1'))
{
$result->bind_param("s",$this->email);
$result->execute();
$result->store_result();

$rows = $result->num_rows;

/* close statement */
$result->close();

if (!$rows)
{
// если нету такого email в БД верни TRUE, значить можно регить новый
return TRUE;
}
else
{
// если есть такой email, то верни FALSE
return FALSE;
}

}

}


Спустя 42 минуты, 1 секунда (5.05.2012 - 21:09) inpost написал(а):
if (!$result = mysql_fetch_array($query)){ - это уже выйдет у тебя WARNING, включи отображение ошибок.
Есть ли записи - mysql_num_rows.

Спустя 9 часов, 22 минуты, 18 секунд (6.05.2012 - 06:31) Michael написал(а):
Ну вы даете. Особенно в первом сообщении код :blink: .
Такие вещи надо проверять запросом
SELECT COUNT(*) FROM `mytable` WHERE ...

Спустя 5 часов, 52 минуты, 24 секунды (6.05.2012 - 12:23) Stasonix написал(а):
С LIMIT 1?

Спустя 2 минуты, 12 секунд (6.05.2012 - 12:25) nugle написал(а):
Stasonix
Зачем, он тебе выводит количество записей в базе
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.