Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


Хостинг Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг на Windows 2008

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

Чемпионы рейтинга экспертов в этой рассылке

Товарищ Бородин
Статус: Профессионал
Рейтинг: 105
∙ повысить рейтинг >>
BahuL
Статус: 3-й класс
Рейтинг: 71
∙ повысить рейтинг >>
Hubbitus
Статус: 4-й класс
Рейтинг: 68
∙ повысить рейтинг >>

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 1100
от 21.03.2009, 22:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 462, Экспертов: 29
В номере:Вопросов: 3, Ответов: 6

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>

Вопрос № 162488: Здравствуйте господа эксперты. Продолжу прошлый мой вопрос: "Есть главная страница (index.htm) и (news.htm). В странице новостей есть несколько новостей (5 например), как можно сделать с помощью PHP чтобы на главной странице отображалось количес...


Вопрос № 162505: Добрый день господа эксперты. Как с помощью средств PHP можно сделать следующее: на странице есть панелька с рисунками, в ней (панель) есть 2 картинки. Как можно сделать чтобы при каждом обновлении браузера эти картинки менялись на другие из папки im...
Вопрос № 162534: Здравствуйте господа эксперты. Вновь буду Вас спрашивать. Продолжу прошлый мой вопрос: "Есть главная страница (index.htm) и (news.htm). В странице news есть несколько новостей (5 например), как можно сделать с помощью PHP чтобы на главной страни...

