За последние 24 часа нас посетили 16523 программиста и 1678 роботов. Сейчас ищет 861 программист ...

масив без дубляжа

Тема в разделе "PHP для новичков", создана пользователем Vantedur, 4 ноя 2010.

  1. Vantedur

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

    С нами с:
    9 июл 2010
    Сообщения:
    779
    Симпатии:
    2
    в общем есть такой скриптик

    PHP:
    1.  
    2. define('INCLUDE_CHECK',true);
    3. require "connect.php";
    4.  
    5. $sql="SELECT names photos id FROM gerls ";
    6. $data=mysql_query($sql);
    7.  
    8. while($row=mysql_fetch_assoc($data)){
    9.     $names[] = $row['names'];
    10.     $names[$row['names']] = $row['names'];
    11. }
    12.  
    13. foreach ($names as $name) {
    14.     $result[$name]++;
    15. }
    16. print_r($result );
    на выходе надо получить нечто типа

    <spain>имя, сколько повторений имени, картинка, ид имени картинки</spain><br>
    отсортированное по повторам
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    можно прям в вайл иф иссет проверять и инкрементить, иначе - создать
     
  3. Vantedur

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

    С нами с:
    9 июл 2010
    Сообщения:
    779
    Симпатии:
    2
    походу у меня руки даже не из ж растут, ломаю голову уже второй день, никак не могу решить трабл, нифига не могу вкурить.
     
  4. asik

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

    С нами с:
    12 июл 2007
    Сообщения:
    211
    Симпатии:
    0
    PHP:
    1. $sql="SELECT max(names), count(names), max(photos), id FROM gerls group by id"
     
  5. Vantedur

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

    С нами с:
    9 июл 2010
    Сообщения:
    779
    Симпатии:
    2
    PHP:
    1. define('INCLUDE_CHECK',true);
    2. require "connect.php";
    3. $sql="SELECT max(names), count(names), max(photos), id FROM gerls group by names";
    4. $data=mysql_query($sql);
    5. while($line=mysql_fetch_row($data))
    6. {
    7. echo "".$line[0]."".$line[2]."".$line[1]."".$line[3]."<br />"; 
    8. }
    9.  
    так вроде выводит но сортирует по алфавиту и выдает какието странные показатели повторов
     
  6. asik

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

    С нами с:
    12 июл 2007
    Сообщения:
    211
    Симпатии:
    0
    [sql]
    SELECT max(names), count(names), max(photos), id FROM gerls group by id order by id
    [/sql]
     
  7. Vantedur

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

    С нами с:
    9 июл 2010
    Сообщения:
    779
    Симпатии:
    2
    так грузит вообще весь список, так как ид у всех уникальный, наверно ты имел ввиду
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    имхо тут проще в пхп посчитать
     
  9. Vantedur

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

    С нами с:
    9 июл 2010
    Сообщения:
    779
    Симпатии:
    2
    спасибки огромные, всё написал =)
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    мое такое мнение-подозрение, что когда такая ситуация возникла - у тебя БД спроектирована с изъяном.