Передача данных из формы в другое окно
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Передача данных из формы в другое окно Expand / Collapse
Автор
Сообщение
10.09.2007 16:02
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 18.02.2008 22:32
Сообщ.: 4, Visits: 8
Из из таблицы в базе на mysql беруться все записи и выводяться на страницу. Эти записи есть коментарии. Там поля name, text, lvl, parent_id и другие который не суть важны. Первые 2 строковые(сами коментарии), вторые 2 целочисленные, они характерезуют вложенность коментариев, т.е. коментарии древовидного типа.

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

Проблема заключается вот в чем. При выводе всех коментариев мы получаем данные из базы и при нажатии на ссылку мы должны как-то передать поля lvl, parent_id. Они нужны чтобы после заполнения формы на следующей странице(3-ей) правильно занести данные в базу.
Только как передать поля по ссылке?
Мне предложили такой вариант

// кусок на PHP
$id = mysql_result($result5,$a);
$lvl = mysql_result($result4,$a);

Ссылка на HTML, которую сложно тут написать, т.к. форум её представляет не как код а как ссылку!

a href="form.php?id&lvl" title="Ссылка на комент" текст

где этот кусочек ?id&lvl вроде как должен передать данные в form.php
Однако выдается ошибка при переходе по ссылке.

Notice: Undefined index: id in z:\home\test2.ru\www\form.php on line 17
[Денвер: показать возможную причину ошибки]
Notice: Undefined index: lvl in z:\home\test2.ru\www\form.php on line 18

Вопрос как правильно передать 2 целочисленных переменных? И после передачи этих данных в form.php, их необходимо передать в action.php. Это собственно обработчик события который вызывается при нажатии кнопки формы, после её заполнения.
Сообщ. #915844
10.09.2007 16:10
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Не понял в чем сложность. Разве <a href="form.php?id=<?=$id?>&lvl=<?=$lvl?>" title="Ссылка на комент">текст</a> не подходит?
Сообщ. #915847
10.09.2007 16:26
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 18.02.2008 22:32
Сообщ.: 4, Visits: 8
Сложность в том что я не знаю как это делается, потому как только начал работать с HTML, PHP.

ПОпробовал Ваш вариант - не работает, выдает туже ошибку.

ПРи том что
echo $lvl;
echo $id;
выводит правильный результат!
Сообщ. #915849
10.09.2007 16:28
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 18.02.2008 22:32
Сообщ.: 4, Visits: 8
в form.php

echo $lvl;
echo $id;
?>

echo $_POST["id"];
echo $_POST["lvl"];
?>

оба варианта выдают ошибку. Может она все-таки передалась и я каким-то образом с выводом напортачил?
Сообщ. #915850
10.09.2007 16:32
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Вместо $_POST надо писать $_GET так как параметры передаются в строке запроса. В $_POST попадают поля формы отправленной методом post.
Сообщ. #915851
10.09.2007 16:34
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 18.02.2008 22:32
Сообщ.: 4, Visits: 8
Все передалось. Спасибо большое!!
Кстати заработало все и без метода Get
Сообщ. #915852
10.09.2007 17:15
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Surgeon (10.09.2007)
Кстати заработало все и без метода Get

Использовал просто переменные $id и $lvl? Это тоже вариант, но здесь есть подводный камень с настройкой register_globals, которая по умолчанию на большинстве хостингов выключена и твой код не будет там работать. Лучше использовать массив $_GET.

Сообщ. #915853
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 12:38