|
|
|
| Хостер поменял PHP4 на PHP5. Теперь такая лабуда не работает.
Когда $$id != "0" то поле вообще становится пустым. Значит проверка if ($$id == "0") срабатывает, тогда почему он не назначает $order[$id] = $$id;
$order - массив - переменная сессии.
$id - input type=text с именем $id.
foreach($order as $id => $count)
{
if ($$id == "0")
unset($order[$id]);
else
$order[$id] = $$id;
}
|
Заранее Спасибо!!! | |
|
|
|
|
|
|
|
для: kukuikar
(21.06.2007 в 12:14)
| |
попробуй один доллар убрать $$id => $id
|
| |
|
|
|
|
|
|
|
для: Ressfourt
(21.06.2007 в 16:31)
| | Да не то это, $$ - это переменная переменной | |
|
|
|
|
|
|
|
для: kukuikar
(21.06.2007 в 17:47)
| |
в данном случае у тебя $$id является пустым значением и проверка не пройдет
|
| |
|
|
|
|
|
|
|
для: Ressfourt
(21.06.2007 в 21:06)
| | при пересчете заказа оно не может быть пустым, в нем обязательно что-то есть | |
|
|
|
|
|
|
|
для: kukuikar
(21.06.2007 в 12:14)
| | > Когда $$id != "0" то поле вообще становится пустым.
Что за поле?
Что у Вас в $id находится? И откуда появляются $$id ? | |
|
|
|
|
|
|
|
для: kasmanaft
(21.06.2007 в 19:10)
| | <input type="text" name="<?=$id_prod ?>" ...... /> вот где у меня $id там у меня только цифры
И если у меня $id = 5, то $$id = $5 = value из text.
Может я не прав? | |
|
|
|
|
|
|
|
для: kukuikar
(21.06.2007 в 21:04)
| |
$id = "id2";
$id2 = "Test2";
print_r($$id);
вывод Test2
|
| |
|
|
|
|
|
|
|
для: kukuikar
(21.06.2007 в 21:04)
| | http://phpfaq.ru/globals | |
|
|
|
|
|
|
|
для: sergey89
(21.06.2007 в 21:10)
| | хмм да действительно не подумал может быть регистер_глобалс не включены, но всеравно использование регистр_глобалс это сильно нарушает безапасность, но использование косвенных сылок в этом примере считаю вообще ненужным | |
|
|
|
|
|
|
|
для: sergey89
(21.06.2007 в 21:10)
| | у меня register_globals on
и кстати по умолчанию включены | |
|
|
|
|
|
|
|
для: kukuikar
(21.06.2007 в 12:14)
| | Вообщем решил проблему так:
foreach($order as $id => $count)
{
if (${"n".$id} == "0")
unset($order[$id]);
else
$order[$id] = ${"n".$id};
}
|
У меня в $$id было число, а имя переменной не может начинаться с числа, так написано в мануале, но в пхп 4 все работало, а в 5 застопорилось... всем спасибо. | |
|
|
|