Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Самый простой сайт на php


Автор: vitalina 21.7.2008, 18:10
Изучаю ПХП. Нигде я не нашла информацию о создании сайта с помощью таблиц. В одной ячейке меню, а в другой оно открывается. Помогите.

Автор: skyboy 21.7.2008, 18:29
никакого отношения к РНР сей вопрос не имеет.
Перемещаю в верстку.

Автор: vitalina 21.7.2008, 18:32
Как это никакого? В заголовке же все написано

Автор: skyboy 21.7.2008, 19:11
не важно, при помощи чего ты формируешь HTML. Все равно это у тебя HTML. Все эти таблицы, менюшки, картинки... Это html+css+js(если потребуется). от способа генерации(PHP, Perl, Ruby, Python и т.д.) это не зависит. Точно так же, как проигрывание фильма с точки зрения пользователя не зависит от того, какой монитор: плазменный, ЖК или ЭЛТ.
если у тебя вопрос по тому, как вывести любой HTML при помощи PHP, тогда да, следовало оставить тему в разделе РНР и дать тебе ответ: "оператор echo". но о том, что именно echo отдает браузеру текст должно описываться не просто в основах - в любом первом уроке по изучению РНР. потому я даже подумать не мог, что тебе сие неизвестно.

Автор: vitalina 21.7.2008, 19:28
Я уже решиля эту проблему.  

В одной ячейке надо написать

<a href=”?p=some_page.html”>

 

а в другой

<?

if($p) {

  include($p);

}

?>



Это тот ответ, который я хотела получить.  

Автор: skyboy 21.7.2008, 19:38
Цитата(vitalina @  21.7.2008,  18:28 Найти цитируемый пост)
В одной ячейке надо написать
<a href=”?p=some_page.html”>
а в другой
<?
if($p) {
  include($p);
}
?>

в какой такой ячейке надо писать РНР-код и как это связано с выводом меню? если не сложно, поясни, пожалуйста.

Добавлено через 1 минуту и 10 секунд
кстати говоря, проблемы безопасности тебя не заботят? т.е. то, что человек может передать произвольный параметр и прикрепить таким образом произвольный файл.

Автор: Onis 21.7.2008, 23:39
Цитата(skyboy @  21.7.2008,  19:38 Найти цитируемый пост)
кстати говоря, проблемы безопасности тебя не заботят? т.е. то, что человек может передать произвольный параметр и прикрепить таким образом произвольный файл.

Мой первый "детский" движек был подобным =) только там там были четкие ограничения и что попало нельзя было инклюдить.
Ксати забавно вышло, управлять сайтом, практически полностью, можно было через строку адресса +)

Автор: vitalina 22.7.2008, 10:54
Онис, 
поделись, пожалуйста ка безопаснее писать?


skyboy, 
Простое меню это набор ссылок.  Если нужно чтобы ссылка открывалась на этой же странице в любом месте нужно использовать ПХП. Тогда в нужное местее откроется только текст.
Зачем делать на ХТМЛ 10 почти одинаковых страниц с разным текстом? Лучше сделать одну главную с неизменным содержимым и 9 с разным текстом.

Добавлено через 2 минуты и 53 секунды
skyboy, 
насчет безопасности я ничего не знаю, если знаешь, подскажи. Я этого не понимаю:

Цитата(skyboy @  21.7.2008,  19:38 Найти цитируемый пост)
кстати говоря, проблемы безопасности тебя не заботят? т.е. то, что человек может передать произвольный параметр и прикрепить таким образом произвольный файл. 


Автор: skyboy 22.7.2008, 11:08
Цитата(vitalina @  22.7.2008,  09:54 Найти цитируемый пост)
Простое меню это набор ссылок.  Если нужно чтобы ссылка открывалась на этой же странице в любом месте нужно использовать ПХП. Тогда в нужное местее откроется только текст.