Вопрос № 162.488
Здравствуйте господа эксперты. Продолжу прошлый мой вопрос: "Есть главная страница (index.htm) и (news.htm). В странице новостей есть несколько новостей (5 например), как можно сделать с помощью PHP чтобы на главной странице отображалось количество новостей, а не таже информация из страницы новостей.". Только сейчас меня волнует следующее: Можно ли сделать отдельный файл в котором будут храниться новости, потом в файле news.htm будет считывать новости из файла с информацией, но изначально в себе эти новости в себе он не содержит. Потом в свою очередь файл index.htm будет считывать из файла news.htm количество новостей. Как бы получается, что index.htm считывает информацию из news.htm, но сам по себе news.htm пустой и считывает инфу из отдельного файла.
Да чуть не забыл, в чем преимущество испльзования баз данных по сравнению с файлами txt.
Заранее вам благодарен.
Отправлен: 16.03.2009, 12:12
Вопрос задал: Уманский Денис (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Hubbitus
Здравствуйте, Уманский Денис!

Легко.
Скажем новости храните в файле news.data, разделяя каждую каким-то разделителем, пусть что-то вроде "================NEWS================".
Тогда в файле news.htm не проблема отобразить их количество:
<p>Количество новостей: <?= count(explode('================NEWS================', file_get_contenst('news.data')))?>

Ну а выводите тоже стандартно, согласно Вашей HTML-разметке, по одной или сразу все, предположим так:
<h2>Наши новости:</h2>
<p class="news"><?= implode('<p class="news">', explode('================NEWS================', file_get_contenst('news.data')))?></p>

Если все на одной странице, то лучше не читать файл каждый раз, а поместить массив новостей в переменную и использовать его: $news = explode('================NEWS================', file_get_contenst('news.data '));
Ответ отправил: Hubbitus (статус: 4-й класс)
Ответ отправлен: 16.03.2009, 15:59

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245429 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо вам большое. Если можно было бы - то поставил бы больше. :)


    Отвечает: Jan
    Здравствуйте, Уманский Денис!

    На первую часть вопроса вам ответили, я отвечу на вторую.
    1. Базы данных избавляют пользователя от проблем с чтением файлов и их "парсингом" то есть то, что в вашем случе делают функции explode(), implode().
    2. Базы данных реализованы таким образом чтоб скорость получения данных и их запись были быстрее чем обычный доступ к файлам, особенно если их разбирать программно на PHP.
    3. Вам очень скоро при увеличении количества новостей понадобится сортировать их по дате, возможно, по размеру, и т. д. И соответственно у вас появится очередной вопрос связанный с реализацией такого разбора текстового файла! Базы данных же предлагают такие механизмы, и разумеется работать они будут значительно быстрее.
    4. Пример: Вам нужно отобразить одну случайную новость, разумно ли будет загружать и разбирать весь файл новостей?
    5. Меньше писать кода на PHP для работы с базой данных, по сравнению с обработкой файлов.
    .......

    Есл и же нет возможности использования баз данных, то предлагаю, каждую новость сохранять в отдельном файле, тогда и количество новостей будет проще узнать, всего лишь посмотрев количество файлов в соответствующей папке. ;)
    Ответ отправил: Jan (статус: 5-й класс)
    Ответ отправлен: 16.03.2009, 21:06

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245469 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо вам огромное! А не могли бы Вы привести такойже пример только с использованием баз данных? Заранее благодарю.


    Вопрос № 162.505
    Добрый день господа эксперты. Как с помощью средств PHP можно сделать следующее: на странице есть панелька с рисунками, в ней (панель) есть 2 картинки. Как можно сделать чтобы при каждом обновлении браузера эти картинки менялись на другие из папки imege, в которой 10 картинок.
    Всем кто поможет поставлю высокие оценки.
    Заранее вам благодарен.
    Отправлен: 16.03.2009, 16:10
    Вопрос задал: Уманский Денис (статус: Посетитель)
    Всего ответов: 3
    Мини-форум вопроса >>> (сообщений: 0)

    Отвечает: Wolfmen
    Здравствуйте, Уманский Денис!
    Попробуйте:

    <?php

    $bgcolor_RW="#badbad"; // Цвет фона таблицы
    $border_RW="1"; // 0/1 - есть бордюр/нет бордюра :-)
    $brdcolor_RW="#2F4F0B"; // Цвет бордюра таблицы
    $width_RW="100%"; // ширина этого добра
    $height_RW="14"; // высота строки
    $fontcolor_RW="#000D37"; // Цвет текста
    $align_RW="center"; // местоположение текста
    //****** Ниже ничего не рекомендую менять ваще *********//

    $lines = file("file/database.dat"); //файл с адресами картинок...
    $itogo=count($lines)-1;
    srand((double) microtime()*1000000);
    $i=rand(0,$itogo); // выбираем случайное число (0...MAX)
    $dt=explode("|", $lines[$i]);

    print"
    <table style="'BORDER-RIGHT:" 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px; TEXT-DECORATION: none'
    bgcolor=$bgcolor_RW border=$border_RW bordercolor=$brdcolor_RW cel lpadding=0 cellspacing=0 width=$width_RW>
    <tr><td height=$height_RW align=$align_RW><font color=$fontcolor_RW>$dt[0]</font></td></tr></table>
    ";
    ?>
    Ответ отправил: Wolfmen (статус: 1-й класс)
    Ответ отправлен: 16.03.2009, 16:23

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245431 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо вам большое.


    Отвечает: Hubbitus
    Здравствуйте, Уманский Денис!
    Функцию можете вынести в отдельный файл, можете в том же, как в примере.
    Ну и директорию я использую image вмсто imege все-таки. Если принципиально, думаю не будет проблемой понять что и где исправить...

    Приложение:

    Ответ отправил: Hubbitus (статус: 4-й класс)
    Ответ отправлен: 16.03.2009, 16:43

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245434 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо большое.


    Отвечает: BahuL
    Здравствуйте, Уманский Денис!

    Суть проста. Мы считываем файлы из предполагаемой папки с картинками и если находим картинки, добавляем их в массив.
    Потом если в массиве присутствуют элементы (картинки в папке были найдены) то выбираем две разных друг от друга случайные картинки и выводим их в код страницы. В данном случае достаточно просто заливать картинки в папку. База данных для этого не нужна

    Приложение:

    Ответ отправил: BahuL (статус: 3-й класс)
    Ответ отправлен: 16.03.2009, 16:50

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245435 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо большое. 5-ка как и обещал.


    Вопрос № 162.534
    Здравствуйте господа эксперты. Вновь буду Вас спрашивать. Продолжу прошлый мой вопрос: "Есть главная страница (index.htm) и (news.htm). В странице news есть несколько новостей (5 например), как можно сделать с помощью PHP чтобы на главной странице отображалось количество новостей, а не таже информация из страницы новостей.". Только сейчас меня волнует следующее: Приведите мне пример реализации моего вопроса с помощью баз данных. Как бы получается, что index.htm считывает информацию из news.htm, но сам по себе news.htm пустой и считывает инфу из отдельного файла.
    Да чуть не забыл, опишите все детальнее, как можно больше деталей!!!
    Кто откликнется - ставлю высокую оценку.
    Заранее вам благодарен.
    Отправлен: 16.03.2009, 22:14
    Вопрос задал: Уманский Денис (статус: Посетитель)
    Всего ответов: 1
    Мини-форум вопроса >>> (сообщений: 1)

    Отвечает: Hubbitus
    Здравствуйте, Уманский Денис!
    Вам же в предыдущем вопросе ( http://rusfaq.ru/info/question/162488 ) Jan в последнем ответе караз привел примеры и объясил как работать с базой, азы.

    А вообще, если Вы спрашиваете такие вопросы, то рекомендую почитать неплохой, а главное очень понятный учебник Курепина http://kurepin.ru/php/ там именно пошагово разбирается как работать с базой, как писать Классы, как подключаться и работать с Базой Данных.
    Ответ отправил: Hubbitus (статус: 4-й класс)
    Ответ отправлен: 16.03.2009, 22:47

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 245474 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо Вам. Просто эксперт Jan неуспел ответить в том предыдущем вопросе до того как я уже задал этот.


    Вы имеете возможность оценить этот выпуск рассылки.
    Нам очень важно Ваше мнение!
    Оценить этот выпуск рассылки >>

    Отправить вопрос экспертам этой рассылки

    Приложение (если необходимо):

    * Код программы, выдержки из закона и т.п. дополнение к вопросу.
    Эта информация будет отображена в аналогичном окне как есть.

    Обратите внимание!
    Вопрос будет отправлен всем экспертам данной рассылки!

    Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
    экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


    Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
    Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров >>

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RusFAQ.ru, Россия, Москва.
    Авторское право: ООО "Мастер-Эксперт Про"
    Техподдержка портала, тел.: +7 (926) 535-23-31
    Хостинг: "Московский хостер"
    Поддержка: "Московский дизайнер"
    Авторские права | Реклама на портале

    ∙ Версия системы: 5.13 от 01.12.2008

    Яндекс Rambler's Top100
    RusFAQ.ru | MosHoster.ru | MosDesigner.ru
    RusIRC.ru | Kalashnikoff.ru | RadioLeader.ru

    В избранное