Установка переменной сеанса из формы - PullRequest
2 голосов
/ 26 сентября 2010

Можно ли установить переменную сеанса из переключателя?Это то, что у меня есть:

<form action="process.php" method"post">
<input type="radio" name="number" id="number" value="1" /> 1 
<input type="radio" name="number" id="number" value="2" /> 2 
<input type="radio" name="number" id="number" value="3" /> 3 <br />
<input type="submit" name="Submit" value="Submit" />
</form>

А затем для моего process.php:

<?php 
session_start();
session_register ("number");
$_SESSION['number'] = $_POST['number'];
echo "Number = ". $_SESSION['number'];
?> 

У меня есть эхо "Number =", чтобы проверить и убедиться,переменная устанавливается, но она все еще кажется пустой.

Я действительно смущен.Спасибо за помощь: -)

Ответы [ 3 ]

4 голосов
/ 26 сентября 2010

Вам не хватает = здесь:

method"post"

Должно быть:

method="post"

Примечание

У вас есть еще пара проблем:

id всегда должен быть уникальным для каждого элемента на странице

<input type="radio" name="number" id="number1" value="1" /> 1 
<input type="radio" name="number" id="number2" value="2" /> 2 
<input type="radio" name="number" id="number3" value="3" /> 3 <br />

Избегать использования функции session_register, поскольку она устарела, например, удалить строку ниже:

session_register ("number");
1 голос
/ 26 сентября 2010

session_register устарел, поэтому его не нужно использовать.

просто

<?php 
session_start();
$_SESSION['number'] = $_POST['number'];
echo "Number = ". $_SESSION['number'];
?>

должен сделать трюк.

также ваша форма действий испорчена:

<form action="process.php" method"post">

должно быть

<form action="process.php" method="post">

0 голосов
/ 26 сентября 2010

method"post" должно быть method="post". Вот почему он отправляет запрос GET, поэтому $_POST['number'] будет неопределенным.

И да, не используйте session_register().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...