[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Условие для занесения в БД данных из GET запрос
pin68
Суть проблемки, скорей призыв к помощи
Внешний обработчик посылает запрос:
http://xxxxxx.ru/sms/receive_handler...0101&body=W256
где From - номер телефона с которого пришла смс
body - текст смс (код для доступа)
В receive_handler.php содержится код:
public function receiveHandler($message, $from, $to = '') {
$updatedMessage = str_replace("%0d", "\r", $message);
$updatedMessage = str_replace("%0a", "\n", $updatedMessage);
$stmt = $this->db->prepare("INSERT INTO " . $this->_prefix . " inbox (d, src, dst, body) "." VALUES (NOW(), ?, ?, ?)");
$stmt->execute(array($from, $to, $updatedMessage));
}

Который добавляет в таблицу inbox данные
d - дата и время (datetime)
src - телефон от кого пришло (в нашем примере 79059080101)
body - текст смс (в нашем примере W256)
....
Есть таблица code, в ней поле in_cod.
В поле in_cod содержаться "коды" (в нашем примере W256)
.....
Помогите написать код, который бы перед добавлением записи в таблицу inbox, проверил бы есть ли такой код ( W256) в таблице in_cod.
И если есть, то производит запись, если нет то игнор.
Astin
Ну примерно будет выглядеть вот так

$body = $_GET['body'];

$stmt = $this->db->prepare("SELECT `id`
FROM "
. $this->_prefix . " inbox
WHERE `body` = ?"
);

$stmt->execute(array($body));

if ($stmt->num_rows > 0)
{
echo 'Есть такая запись';

} else {

// Здесь заносим в БД
}

Ну это примерно вот так, так как я не знаю откуда та твоя функция из класса или
может это просто отдельная функция, но принцип примерно такой. Плюс я еще не знаю
какой у тебе идентификатор в таблице, может id а может другой, но я пока влепил
id так как не в курсе какой у тебя.

И еще за безопасность запроса я пока молчу, так как опять же не знаю
функция с класса или вообще сама по себе
Быстрый ответ:

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