|
|
|
| Здравствуйте!
Подскажите, пожалуйста, почему не выводится значение нулевого ключа [0] => a3?
Array ( [0] => a3 [1] => a2 [2] => a5 )
Вывод начинается только с [1] => a2.
С чем это может быть связано? Может ли быть причина в том, что массив состоит из данных переданых через POST? | |
|
|
|
|
|
|
|
для: Чайчайвыручай
(06.07.2011 в 15:19)
| | А как вывод осуществляется? В цикле? Если да, то как выглядит цикл (или как выглядит вывод)? | |
|
|
|
|
|
|
|
для: cheops
(06.07.2011 в 15:32)
| | Вывод осуществляется не в цикле. С помощью echo и printf.
POST значения не имеет? | |
|
|
|
|
|
|
|
для: Чайчайвыручай
(06.07.2011 в 15:42)
| | Что вы подразумеваете под не выводится?
Что выведет команда
var_dump($_POST);
var_dump($_POST[0]);
|
| |
|
|
|
|
|
|
|
для: Ziq
(06.07.2011 в 16:34)
| | Что вы подразумеваете под не выводится?
Не выводится после работы этого скрипта:
if($name)
{
$query = "SELECT title FROM otk WHERE id = $name LIMIT 1";
$result = mysql_query($query, $db);
if (!$result) {exit("Ошибка выполнения запроса - ".mysql_error());}
do {
printf ( <td>%s</td>",
mysql_result($result, 0);}
}
while ($result<=$buts);
}
var_dump($_POST[0]) выводит NULL | |
|
|
|
|
|
|
|
для: Чайчайвыручай
(06.07.2011 в 16:59)
| | "в огороде бузина, а в Киеве дядька"
пришла на ум такая пословица
ну с бузиной от Евгения Попова все понятно, но какое отношение массив POST имеет к этому скрипту? | |
|
|
|
|
|
|
|
для: Valick
(06.07.2011 в 17:13)
| | В данном вопросе уже не имеет, но были подозрения. | |
|
|
|
|
|
|
|
для: Чайчайвыручай
(06.07.2011 в 17:17)
| | покажите форму которая отсылает пост данные
и обработчик который принимает этот массив | |
|
|
|
|
|
|
|
для: Valick
(06.07.2011 в 17:20)
| | <form action="index.php" method="post">
<input name="a2 type="submit" value="a2"><br>
<input name="a3 type="submit" value="a3"><br>
<input name="a4 type="submit" value="a4"><br>
</form>
<?php
$mypost = $_POST;
$buts = "";
$pbuts = "";
if (isset($_COOKIE['buts'])) {
$buts = $_COOKIE['buts'];
$pbuts = $buts;
}
foreach ($mypost as $key => $val) {
$buts .= $key."#";
}
if ($pbuts != $buts) {
setcookie("buts", "$buts");
header("Location:/bodybase/gud.php");
}
$buttons = array();
if (isset($_COOKIE['buts'])) {
$buts = $_COOKIE['buts'];
$buttons = explode("#", $buts);
?>
Не выводится значение нулевого ключа именно после скрипта, который в Киеве у дядьки | |
|
|
|
|
|
|
|
для: Чайчайвыручай
(06.07.2011 в 17:38)
| | проще всего через каждую строку кода сделать print_r($_POST); и посмотреть где теряется нулевой элемент | |
|
|
|
|
|
|
|
для: Чайчайвыручай
(06.07.2011 в 17:38)
| | Хм... а почему вы думаете, что у вас $_POST имеет следующую структуру?
Array ( [0] => a3 [1] => a2 [2] => a5 )
|
Он будет содержать только ту кнопку, которую нажали. В этом случае действительно удобно выводить дамп массива, чтобы всегда видеть, что фактически передается
<?php
echo "<pre>";
print_r($_POST);
echo "</pre>";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(06.07.2011 в 18:59)
| | А почему нельзя записать нулевой элемент в этом месте?
<?php
$mypost = $_POST;
$buts = "";
$pbuts = "";
if (isset($_COOKIE['buts'])) {
$buts = $_COOKIE['buts'];
$pbuts = $buts;
}
foreach ($mypost as $key => $val) {
$buts .= $key."#";
}
[b]if ($pbuts != $buts) {
setcookie("buts", "$buts");
header("Location:/index.php");
}[/b]
$buttons = array();
if (isset($_COOKIE['buts'])) {
$buts = $_COOKIE['buts'];
$buttons = explode("#", $buts);
?>
|
Вот так:
if ($pbuts != $buts) {$buts = array(0 =>'a5');
setcookie("buts", "$buts");
header("Location:/index.php");
}
|
| |
|
|
|
|
|
|
|
для: Чайчайвыручай
(07.07.2011 в 13:20)
| | Почему, можно, просто array() переопределяет массив, если вы хотите добавить новый элемент к уже существующему массиву, то лучше воспользоваться формой $buts[0] = 'a5'; | |
|
|
|
|
|
|
|
для: cheops
(07.07.2011 в 13:41)
| | Спасибо за ответы!
Решил по другому и сразу двух зайцев убил:
$buttons = array();
if (isset($_COOKIE['buts'])) {
$buts = $_COOKIE['buts'];
$buttons = explode("#", $buts);
}$x = count($buttons);
$z = $x - 2;
if($x == "2" and $buttons[$z] != "a5")
{
array_splice($buttons, $z, 0, "a5");
setcookie("buts",implode("#",$buttons));
}
|
| |
|
|
|