За последние 24 часа нас посетили 35176 программистов и 1742 робота. Сейчас ищут 977 программистов ...

айпишки in_array

Тема в разделе "Вопросы от блондинок", создана пользователем siiXth, 26 окт 2010.

  1. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    в бд в ip_views записано
    [sql]127.0.0.1, 127.0.0.1[/sql]

    в пхп
    PHP:
    1.  
    2. <?
    3. $ips=$row['ip_views'];
    4. if(in_array($ip,$ips))
    5. echo tt;
    6. ?>
    $ip=айпи юзера.
    эхо нет
    и если я просто так выведу echo $ips[0] , то выведется весь блок.
    где-то я туплю =(
    и если пишу
    $ips=array('127.0.0.1', '127.0.0.1');
    всё нормально тогда...
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    $ips[0] у тебя будет равно не '127.0.0.1', '127.0.0.1', а '127.0.0.1, 127.0.0.1'.
    Из мускуля же строку получаешь, а не массив.
    Разбей эксплодом по запятой ;)
     
  3. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    та уже :D
    точнее я в бд вносил '127.0.0.1','127.0.0.1'
    думал так будет работать :(
     
  4. antonn

    antonn Активный пользователь

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    добавь сам апостофы к IP и ищи подстроку в строке базы, возможно это будет даже быстрее, чем создавать массив и в нем уже искать
     
  5. siiXth

    siiXth Активный пользователь

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    так не работало , фиг с ним в общем )
     
  6. antonn

    antonn Активный пользователь

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    так в первом посте in_array(), а не поиск подстроки в строке :)
    ЗЫ ну и в базе нужны разделители поуникальнее, я часто использую квадратные скобки, типа такого: str='[red][blue][green][lime]', а потом делаю if( pos('['+color+']',str)>0 ){ }