Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для Серый_Ветер
21 / 21 / 12
Регистрация: 09.01.2013
Сообщений: 456

одна страница на php с изменяемым содержимым

24.06.2013, 02:18. Показов 2326. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго дня.
Знаю что темы такие точно есть, просто сформулировать не могу правильно поисковой запрос...

есть большая страница на php. на данный момент разбитая на части...
и есть пара ссылок типа:
index.php?act=1
index.php?act=2
index.php?act=3
index.php?act=4
index.php?act=5


вот когда это в такой конструкции:
PHP
1
2
3
4
5
6
7
8
9
10
$action = $_GET['act'];
if (isset($action))
 {
   if($action == "1") {
       include('1.php');
    }
   elseif ($action == "2") {
       include('2.php');
    }
.....
то есть по отдельности код разбит - все работает нормально.

а когда пытаешься внести этот код в index.php - не работает...
как правильно составлять конструкции подобные?

Добавлено через 1 час 14 минут
либо, если можно, ссылка сразу site/1 site/2 site/3 - это сейчас сделал через rewriterule
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.06.2013, 02:18
Ответы с готовыми решениями:

Скрипт создающий файлы с изменяемым содержимым
Помогите или подскажите как создать скрипт, который будет менять содержимое файла (инкрементировать переменную) и скармливать его утилите. ...

Одна рубрика - одна страница со своей версткой
Интересует такой вопрос. У меня сайт на wordpress и статьи которые я на нем пишу - они разного рода. То есть одни - это новости, другие -...

Одна страница
есть сверстаній дизайн... В нём меню с 6 сссылок... Особых функий не выполняют... только подгружают контент с БД, то есть текст в...

19
22 / 22 / 8
Регистрация: 20.04.2013
Сообщений: 103
24.06.2013, 02:51
index.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
echo '<form method="GET" action="index.php" enctype="multipart/form-data"> 
        <input type="hidden" name="act" value="1"> 
        <input type=submit value="act1"/></form>
        
        <form method="GET" action="index.php" enctype="multipart/form-data"> 
        <input type="hidden" name="act" value="2"> 
        <input type=submit value="act2"/></form>
        
        <form method="GET" action="index.php" enctype="multipart/form-data"> 
        <input type="hidden" name="act" value="3"> 
        <input type=submit value="act3"/></form>
        
        <form method="GET" action="index.php" enctype="multipart/form-data"> 
        <input type="hidden" name="act" value="4"> 
        <input type=submit value="act4"/></form>
        
        <form method="GET" action="index.php" enctype="multipart/form-data"> 
        <input type="hidden" name="act" value="5"> 
        <input type=submit value="act5"/></form>';
        
$act = $_GET['act'];
   if($act == "1") {    include('1.php');}
   elseif ($act == "2"){include('2.php');}
   elseif ($act == "3"){include('3.php');}
   elseif ($act == "4"){include('4.php');}
   elseif ($act == "5"){include('5.php');}
?>
0
 Аватар для Серый_Ветер
21 / 21 / 12
Регистрация: 09.01.2013
Сообщений: 456
24.06.2013, 03:00  [ТС]
нет,
Цитата Сообщение от Gold_ Посмотреть сообщение
PHP
1
2
3
4
5
6
$act = $_GET['act'];
* *if($act == "1") { * *include('1.php');}
* *elseif ($act == "2"){include('2.php');}
* *elseif ($act == "3"){include('3.php');}
* *elseif ($act == "4"){include('4.php');}
* *elseif ($act == "5"){include('5.php');}
в таком виде все работает...
я бы хотел код из 1.php ... 5.php вставить в index.php тока вот как его нужно раскидать, чтобы работал...

и зачем формы то скрытые делать? если я просто по ссылкам перехожу...
0
22 / 22 / 8
Регистрация: 20.04.2013
Сообщений: 103
24.06.2013, 03:07
PHP
1
2
3
4
5
if($act == "1") { /*сюда став код с 1.php*/}
   elseif ($act == "2"){/*сюда став код с 2.php*/}
   elseif ($act == "3"){/*сюда став код с 3.php*/}
   elseif ($act == "4"){/*сюда став код с 4.php*/}
   elseif ($act == "5"){/*сюда став код с 5.php*/}
0
 Аватар для Серый_Ветер
21 / 21 / 12
Регистрация: 09.01.2013
Сообщений: 456
24.06.2013, 10:57  [ТС]
при обновлении страницы, все переходит на начальный index.php
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
24.06.2013, 14:28
вы хотите, чтобы все находилось в 1 файле, а при переходе по ссылкам, отрабатывал определенный участок кода?
я правильно понял?
0
22 / 22 / 8
Регистрация: 20.04.2013
Сообщений: 103
24.06.2013, 14:34
Цитата Сообщение от Серый_Ветер Посмотреть сообщение
при обновлении страницы, все переходит на начальный index.php
PHP
1
2
3
4
5
6
if($act == "1") { /*сюда став код с 1.php*/}
elseif ($act == "2"){/*сюда став код с 2.php*/}
elseif ($act == "3"){/*сюда став код с 3.php*/}
elseif ($act == "4"){/*сюда став код с 4.php*/}
elseif ($act == "5"){/*сюда став код с 5.php*/}
else{/*сюда став код с 1.php*/}
0
 Аватар для Серый_Ветер
21 / 21 / 12
Регистрация: 09.01.2013
Сообщений: 456
24.06.2013, 15:07  [ТС]
Цитата Сообщение от fanatikus Посмотреть сообщение
вы хотите, чтобы все находилось в 1 файле, а при переходе по ссылкам, отрабатывал определенный участок кода?
да.
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
24.06.2013, 16:19
а чем не устраивает вариант предложенный Gold
0
 Аватар для Серый_Ветер
21 / 21 / 12
Регистрация: 09.01.2013
Сообщений: 456
24.06.2013, 22:15  [ТС]
попробую так сделать. я на работе сейчас.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
24.06.2013, 22:35
Возможно ли самому написать движок сайта?
0
 Аватар для fa2m
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
24.06.2013, 23:11
PHP
1
2
3
4
5
6
7
8
9
<p><a href="index.php?act=1">Часть I</a></p>
<p><a href="index.php?act=2">Часть II</a></p>
<p><a href="index.php?act=3">Часть III</a></p>
<p><a href="index.php?act=4">Часть IV</a></p>
<p><a href="index.php?act=5">Часть V</a></p>
<?php
if (isset($_GET['act']) && is_numeric($_GET['act']) && $_GET['act'] >= 1 && $_GET['act'] <= 5)
    include $_GET['act'] . '.php';
?>
0
 Аватар для Stifard
5 / 5 / 1
Регистрация: 12.05.2013
Сообщений: 37
24.06.2013, 23:14
PHP
1
is_integer($_GET['act'])
$_GET — only string variables?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
24.06.2013, 23:14
Цитата Сообщение от fa2m Посмотреть сообщение
PHP
1
&& is_integer($_GET['act'])
а зачем проверка на целочисленность? Оно же никогда не выполнится таким макаром

тогда уж is_numeric, но здесь она нужна как собаке пятая нога..
0
 Аватар для fa2m
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
24.06.2013, 23:17
Цитата Сообщение от KOPOJI Посмотреть сообщение
а зачем проверка на целочисленность? Оно же никогда не выполнится таким макаром
да исправлено

Добавлено через 1 минуту
Цитата Сообщение от KOPOJI Посмотреть сообщение
тогда уж is_numeric, но здесь она нужна как собаке пятая нога..
нужна, или она, или экранирование слешей
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
24.06.2013, 23:18
Цитата Сообщение от fa2m Посмотреть сообщение
нужна, или она, или экранирование слешей
вот, нашел, где это http://www.php.net/manual/ru/l... arison.php
В случае, если вы сравниваете число со строкой или две строки, содержащие числа, каждая строка будет преобразована в число, и сравниваться они будут как числа. Эти правила также распространяются на оператор switch. Преобразование типов не происходит при использовании === или !== так как в этом случае кроме самих значений сравниваются еще и типы.
0
 Аватар для fa2m
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
24.06.2013, 23:22
Цитата Сообщение от KOPOJI Посмотреть сообщение
вот, нашел, где это http://www.php.net/manual/ru/l... arison.php
может мы не правильно друг-друга поняли, но если оставить без экранирования и проверки на numeric, то можно вызвать ошибку указав в адресной строке index.php&act=12 == 12/*
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
24.06.2013, 23:41
Цитата Сообщение от fa2m Посмотреть сообщение
может мы не правильно друг-друга поняли
видимо.. но, имхо, лучше так
PHP
1
2
if( isset($_GET['act']) && is_numeric($_GET['act']) && file_exists($_GET['act'] . '.php') )
    include $_GET['act']. '.php';

Не по теме:

или для запутывания вероятного противника так

PHP
1
( isset($_GET['act']) && is_numeric($_GET['act']) && file_exists($_GET['act'] . '.php') ) && include $_GET['act']. '.php';
:D

0
 Аватар для fa2m
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
24.06.2013, 23:46
Все варианты подойдут, но если поискать к чему придратся, то:
Цитата Сообщение от KOPOJI Посмотреть сообщение
видимо.. но, имхо, лучше так
PHP
1
2
if( isset($_GET['act']) && is_numeric($_GET['act']) && file_exists($_GET['act'] . '.php') )
    include $_GET['act']. '.php';
В этом варианте вызываем "лишний" раз функцию PHP file_exists()

Цитата Сообщение от KOPOJI Посмотреть сообщение

Не по теме:

или для запутывания вероятного противника так

PHP
1
( isset($_GET['act']) && is_numeric($_GET['act']) && file_exists($_GET['act'] . '.php') ) && include $_GET['act']. '.php';
:D

ну а этот действительно, чтобы путать следы.... и себя, когда через месяц глянешь на этот код
0
 Аватар для Серый_Ветер
21 / 21 / 12
Регистрация: 09.01.2013
Сообщений: 456
26.06.2013, 17:48  [ТС]
и так, основа работает... отлично все. тока немного код подправить и все будет вообще куль...

подскажите как изменять html код который находится выше...

имеем что то типа:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
echo ('</head>
<body>
<div id="main_container">
<div id="header">
    <h1 id="logo">'.$row1.'</h1>
    <small class="quiet">'.$row3.'</small>
    <div class="menu">
        <span id="a" class="menu_para"><a href="/notes/">'.$menu1.'</a></span>
        ....
');
$action = $_GET['act'];
if (isset($action)) {
if ($action >= 1 && $action <= 10 ) {
if($action == "1") {echo ('1.php');}
elseif ($action == "2") {echo ('2.php');}
elseif ($action == "3") {echo ('3.php');}
elseif ($action == "4") {echo ('4.php');}
elseif ($action == "5") {echo ('5.php');}
else { echo ('other.php');}
}}
else {
    echo ('index.php');
}
echo ('</div></body>
</html>');
?>
как изменить код вот тут
HTML5
1
<h1 id="logo">'.$row1.'</h1>
в зависимости:
- от того куда переход был сделан;
- просто был сделан переход...

Добавлено через 17 часов 47 минут
сделал))))
может не правильно, но работает..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.06.2013, 17:48
Помогаю со студенческими работами здесь

одна страница на WP?
Подскажите пожалуйста, можно ли закрыть доступ на все левые ссылки на сайте? не знаю как правильно объяснить... вообщем если добавить к...

Не индексируется одна страница
В блоге упорно не хочет индексироваться одна новая страница уже недели 2. Почему я удивляюсь? Потому что индексация блога 99%, все новые...

Одна страница не загружается
ДОбрый день! Срочно нужна помощь! У меня возникла проблема с открытием страницы одной платежной системы зарубежного интернет-магазина....

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

В индексе одна страница.
Добрый день, дамы и господа. Дали сайт строительной компании на продвижение. Ресурс не обновлялся больше полугода, принялся за работу....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru