[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: php кнопка перехода с передачей GET
Страницы: 1, 2
Гость_Владимир
Здравствуйте.
Уж второй день маюсь, ищу решение. Но никак. Вот и решил обратиться за помощью.

Есть некоторая страница index.php на которой в форме (echo '<form>';) расположен через include (по переменной, сохраняющей имя текущей инклуженой страницы) php файл с мини-гостевой.

В принципе всё есть. Есть и страница и поля и скрипт обработки/записи.
Но нету 2-х вещей:
1) Нужна кнопка, да такая, которая по нажатию передаст все переменные страницы (в т.ч. имена полей ввода) на другую страницу (обработчик) методом GET.
2) Нужен скрипт простого (без кнопок, можно с ожиданием) перехода на index.php. Также с передачй всех переменных через GET.

Т.е. получается что-то вроде:
1) С index.php через форму отправки отдаются 5 переменных на gw.php;
2) gw.php собирает GET, обрабатывает, затем отправляет через GET первые 3 переменные (2 отработаны и не нужны).
Вот как-то так.

P.S. добавление в форму action черевато неработоспособностью других фишек, т.о. предложение изменить <form> на <form action = 'gw.php' method = get> - заведомо откидывается в пыльный угол шкафа (а то и в урну).

P.S.S. Сохранение данных через GET принципиально важен. Без переменных хреново, передавать через POST тоже не ахти.

Благодарю за внимание, буду ждать советов.
Игорь_Vasinsky
Цитата
P.S.S. Сохранение данных через GET принципиально важен

этот метод так же принципиально обломен.

длина строки в url имеет ограничение.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Guest
Цитата (Игорь_Vasinsky @ 16.02.2013 - 21:39)
Цитата
P.S.S. Сохранение данных через GET принципиально важен

этот метод так же принципиально обломен.

длина строки в url имеет ограничение.

Переменных всего 5 (и больше не будет. 5 - пиковое значение, всего их 3).
Но допустим я сменю на POST. Есть варианты реализации?
sergeiss
Цитата (Гость_Владимир @ 16.02.2013 - 20:38)
Есть некоторая страница index.php на которой в форме (echo '<form>';) расположен через include (по переменной, сохраняющей имя текущей инклуженой страницы) php файл с мини-гостевой.В принципе всё есть.
Есть и страница и поля и скрипт обработки/записи.

Судя по написанному, у тебя нету никакого скрипт обработки записи, нету страницы с формой. Потому что иначе не возникло бы вопросов, как типа таких:


Цитата (Гость_Владимир @ 16.02.2013 - 20:38)

Но нету 2-х вещей:
1)  Нужна кнопка, да такая, которая по нажатию передаст все переменные страницы (в т.ч. имена полей ввода) на другую страницу (обработчик) методом GET.
2) Нужен скрипт простого (без кнопок, можно с ожиданием) перехода на index.php. Также с передачй всех переменных через GET.



Если же я "вдруг" не прав, то тогда покажи что же ты сам наработал, каков код уже готовых страниц. А мы тут поправим/дополним smile.gif И еще - лучше использовать POST в твоем случае.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Guest
Весь код выкладывать не буду, т.к. разные страницы по 300+ строк.
Выложу отрывки:

Итак, получаю переменную страницы и языка:
<?php
$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
$lng = $_GET['lang'];
$pag = $_GET['page'];
$pg = $_GET['paga'];


Далее идёт сопоставление и выборка нужной страницы с подстановков через банальный
include $pg

Нужной страницы, где слова для перевода на иные языки имеют вид $titlepdg[07], или $headtitle (при выборе языка на озаглавье страницы, до генерации <html> тэгов происходит
include '/lang/' . &lng . '.inc';


Ну тут всё совсем просто (если ещё не понятно к чему это - есть главный index.php, а весь прочий контент идёт уже через набив главного разного рода Includ-ами. Мне так проще (заполнять и редактировать + всяких плюшек вешать не вешая сам сайт "неожиданными фичами", ака "Багами") :D

А теперь про гостевую.
Главная подключает скрипт guest.php (всё на апаче, поэтому никаких заглавных буковокЪ, с ними путаница), где лежит примерно следующее:
<?php
echo '<h1 color = "#00FF00" align = center>';
echo $guest;
echo '</h1><hr width = 90% size = 1 align = center color = "#00FF00" noshade><br>';
readfile('guest.txt');
// echo '<fieldset align = center>';
// echo $word[03] . ' <input type = text name = "user" style = "width: 200" value = ""><br><br>';
// echo '<textarea rows = 10 cols = 50 height = 150 name = "text"></textarea><br><br>';
// echo '<input type = "submit" style = "width: 240" value = "' . $word[02] . '" onclick = "';

// echo '<script type = "text/javascript">
// document.location.href = "gw.php/?';

// echo 'user=' .

// echo '"</script>">';



// echo '</fieldset>';

?>

Закосенченое, ясень пень, то, что портит малину. Т.е. выводим заголовок, сгенерированный с html тэгами файл с записями и форму отправки. На форме есть поля для имени и текст. Они имеют свои имена, которые при обработке через GET считываются другими скриптами через
$trololo = $_GET['trololoshenki'];


Далее скрипт обработки [gw.php]:
	$fp = fopen('guest.txt', 'a');
$sw = fwrite($fp, $text);
if($sw == false)
{
echo $errwrt;
}
fclose($fp);

// header('Location: .');

echo '<script type = "text/javascript">
document.location.href = "index.php";
</script>'
;


Вот кусок, который запихивает уже сгенерированный текст в файл и плачет, если файл недоступен, а затем обновляет страницу.

Вот и проблемы:
guest.php не имеет кнопки, чтобы та отправляла текст, имя "писальщика" и язык (выбранный) на gw.php, а на втором нету такого обновления страницы, при котором можно было-бы передать текущую выбранную страницу (иначе на главную кинет) и выбранный язык as is... Т.е. чтобы при посте возвращал на страницу с гостевой в том языке, в каком было изначально.

Надеюсь уж теперь вопросов ко мне (в этой стези) не возникнет.
Быстрый ответ:

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