[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как правильно настроить вывод информации
Страницы: 1, 2
Alex4
Я новичок в php. Знаю хорошо только html и css.
Помогите решить вопрос.

Есть php файл при помощи которого выводятся данные на страницу

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

Вывожу сист.требования в ручную таким образом:

if ($url == "product" && isset($_GET['idd']) && $_GET['idd'] == "ид нужной игры")
{
echo "
<h4>Системные требования</h4>
<div>
Минимальные параметры:
<br>
OC: Windows XP, Windows Vista, Windows 7, Windows 8<br>
Процессор: 1.8 ГГц<br>
Оперативная Память: 2 ГБ<br>
Видеокарта: с объемом видеопамяти не менее 256 МБ<br>
DirectX®: 9.0c<br>
Жесткий диск: 9 ГБ свободного места
</div>
"
;
}


Это все работает отлично.

Но так как на сайте более 1000 игр, то выводить таким образом мне кажется весьма ошибочно, так как за вывод все игр отвечает один единственный файл template.php
То есть все игры на сайте обрабатываются этим файлом. И если я начну пихать сист.требования в template.php то количество строк кода в нем будет просто зашкаливать(1000+ игр).

Как мне решить этот вопрос? Может стоит подключить как-то другой файл и выводить сист.требования через него, что бы не нагружать template.php ?
bestxp
запихни в бд, в файл и потом из них выводи
Alex4
bestxp
Это единственный вариант?
У меня сайт вообще бд не использует.
Стоит ли ради этого заводить бд?
Kusss
Заведи для каждой игры файл текстовый. "id игры".txt
храни описание по строчно.
Alex4
Kusss а не подскажете как потом этот текстовый файл подключить?
Если сейчас я подключаюсь через ид игры вот так
if ($url == "product" && isset($_GET['idd']) && $_GET['idd'] == "ид нужной игры")


McLotos
$lines = file('тут путь к файлу');

foreach ($lines as $line)
{echo $line."\n\r";}


_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Alex4
Всем спасибо.
Вопрос решен.
Serdg
ну не знаю, но по-моему с базой данных удобнее работать, а если нет на хосте ни одной базы данных то можно попробовать посмотреть есть ли модуль SQLITE, эта база данных представляет собой обычный текстовый файл, который легко хранить и перемещать куда угодно, и на запросы выборки эта база данных очень быстро реагирует, и для хранения подобной информации как раз была бы самое то!
Alex4
Serdg не спорю, так как не особо понимаю о чем вы говорите) Но меня устраивает вариант с простыми текстовыми файлами. Это быстро как мне показалось. Создал текстовый файл, наполнил содержимым и сохранил. Быстро.
exotica
Цитата
Это быстро как мне показалось. Создал текстовый файл, наполнил содержимым и сохранил. Быстро.

БД значитильно быстрее позволит вам работать с данными, а так же делать это в более удобном виде. Неговоря уже о функциях для работы с ней, и самих обширных возможностей SQL языка

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Alex4
Да, вы правы. Если делать с БД то создавать доп текстовых файлов не надо.
Делается все в самой БД. Это быстрее, но если честно, для моих нужд это не столь критично. Все же спасибо за пояснения. Учту на будущее.
McLotos
Alex4
тут важно понять одну истину.
При больших объемах информации работа с тем же MySQL сервером будет проходить быстрее и уж точно удобнее чем запись в файл.
Мне знакомые питонисты рассказывали очень долго и нудно про то что сервер БД с использованием кеша работает в разы быстрее чем диск сервера даже с одним файликом

_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Valick
McLotos, мне кажется вы неверно поняли ваших знакомых питонистов. Вы не поверите, но база данных хранит информацию в файлах (!). И если вы лет 10 потратите на оптимизацию храниния, посика, выборки и сортировки в вашем файле, то в конечном итоге получите - СУБД (система управления базой данных)
Ну а кешировать можно всё что угодно.

_____________
Стимулятор ~yoomoney - 41001303250491
McLotos
Valick
я знаю что ДБ-сервер хранит данные в файлах =)
не раз приходилось перевозить сервера, прикол в другом. Например тот же MS SQL-сервер не всегда обращается к таблицам БД, следовательно ему не постоянно нужны эти файлы. потому-что какие-то данные он может показать из памяти

_____________
программирование - инструмент для решения конкретных задач, любая попытка спроектировать что-то универсальное приведет к провалу.©paul85
В любом случае тебе прийдётся пройти путь изобретения велосипеда, который прошли другие, только причиной твоего изобретения будет непонимание принципов работы велосипеда изобретённого другими людьми.©SlavaFr
jQuery это попытка использовать АН-225 для перевозки зубочистки
Valick
McLotos, MySQL по умолчанию кеширует результат запроса и что? Тоже самое можно сделать и с информацией из любого файла и хранить кэш в оперативке.
Если у вас складывается впечатление, что я кого-то отговариваю от использования БД, то это ложное впечатление. Я люблю БД, я люблю SQL smile.gif


_____________
Стимулятор ~yoomoney - 41001303250491
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.