Есть список, которые формирую так: Код (Text): <?php // Получить и отобразить результаты while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){ $goods[]= $row['goods']; $key[]=$row['goods_id']; //echo ($row['goods']."</br>"); //echo("<option value=".$row['goods_id'].">".$row['goods'].'</option>'); } ?> Список есть. Теперь нужно как-то узнать что именно выбрано и напечатать или передать переменной. пытаюсь такми кодом, но не получается: Код (Text): <form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="POST"> <?php $menu = $POST["menu"]; foreach ($_POST as $key=>$value) { echo 'Ключ из $_POST(оно же имя элемента формы) = '.$key.', a значение = '.$value; } mysql_close($connection); ?> <input type="submit" value="Go!" /> </form>
Код (Text): <?php $_POST['field'] = 1; $_GET['param'] = 2; die(var_dump(array($_POST, $_GET))); $_POST['field'] = 3; ?> Те отдаст: Код (Text): ~/lamantin_git/public_html $ php test.php array(2) { [0]=> array(1) { ["field"]=> int(1) } [1]=> array(1) { ["param"]=> int(2) } } Чем запись не понравилась?
Откуда ты знаешь как я думаю? Нахрена мне нужен возврат значения если мне для отладки нужен простой вывод?
Да удобнее мне такая запись! die('1') ты пишешь Не будешь же писать echo '1'; die(); нахрена лишние строки если понимаешь как работает. И так познал Игорёк удобство.
я так не пишу - это раз. два - ты написал один код, а по факту отработал другой. =) если понимаешь, то не будешь так писать.
print_r(); а ты знаешь подаван что die как и exit отрубает полностью отработку скрипта? а у сайта для примера есть и footer.php. Ты предлагаешь ему отрубить пояс, например тебя напополам, хорошо тебе будет?
Вопрос решил сам, достаточно просто: Код (Text): <form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="POST"> <select name="start_tz"> <?php $start_tz=$_POST["start_tz"]; foreach ($goods as $tz) { echo '<option'; if (strcmp($tz, $start_tz) == 0) { echo ' selected="selected"'; } echo ">$tz</option>"; } ?> </select>
Я понял что ты сморозил ахинею которая совершенно никак не относится к вопросу. Когда был показан пример в одну строку показывающий состояние серверных переменных, ты запостил чушь про отрезанные футеры и выставил себя глупо если сам ещё не понял. Свободно владею Perl откуда функция и перекочевала в пых, где она лишь синоним exit() и прекрасно себе представляю что она делает. Начинающим, а по твоим постам я примерно вижу твой опыт (header.php, footer.php и в этом духе), простительны такие комментарии, поэтому не в обиде.
тоесть подаван, ты отрицаешь свою глупость и про die, так? Добавлено спустя 2 минуты 57 секунд: во вторых = логически раздумать, почему ты именно про хидер футер спомнил, когда это писалось в http://php.ru/forum/viewtopic.php?t=51688, ты начинаешь упоминать сдесь ибо больше ни на что не способен зацепиться. Все верно? Добавлено спустя 3 минуты 51 секунду: допустим нету футера а у скрипта есть продолжение после вашего die, вопрос - ты все еще не понимаешь малыш о чем речь ведется? или весь скрипт место echo в дие у тебя =) LOL Добавлено спустя 1 минуту 57 секунд: Код (PHP): <?php echo 1; die("rrr"); echo 999; любуйся подаван
Какое <матное слово> тебе, <матное слово>, продолжение, школа?! Тебе пришли в сервеных переменных данные или не пришли, стоит задача их быстро увидеть (раз уж нет более удобных инструментов для этого у тс), ты после отправки формы вводишь простейшую одну строку кода в корне стека всех вызовов, пушишь на сервер и видишь содержимое этих переменных просто обновив страницу! Нахрена тебе, <матное слово>, выполнять остальную часть твоего, <матное слово> говнокода, где эти переменные в том числе могут быть модифицированы?!
func(){ return 4; // в процессе сложнейших вычислений получилось число } die(func()); вывода не будет. Почему? Добавлено спустя 7 минут 20 секунд: Каноничная схема такова: Код (PHP): $c=array('def'=>'Москва','nsk'=>'Новосибирск','nrl'=>'Норильск'); echo '<select name="menu">'; foreach($c as $key=>$value) { $selected=(isset($_POST['menu']) && $_POST['menu']==$key)?' selected':null; echo '<option value=".$key."'.$selected.'>'.$value.'</option>'; } echo '</select>';
Быстро увидеть что угодно: Код (PHP): const PAGE_ENCODING ='UTF-8'; function echoit($msg) { echo '<br><pre>'; if($msg) echo htmlents(print_r($msg, true)); else var_dump($msg); echo '</pre><br>'; } function htmlents($value){ return htmlentities($value,ENT_QUOTES,PAGE_ENCODING,false); }