Вопросница по Php программированию.

Discussion in 'PHP' started by PEPSICOLA, 24 Oct 2005.

  1. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Помогите пожалуйста сообразить.
    есть переменная $n

    как использовать её в качестве имени для открытия файла?
    То есть например $n=lol;
    То здесь:
    $file = fopen("$n.txt","w"); //будет ли это правильно? "$n.txt" откроет файл "lol.txt"?
    Или надо какие то символы\скобки добавить?
     
  2. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    $mc = "1";

    if (file_exists("$mc.txt"))
    {
    for ($mc=1; $mc++)
    }
    else
    {
    $msgnum = $mc++;
    }
    $fp = fopen("msgs/$msgnum.txt","a+","$mlength=2");

    Вообщем задумал сделать гостевую книгу такого типа:
    Кажое отдельное сообщение будет сохранятся в папке "msgs" с порядковым номером.
    addmsg.php будет добавлять туда месаги, проверяя что бы такого файла не только не было, но и шло по счёту.
    А файл viewbook.php будет сортировать эти текстовые файлы для просмотра как типа гостевой книги... в файлах текстового формата будут храниться все данные, ip, real ip, windir, referer, browser + само сообщение, имя и email адресс.

    Так же для администрирования будет файл admin.php и index.php как общее меню.

    Проблема с проверкой файлов txt в папке... как быть? =))
     
  3. Franklin

    Franklin New Member

    Joined:
    24 Aug 2005
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    if (file_exists($mc.".txt"))
    {
    for ($mc=1; $mc++)
    }
    else
    {
    $msgnum = $mc++;
    }
    $fp = fopen("msgs/".$msgnum.".txt","a+","$mlength=2");
    Воть, вроде так.
     
  4. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Спасибо, щас попробую :)
     
  5. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    А 38-ая строка вот эта:
    for ($mc=1; $mc++)
    ";" ставил и в конце и 1 в ковычки брал... не знаю что =)
     
  6. Franklin

    Franklin New Member

    Joined:
    24 Aug 2005
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    for ($mc=1; $mc++) - вобще "что-то с чем-то" - имхо.
    for ($mc=1; $mc<=100; $mc++){

    }
    вобще вот так всегда делал. ну 100, разумеется я от балды поставил.
     
  7. Franklin

    Franklin New Member

    Joined:
    24 Aug 2005
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    и "<=" кстати тоже от балды
     
  8. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Да я про <=100 тоже знаю, но если файлов будет больше 100? :) или равно?
     
  9. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Вообщем чё то я загнул с гостевухой =) надо что то попроще =))
     
  10. Franklin

    Franklin New Member

    Joined:
    24 Aug 2005
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    имхо - у тебя задумка не правильная. все сообщения в своей гостевой я храню в одном файле.
    И вообще, а кто тебе мешает называть файл датой? - тогда два файла с одинаковым названием точно не будет - это как первый вариант.
    Или например создай файл id.txt, и в него сохраняй количество мессагов. То есть пусть так выглядит:
    открылся id.txt, в нем прочитался номер последнего мессага (то бишь порядковый номер), потом к этому номеру +1 - это уже название нового файла, записываем новый файл, проверяем успешна запись или нет, если успешна => открываем id.txt и туда записываем порядковый номер нового фала, а если не успешно => echo "ошибка!"; exit;
    :) может все и тупо :)
     
  11. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Нифига не тупо =) Хорошая идея, я что то придумаю =) Только 3 дня гдет знаком с php =) только книжку закончил читать =))
     
  12. bul666

    bul666 Banned

    Joined:
    21 Apr 2005
    Messages:
    280
    Likes Received:
    8
    Reputations:
    -1
    Был у меня сайт с двигом на файлах (А не мускулах), Я использовал как раз такой принцип )))
     
  13. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    =)

    У меня щас другой принцип =) ужасный принцип, делал всё методом тыка, на локалке работает, а на holm.ru просит установить CHMOD 0755 или 0711, ё маё, как я только не устанавливал - ну не хочет запускаться скрипт, а пишут мне о такой ошибке типа:
    Что делать? Я уже по разному там выставлял эти значения - не помогает.
    Всего в папке "sp" 5 файлов:
    3 php, 1 html, 1 без расширения с данными "txt". Ставил и 664 и 644 и 666 и 755 и 777 и 711, что может быть? =)
     
  14. Franklin

    Franklin New Member

    Joined:
    24 Aug 2005
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    а ты на всю папку sp ставил chmod'ы?
    ты попробуй просто на файл, где храняться записи поставить 777.
    Я сам с холмом не работал, да и глюкнутый он :))), не люблю его.
    http://www.host.sk - более или менее нормальная вещь, у них там вобще проблем нет ни с пхп, ни с мускулами, к тому же вап поддерживает, правда немного медленно работает - тормозит иногда по-страшному.
     
  15. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Большое спасибо Franklin =) Щас там зарегюсь.. А то холм реально глючный, мало того что глючный, он при ошибке моментально редиректит на другой сайт =)
     
  16. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Help! SOS! Проблема, делаю свой движок, сделал include новостей, теперь хочу сделать include допустим различных статеек, но что бы выделялись только названия + это при каждом обновлении вылазили разные статьи. То есть randomize. Подскажите как сделать это?

    Допустим у меня есть файл links.php в нутри такая фигня:
    <?php
    $ssilka1="<a href tam sait> name</a>"
    $ssilka2="<a href tam sait> name</a>"
    $ssilka3="<a href tam sait> name</a>"
    $ssilka4="<a href tam sait> name</a>"
    $ssilka5="<a href tam sait> name</a>"
    ?>

    В странице messages.php стоит тег <? include('links.php')
    ________________

    Проблема вот в чем... Допустим из файла links.php мне надо что бы разнообразно генерировалась страница, только из 3-х значений переменных максимум. Как это сделать?

    (если не понятно=)))
    Вместо того что бы отобразить Links1, 2, 3 ,4 ,5. Надо что бы при первом обновлении
    было например 1,4,5, при следующем уже генерировалось методом random такого типа 2,3,5, далее 1,2,3... как это сделать? С учётом что Links будут далее добавляться с помощью дополнительного скрипта редактора...
     
  17. ZaCo

    ZaCo Banned

    Joined:
    20 Jun 2005
    Messages:
    737
    Likes Received:
    336
    Reputations:
    215
    Делай три раза подряд
    $links=rand(1,5);
    с проверкой повторения (чтобы н было одинаковых значений в массиве) например
     
  18. qBiN

    qBiN Вот такой вот я :(

    Joined:
    20 Jan 2005
    Messages:
    834
    Likes Received:
    73
    Reputations:
    33
    Это не движок.
    Ну а настчет проблемы:
    1)Тупая идея.
    2)Подумай еще раз
    3)Еще не передумал?
    4)Создай масив "ssilka" в масиве индификатор число.
    5)Генерируй рамдомное число которое будет использоваться для вывода масива.Обращатся к ссылке будешь например так $ssilka[$i]
    Что-то не вижу никаких проблем
     
  19. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Не передумал =) Пасибо ;)
    З.Ы. но я не понимаю, почему идея то тупая? :) Ты вообщем на счёт сайт а или на счёт этой хрени с выводом случайных строк (ссылок) на главную?

    И ещё один вопрос... Все переменные которые будут использоваться в скрипте желательно писать в начале? или неважно куда их и когда впихивать? Потому что одну переменную мне нужно будет только в конце, а до неё там куча кода, оператором и функций :)