| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Таблица с ip |
| Автор: Muerto 22.5.2010, 14:20 | ||||
| Хотел создать список Ip которые посещяют сайт... Но почему то идут дубли!!! Вот как выглядит таблица:
Проверка идет такая:
И типа если записей <1 то вставляю в rvisits... Но как вы видите к примеру (33, '95.153.83.165'), (34, '95.153.83.165'), (48, '95.153.83.165'), (50, '95.153.83.165'), (55, '95.153.83.165'), Что я делаю не так? Таблица в innoDB |
| Автор: ksnk 22.5.2010, 14:25 |
| http://php.net/ip2long и делай индексным уникаьльным полем... Добавлено через 2 минуты и 51 секунду если хочется хранить несколько IP для одного ID - сделай ключ из 2-х полей. Добавлено через 4 минуты и 26 секунд а по сути ошибки - сдедлай LIMIT 2 |
| Автор: Muerto 22.5.2010, 14:36 | ||
| Понимайте в чем беда... Я вот просто думаю платить за переход по рефке, как часть партнерской программы НО если вставляется по 4 раза один и тот же Ip , значит и партнер получит оплату 4 раза , что разумеется очень плохо мне. И чем плох LIMIT 1 ? Вроде бы если нашел Ip то нафиг дальше искать, зачем ещё нужны? А id мне не нужен, ибо список ip глобальный... Добавлено через 13 минут и 37 секунд И чем лучше или хуже
|
| Автор: Muerto 22.5.2010, 14:58 |
| Опа, у меня была ошибка в коде, поэтому вставляло без проверки уникальности... Но все же раз подняли тему... Какой самый быстрый метод ловли уникальных Ip , что бы поменьше грузило базу? Я смотрю в сторону может куки, типа вставил, и тогда проверку будет пропускать... |
| Автор: Serkys 22.5.2010, 16:04 |
| Самый простой вариант - сделать поле IP unique. |
| Автор: SickFxck 22.5.2010, 16:53 |
| Хранить IP надо в INT. |
| Автор: Serkys 22.5.2010, 19:43 |
| SickFxck, как это возможно? |
| Автор: SickFxck 22.5.2010, 20:29 |
| Serkys, INET_ATON() |
| Автор: Muerto 22.5.2010, 21:47 |
| Я вот не очень понял как этим Anton пользоваться =-) |
| Автор: NewDima 23.5.2010, 16:50 | ||
Muerto, вам ksnk сразу дал правильное решение
Перейдите уж по ссылке выше, эта функция и переводит в инт. А дальше в записи одно поле всего будет - ip (INT), как PRIMARY KEY |