[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: обнуление массивов
Loko
Доброго времени суток.... столкнулся с такой проблемой
у меня сайт, с обновлением контента через $_GET['id'] (то есть состоит из 1 страницы)
проблема такого плана ...создал массив для хранения данных ... но он при каждой перезагрузке контента уничтожается ... вот код:


if (isset($_GET['kol'])&&$_GET['kol']>0)
{

$kol_zakaz[1]=1;
$z=sizeof($kol_zakaz);
echo 'до загрузки z='.$z;

$z=$z+1;
$bol=1;
//array_push($kol_zakaz,$_GET['kol']);
$kol_zakaz[$z]=$_GET['kol'];
$id_zakaz[$z]=$_GET['id_other'];
$nam_zakaz[$z]=$_GET['nam'];
$table_zakaz[$z]=$_GET['table'];
if($kol_zakaz[$z]>=$_GET['opt_price'])
{$price_zakaz[$z]=$_GET['opt_price']* $kol_zakaz[$z];}else{$price_zakaz[$z]=$_GET['price']* $kol_zakaz[$z];};
$mas_zakaz[$z]=$kol_zakaz[$z]*$_GET['mas'];

echo'ведётся запись'.sizeof($kol_zakaz);
//}

for ($j = 1; $j <= $z; $j++)
{
//echo '<Br>j='.$j.'<br>';
echo 'id='.$id_zakaz[$j].' name='.$nam_zakaz[$j].' table='.$table_zakaz[$j].' kol='.$kol_zakaz[$j].'<br>';
};
};


$_GET[*]- все предают информацию исправно

echo 'до загрузки z='.$z; показывает как и положено 1 ,echo'ведётся запись'.sizeof($kol_zakaz); показывает как положено 2 , но при повторном запуске этого кода все элементы массива пропадают....
Подскажите в чем может быть ошибка?



Спустя 46 минут, 11 секунд (17.05.2010 - 10:28) Basili4 написал(а):
При обовлении страницы все переменные уничтожаются Для того чтобы их сохранить и передавать между страницами используется $_SESSION

Ваша проблема от неумения/нежелания читать книжки.

Спустя 1 час, 7 минут, 31 секунда (17.05.2010 - 11:36) Loko написал(а):
Цитата (Basili4 @ 17.05.2010 - 07:28)


Ваша проблема от неумения/нежелания читать книжки.

ну, поэтому и пишу в раздел для новичков....
и так сделал с помощью session.... Выводит сообщение: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by в строке с session_start();... при этом print_r($_SESSION); выводит всё как нужно ...но при обновлении страницы массив опять пустой....


session_start();
echo'<h3>Обработка заказа</h3>';
echo' <h4>Добавление в корзину выполнено </h4>';


$bol=1;
$kol_zakaz[1]=0;
$id_zakaz[1]=0;
$nam_zakaz[1]=0;
$table_zakaz[1]=0;
$price_zakaz[1]=0;
$mas_zakaz[1]=0;


echo'ctcc';

$kol_zakaz= $_SESSION['kol_zakaz'];
$id_zakaz= $_SESSION['id_zakaz'];
$nam_zakaz= $_SESSION['nam_zakaz'];
$table_zakaz= $_SESSION['table_zakaz'];
$price_zakaz= $_SESSION['price_zakaz'];
$mas_zakaz= $_SESSION['mas_zakaz'];

$z=sizeof($kol_zakaz);
echo '<br> инициализация z='.$z.'<br>';
for ($j = 1; $j <= $z; $j++)

{ if ($id_zakaz[$j] == $_GET['id_other'] && $table_zakaz[$j] == $_GET['table'])
{

$kol_zakaz[$j]=$_GET['kol'];
if($kol_zakaz[$j]>=$_GET['opt_price'])
{$price_zakaz[$j]=$_GET['opt_price']* $kol_zakaz[$j];}else{$price_zakaz[$j]=$_GET['price']* $kol_zakaz[$j][6];};
$zakaz[$j]=$zakaz[$j]*$_GET['mas'];
echo '<br>чтение';
$bol=0;
}
else
{
echo 'запись';

echo'<br>запись в цикле'.$z.'<br>';

// array_push($kol_zakaz,$_GET['kol']);

// array_push($nam_zakaz,$_GET['nam']);
// array_push($kol_zakaz,$_GET['id_other']);
// array_push($table_zakaz,$_GET['table']) ;




};
};

if($bol==1){
$z=$z+1;
$bol=1;
//array_push($kol_zakaz,$_GET['kol']);
$kol_zakaz[$z]=$_GET['kol'];
$id_zakaz[$z]=$_GET['id_other'];
$nam_zakaz[$z]=$_GET['nam'];
$table_zakaz[$z]=$_GET['table'];
if($kol_zakaz[$z]>=$_GET['opt_price'])
{$price_zakaz[$z]=$_GET['opt_price']* $kol_zakaz[$z];}else{$price_zakaz[$z]=$_GET['price']* $kol_zakaz[$z];};
$mas_zakaz[$z]=$kol_zakaz[$z]*$_GET['mas'];

echo'ведётся запись'.sizeof($kol_zakaz);
}

for ($j = 1; $j <= $z; $j++)
{
//echo '<Br>j='.$j.'<br>';
echo 'id='.$id_zakaz[$j].' name='.$nam_zakaz[$j].' table='.$table_zakaz[$j].' kol='.$kol_zakaz[$j].'<br>';
};
$_SESSION['kol_zakaz']=$kol_zakaz;
$_SESSION['id_zakaz']=$id_zakaz;
$_SESSION['nam_zakaz']=$nam_zakaz;
$_SESSION['table_zakaz']=$table_zakaz;
$_SESSION['price_zakaz']=$price_zakaz;
$_SESSION['mas_zakaz']=$mas_zakaz;
print_r($_SESSION);
echo '<br><a href="index2.php?id=96">вернутся назад</a><br><a href="index2.php?id='.$number.'">оформить закаказ</a>';

Спустя 7 минут, 20 секунд (17.05.2010 - 11:43) Basili4 написал(а):
<?
session_start(); - эта функция должна вызыватся до отправки заголовков браузеру желательно самой первой.

Спустя 9 минут, 19 секунд (17.05.2010 - 11:52) Loko написал(а):
вроде заработало .... большое спасибо

Спустя 3 минуты, 30 секунд (17.05.2010 - 11:56) Basili4 написал(а):
Не ленись. Книжки читай.

Спустя 2 часа, 33 минуты (17.05.2010 - 14:29) gagger написал(а):
Не обязательно книжки...можно и в инете, куча инфы. Правда далеко не все, многое только с опытом приходит.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.