Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Виртуальная корзина

Сообщения:  [1-10]    [11-20]   [21-30]   [31-40]  [41-42] 

 
 автор: cheops   (22.06.2005 в 21:02)   письмо автору
 
   для: ms.Net   (22.06.2005 в 14:08)
 

Давайте в новую тему переберёмся, а то эта слишком длинная и с ней не удобно работать.

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=4895

   
 
 автор: P@Sol   (22.06.2005 в 14:31)   письмо автору
 
   для: P@Sol   (22.06.2005 в 14:04)
 

добавляет первый $new в массив, и потом можно добавить еще один...но он будет меняться

<?
session_start
();
$new=$_GET['new'];

if(
$new)
  {
    if(!
$_SESSION[cart])
    {
      
$cart=array();
      
session_register("cart");
    }
    
$cart=$_SESSION[cart];

    if (
count($cart)== 0$cart = array("1","2");

    for (
$i=0;$i<count($cart);$i++)
     echo 
$cart[$i]." до добавления<br>";
    
   
array_push($cart,$new);

    for (
$i=0;$i<count($cart);$i++)
     echo 
$cart[$i]." после<br>";
  }
?>

   
 
 автор: ms.Net   (22.06.2005 в 14:08)   письмо автору
 
   для: cheops   (22.06.2005 в 13:31)
 

Напишите пожалуйста самый примитивный пример. Как сохранять и читать в массив с помощью сессий на нескольких страницах.

   
 
 автор: P@Sol   (22.06.2005 в 14:04)   письмо автору
 
   для: ms.Net   (22.06.2005 в 13:23)
 


<?
session_start
();
$new=$_GET['new'];

$cart=$_SESSION["cart"];
if (
$cart=""$cart = array("1","2");

for (
$i=0;$i<count($cart);$i++)
  echo 
$cart[$i]." до добавления<br>";

if(
$new)
  {
    if(!
$_SESSION["cart"])
    {
      
session_register("cart");
    }
    
$cart=array_push($cart,$new);
  }

  for (
$i=0;$i<count($cart);$i++)
  echo 
$cart[$i]." после<br>";

?>

вот такой код...но он тоже не работает...если его получиться отладить...то Ваш тоже должен будет заработать;)

вот, я думаю этот более правельный, но все равно пока нерабоочий
<?
session_start
();
$new=$_GET['new'];

if(
$new)
  {
    if(!
$_SESSION[cart])
    {
      
session_register("cart");
    }
    
$cart=$_SESSION[cart];

    if (
$cart[0]=""$cart = array("1","2");

    for (
$i=0;$i<count($cart);$i++)
     echo 
$cart[$i]." до добавления<br>";

    
$cart=array_push($cart,$new);

    for (
$i=0;$i<count($cart);$i++)
     echo 
$cart[$i]." после<br>";
  }
?>

   
 
 автор: cheops   (22.06.2005 в 13:40)   письмо автору
 
   для: ms.Net   (22.06.2005 в 13:23)
 

Вы должны уже пользоваться массивом $_SESSION['cart'][], хотя помоему с массивами не получиться работать с сессиями.

   
 
 автор: cheops   (22.06.2005 в 13:31)   письмо автору
 
   для: P@Sol   (22.06.2005 в 13:26)
 

Лучше использовать суперглобальный массив $_SESSION, так как функции session_register() и session_is_registered() считаются устаревшими.
<?php
    
if(!isset($_SESSION['cart'])) 
    { 
    }
?>

   
 
 автор: P@Sol   (22.06.2005 в 13:26)   письмо автору
 
   для: ms.Net   (22.06.2005 в 12:49)
 

почитал книгу...вот что надо

if($new) 
  { 
    if(!session_is_registered("cart")) 
    { 
      $cart = array(); 
      session_register("cart"); 
    } 
    if($cart[$new]) 
      $cart[$new]++; 
    else 
      $cart[$new] = 1; 
  } 

   
 
 автор: ms.Net   (22.06.2005 в 13:23)   письмо автору
 
   для: P@Sol   (22.06.2005 в 13:20)
 

Вот полный код. id приходит из другой страницы. Сессии тоже создаются там. Всё равно почему-то не сохраняет значения массива $cart

<?
 Error_Reporting
(E_ALL & ~E_NOTICE);
session_start();
//$cart = array();
//$_SESSION['cart'];
$proverka=0;

if (
$_GET['id']<>0)
     {
             if ((
count($cart)>0))
                {
                  
$tmp=$_GET['id'];
                  
//&#239;&#240;&#238;&#226;&#229;&#240;&#234;&#224; &#237;&#224; &#243;&#230;&#229; &#239;&#238;&#235;&#238;&#230;&#229;&#237;&#237;&#251;&#233; &#242;&#238;&#226;&#224;&#240;
                  
foreach ($cart as $id_tovar)
                     {
                        if (
$id_tovar==$tmp$proverka=1;
                     }
                  if (
$proverka<>1$cart[]=$tmp;
                     
//&#226;&#251;&#226;&#238;&#228; &#234;&#238;&#240;&#231;&#232;&#237;&#251;
                     
foreach ($cart as $id_tovar)
                         {
                             echo 
"<p>&#194; &#234;&#238;&#240;&#231;&#232;&#237;&#229; &#242;&#238;&#226;&#224;&#240; ".$id_tovar."</p>";
                         }
                  echo 
"<p><a href=korzina.php>&#194;&#229;&#240;&#237;&#243;&#242;&#252;&#241;&#255;</a></p>";
                  echo 
"<p><a href=korzina_del.php>&#206;&#247;&#232;&#241;&#242;&#232;&#242;&#252; &#234;&#238;&#240;&#231;&#232;&#237;&#243;</a></p>";
                  echo 
"<p>&#194;&#241;&#229;&#227;&#238; &#242;&#238;&#226;&#224;&#240;&#238;&#226; &#226; &#234;&#238;&#240;&#231;&#232;&#237;&#229;: ".count($cart)." &#248;&#242;.</p>";
                };
            
//&#229;&#241;&#235;&#232; &#234;&#238;&#240;&#231;&#232;&#237;&#224; &#225;&#251;&#235;&#224; &#239;&#243;&#241;&#242;&#224;

            
if ((count($cart)==0))
                {
                  echo 
"<p>&#229;&#241;&#235;&#232; &#234;&#238;&#240;&#231;&#232;&#237;&#224; &#225;&#251;&#235;&#224; &#239;&#243;&#241;&#242;&#224;</p>";
       
//  $cart[$id_index] = $$id_index;

                   
$tmp=$_GET['id'];
                   
//array_push($cart,$tmp);
                   
$cart[]=$tmp;
                   foreach (
$cart as $id_tovar)
                         {
                             echo 
"<p>&#194; &#234;&#238;&#240;&#231;&#232;&#237;&#229; &#242;&#238;&#226;&#224;&#240; ".$id_tovar."</p>";
                         }
                  echo 
"<p><a href=korzina.php>&#194;&#229;&#240;&#237;&#243;&#242;&#252;&#241;&#255;</a></p>";
                  echo 
"<p><a href=korzina_del.php>&#206;&#247;&#232;&#241;&#242;&#232;&#242;&#252; &#234;&#238;&#240;&#231;&#232;&#237;&#243;</a></p>";
                  echo 
"<p>&#194;&#241;&#229;&#227;&#238; &#242;&#238;&#226;&#224;&#240;&#238;&#226; &#226; &#234;&#238;&#240;&#231;&#232;&#237;&#229;: ".count($cart)." &#248;&#242;.</p>";

                }
     }
 if ((
$_GET['id']==0) and (count($cart)==0))
    {
         echo 
"<p>&#202;&#238;&#240;&#231;&#232;&#237;&#224; &#239;&#243;&#241;&#242;&#224;</p>";
         echo 
"<a href=korzina.php>&#194;&#229;&#240;&#237;&#243;&#242;&#252;&#241;&#255;</a>";
    }

 if ((
$_GET['id']==0) and (count($cart)<>0))
   {
       foreach (
$cart as $id_tovar)
          {
            echo 
"<p>&#194; &#234;&#238;&#240;&#231;&#232;&#237;&#229; &#242;&#238;&#226;&#224;&#240; ".$id_tovar."</p>";
          }
       echo 
"<a href=korzina.php>&#194;&#229;&#240;&#237;&#243;&#242;&#252;&#241;&#255;</a>";
   }
// else echo "<p>&#194; &#234;&#238;&#240;&#231;&#232;&#237;&#229; &#237;&#229;&#242; &#242;&#238;&#226;&#224;&#240;&#238;&#226;!</p>";
?>

   
 
 автор: P@Sol   (22.06.2005 в 13:20)   письмо автору
 
   для: ms.Net   (22.06.2005 в 13:13)
 

я сглупил...извини..правельно..и что у тебя получилось?

   
 
 автор: ms.Net   (22.06.2005 в 13:13)   письмо автору
 
   для: P@Sol   (22.06.2005 в 13:07)
 

А так array_push($cart,$tmp);

   

Сообщения:  [1-10]    [11-20]   [21-30]   [31-40]  [41-42] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования