ФорумПрограммированиеPHP для идиотов → файловый архив

файловый архив

  • ZLOY_SLON

    Сообщения: 2 Репутация: N Группа: Кто попало

    Spritz 3 февраля 2010 г. 6:05

    Ребята, помогите! Мне нужно создать простейший файловый архив. Принцип такой: в базе есть 2 таблицы - одна содержит список всех категорий файлов, другая - инфу о самих файлах (название, описание, ссылка…). Нужно организовать вывод по принципу:

    //категория 1//
    /файл 1/
    /файл 2/
    /……../
    //категория 2//
    /файл 1/
    /файл 2/
    /……../

    Тоесть, выводится категория, потом все файлы для нее, потом следующая категория… Ну и т.д.
    Кто знает, напишите хотябы, какие циклы, операторы и т.д. использовать, а лучше набросайте примерную структуру файла. Я в php слабак. Заранее спасибо!
    Ах, да, вот скрипт:

    <?php

    include ("db.php"); //конект к базе

    $result = mysql_query("SELECT id,name FROM downloads_files",$db);
    $myrow = mysql_fetch_array($result);

    do {

    printf ("<p class='downloads_name'><a href='content/download.php?id=%s'>%s</a></p>", $myrow["id"],$myrow["name"]);

    }

    while ($myrow = mysql_fetch_array ($result));

    ?>

    Файлы он выводит, а как сделать, чтоб он перед файлами выводил название соответствующих категорий из другой таблицы?
  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz 3 февраля 2010 г. 6:19, спустя 13 минут 20 секунд

    printf и do {…} while() не перевариваю чего-то.
    Спустя 271 сек.
    Бля… после аськи постоянно для переноса юзаю "контрол+энтер", что приводит к отправке недописанной мессаги на форуме :(
    Короче. про свою "нелюбовь" я уже сказал.

    А вообще примерно так:
    1. Тащим все имена файлов, кладем их в массив.
    2. Тащим список всех категорий, выводим по одной в цикле, и после каждого из выводов выводим из массива список имен тех файлов, которые принадлежат этой категории. После вывода списка по циклу идет переход к следующей категории и т.д.
    3. Радуемся результату и понимаем что в общем оно нахер не нужно.
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz 3 февраля 2010 г. 6:51, спустя 32 минуты 34 секунды

    Во-первых, выделяй код тегом пхп. Во-вторых примерно так. Пишу с браузера - могут быть ошибки:
    <?php

    include ("db.php");  //конект к базе

    $resultcat = mysql_query("SELECT `id`,`name` FROM cats",$db);
    $mycat = mysql_fetch_array($resultcat);
    {

    $result = mysql_query("SELECT id,name FROM downloads_files WHERE `cat_id` = ".intval($mycat['id']).";",$db);
    echo $mycat['name'].": <ul>";
    while ($myrow = mysql_fetch_array ($result));
     {
           
        echo "<li class='downloads_name'><a href='content/download.php?id={$myrow["id"]}'>{$myrow["name"]}</a></li>";
                   
     }
    echo "</ul>";
    }

    ?>
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 3 февраля 2010 г. 6:46, спустя 23 часа 54 минуты 37 секунд

    Во-первых, выделяй код тегом пхп.
    :D а у самого не выделен
    adw/0
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz 3 февраля 2010 г. 6:49, спустя 2 минуты 43 секунды

    Блять, я выделял его как пхп.
    <? echo "test"; ?>
    Спустя 42 сек.
    :D ха… Чем же я его выделил то? :D
    Спустя 57 сек.
    Во-первых, выделяй код тегом пхп. Во-вторых примерно так. Пишу с браузера - могут быть ошибки:
    <?php

    include ("db.php");  //конект к базе

    $resultcat = mysql_query("SELECT `id`,`name` FROM cats",$db);
    $mycat = mysql_fetch_array($resultcat);
    {

    $result = mysql_query("SELECT id,name FROM downloads_files WHERE `cat_id` = ".intval($mycat['id']).";",$db);
    echo $mycat['name'].": <ul>";
    while ($myrow = mysql_fetch_array ($result));
     {
           
        echo "<li class='downloads_name'><a href='content/download.php?id={$myrow["id"]}'>{$myrow["name"]}</a></li>";
                   
     }
    echo "</ul>";
    }

    ?>
    Спустя 47 сек.
    Во))) Блин. Я задолбался набирать 50 постов)
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 3 февраля 2010 г. 6:49, спустя 40 секунд

    VaseninM, я посмотрел исходник вашего сообщения и там нет тегов вообще :) глючите наверное )
    adw/0
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz 3 февраля 2010 г. 7:09, спустя 19 минут 43 секунды

    Глючу) Видимо просто хотел добавить тег, а потом когда нужно было добавлять, решил, что уже добавил, потому что хотел )))
    PS adw0rd, вот тут то я пыху и не понимаю… Вы то на Вы обращаетесь, то нахуй посылаете гыггыы Хотя меня пока еще не посылали. :D
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 3 февраля 2010 г. 7:16, спустя 7 минут 10 секунд

    VaseninM, да я часто на вы обращаюсь, потомучто незнакомы. Но когда просят перейти на ты, перехожу.
    Но как всегда бывают исключения, я иногда забываю о просьбе перейти на "ты", или просто переключаю контекст и путаю ты/вы
    Спустя 19 сек.
    И на хуй я редко посылаю, ооочень редко
    adw/0
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz 3 февраля 2010 г. 7:24, спустя 8 минут 17 секунд

    Я вообще тоже на некоторых форумах на Вы общаюсь.
    Но тут информационный фон как то не способствует :D
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 3 февраля 2010 г. 7:41, спустя 16 минут 40 секунд

    я иногда забываю о просьбе перейти на "ты",
    и посылаю нахуй
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 3 февраля 2010 г. 7:49, спустя 7 минут 57 секунд


    Вы то на Вы обращаетесь, то нахуй посылаете гыггыы Хотя меня пока еще не посылали. :D

    все еще впереди =)
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz 3 февраля 2010 г. 7:56, спустя 6 минут 31 секунду

    NRG, я даже подохревал (да и продолжаю подозревать), что кто нибудь прийдет, прочитает и нахуй пошлет)))
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 3 февраля 2010 г. 8:45, спустя 49 минут 9 секунд

    :D
    adw/0
  • ZLOY_SLON

    Сообщения: 2 Репутация: N Группа: Кто попало

    Spritz 3 февраля 2010 г. 9:22, спустя 36 минут 54 секунды

    Спасибо всем за ответы!
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 4 февраля 2010 г. 1:44, спустя 16 часов 22 минуты 5 секунд

    VaseninM, за такой код надо хуй в жопу по яица всаживать …
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!