даже несмотря на грамматические ошибки, все равно не понял смысла.
идея РНР и любого другого языка программирования на стороне сервера как раз и состоит в том, чтоб генерировать HTML. физически - один или несколько скриптов, которые формируют(очень-очень часто - с использованием базы данных) страницы с бесчисленным количеством вариантов содержимого.
для этого совсем не обязательно делать include. и это неудобно, в первую очередь, потому, что получается каша из логики обработки данных(работа с БД, прием данных из формы) и логики отображения(что выводить - красную полосу или коричневую, выводить ли приглашение ввести пароль или пользователь уже авторизован и т.д.) и потом в подобном тебе же сложно будет разбираться.
но даже если пойти этим путем, тебе надо проверять приходящие данные.
потому что я могу указать вместо "some_page.html" полный путь к своему скрипту. полученную ссылку кинуть пользователю твоего сайта "посмотри, что я нашел". человек кликает по ссылке - его "пароли"(на самом деле - куки, скорее всего) передаются на мой сайт и записываются. возможность этого определяется всего лишь настройкой сервера: производить ли include удаленных файлов или нет.
а вопросы надо учиться задавать. возможно, конечно, это я такой узколобый, но то, что тебе ответило всего двое при действительно огромной посещаемости форума, значит либо то, что вопрос неоднократно поднимался, либо то, что твой вопрос люди не поняли.

Автор: vitalina 22.7.2008, 11:48
Цитата(skyboy @  22.7.2008,  11:08 Найти цитируемый пост)
для этого совсем не обязательно делать include. и это неудобно

 А как же еще можно сделать, кроме include?

Автор: skyboy 22.7.2008, 12:10
Цитата(vitalina @  22.7.2008,  10:48 Найти цитируемый пост)
А как же еще можно сделать, кроме include?

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

Автор: Onis 22.7.2008, 15:25
Цитата(vitalina @  22.7.2008,  10:54 Найти цитируемый пост)
поделись, пожалуйста ка безопаснее писать?

Для начала просто пиши проверку на куки или сессию во всех скриптах. Если у пользователя нет прав то блокируй доступ.

Автор: vitalina 23.7.2008, 10:32
Onis, 
я не умею этого делать. Напиши код.

Автор: Fortop 23.7.2008, 12:20
Цитата(vitalina @  23.7.2008,  10:32 Найти цитируемый пост)
я не умею этого делать. Напиши код. 

Сколько платишь? smile

Автор: MuToGeN 23.7.2008, 14:26
Цитата(vitalina @  23.7.2008,  10:32 Найти цитируемый пост)
я не умею этого делать

Простите, снова не могу сдержаться. Не "я не умею этого делать", а "я не умею читать самую элементарную документацию".

Автор: vitalina 29.7.2008, 13:39
Спасибо всем!

Автор: 131313 4.8.2008, 19:05
Цитата(Fortop @ 23.7.2008,  12:20)
Сколько платишь? smile

Это самое простое решение проблемы. У самого проблемы - сам не справлюсь тогда напишу менно тебе smile

Автор: Fortop 4.8.2008, 19:32
131313, 
Не стоит писать именно мне smile Есть специалисты и получше и подешевле smile

Смысл в другом, если человек просит "напиши код" - это уже заказ, который должен быть оплачен smile

Автор: Gold Dragon 5.8.2008, 07:58
вот примитивный алкоритм
файл index.php
Код

<?php
// подключаем файл страниц
include('skin.php');
//проверяем страницу
$pages = (isset($_GET['pages'])) ? $_GET['pages'] : '';
// подключаем необходимую страницу
switch ($pages) {
//*********************************************************************
    case 'p01':    // страница 1
        $content = fPage1();
        break;
    case 'p02':    // страница 2
        $content = fPage2;
        break;
    case 'p03':    // страница 3
        $content = fPage3;
        break;
//*********************************************************************
    default: // главная страница
        $content = fPage3;
}
// получаем всю страницу
$skin = fGlobal($content);
// выводим страницу
echo $skin;
?>

 файл skin.php
Код

<?php

function fGlobal($content='Страница отсутствует'){
    return <<<EOF
   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   <html>
   <head>
   <title></title>
   </head>
   <body>{$content}</body>
   </html>
EOF;
}

function fPage1(){
    return <<<EOF
<p>Страница 1
EOF;
}
function fPage2(){
    return <<<EOF
<p>Страница 2
EOF;
}
function fPage3(){
    return <<<EOF
<p>Страница 3
EOF;
}


адреса страниц будут такие
index.php
index.php?pages=p01
index.php?pages=p02
index.php?pages=p03


 smile 

Автор: shurikvin 7.3.2010, 12:07
Вот здесь   http://vin-web.ru/states/?php&&phpsite  описан простой движок сайта на php+mysql там можно создавать страницы и меню генерируется автоматически

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)