• 09-10-2010, 11:22:17
    #1
    Selamun aleyküm arkadaşlar..

    Şimdi benim takıldığım bir nokta var size danışmak istedim...

    sitenin girişine bir intro yaptım.. introda toptan ve parakende diye iki tane butonum var.. toptana tıklayınca index.php?tip=toptan parakendeye tıklayınca index.php?tip=parakende diye link gönderiyorum.. index.php dosyasında tip değişkenini $tip = $_GET['tip']; diye çekip $tip değişkenine değer olarak atıyorum...

    asıl mesele şudur. bu toptan parakende farklılığı sadece ürünler sayfasında farklılık gösterecek. yani ürünler sayfasına şöyle bir link yapmam lazım..

    <a href="index.php?islem=urunler&sayfatip=<?php echo $tip ?>>Ürünler</a>

    aşağıda ise
    if ($sayfaTip == "parakende")
    {
    include ("parakendeUrunler.php");
    }
    else if($sayfaTip == "toptan")
    {
    include("toptanUrunler.php");
    }
    Şeklinde bir kontrol yapmam lazım. Flashtan siteye ilk girişte ürünler butonu GET ile çektiğim $tip değişkenine göre link alıyor orada bir sorun yok.. ama sitenin içerisinde örneğin iletişime sayfasına tıklayınca ürünler butonundaki
    index.php?islem=urunler&sayfaTip= olarak değişiyor yani site içinde gezince $sayfaTip değişkeni değerini hafızasından siliyor..


    Sanırım bu flashtan yolladığım tip değişkenini bir sessiona yada bir cokkie ' e atmam gerekiyor.
    yani birşekilde flashtan yolladığım degeri kullanıcıya özel birşekilde hafızada tutup Ürünler butonundaki sayfaTip değişkenine flashtan gelen değeri eşitlemem gerekiyor yapamadım gitti..
    yardım edermisiniz. ?

    Teşekkürler.
  • 09-10-2010, 12:35:49
    #2
    bunu introdan sonra koyarsın kardeşim,
    switch ($tip)
    { 
      case "perakende":
       setcookie("Tip", 'perakende', '/');
       break;
      case "toptan":
      setcookie("Tip", 'toptan', '/')
      break;
      default:
      setcookie('Tip', 'NULL', '/'); 
    }
    bunuda ürünlerin oraya atarsın
    switch ($_COOKIE["TestCookie"]){
    case 'perakende':
    include ("parakendeUrunler.php");
    break;
    case 'toptan':
    include ("toptanUrunler.php");
    break;
    case default:
    include ("Urunler.php");
    break;
    }
  • 09-10-2010, 21:55:36
    #3
    kardeş keşke biraz açıklamada yapsaydın neyin ne olduğunu anlayarak gitseydim..
    cevabın için teşekkürler.
  • 05-11-2010, 14:30:04
    #4
    arkadaşlar bu sorunu çözemedim hala. bana yardım edecek kimse yokmu

    Olayı en başından tekrar anlatıyorum...

    Flash introda siteyi 2 ye ayıran butonlarım var. biri endüstriyel diğeride perakende.
    perakendeye tıklayınca .htaccess dosyasına index.php?tip=Perakende şeklinde, Endüstriyele tıklayınca index.php?tip=Endustriyel şeklinde link gönderiyorum...

    RewriteRule ^(.*) index.php?tip=$1 [L,QSA]
    Bu htaccess deki url şekli. (bu şekilde yapınca css dosyamı görmüyor site)

    Flashtan gönderdiğim tip değişkenini hafızada tutmam gerekiyor.
    bunun için arkadaşın dediği gibi cookie kullandım. Şu şekilde.

    $tip = $_GET['tip'];
    echo $tip;
    switch ($tip)
    {
    case "Perakende":
    setcookie("tip", 'Perakande', time()+60*60);
    break;
    case "Endustriyel":
    setcookie("tip", 'Endustriyel', time()+60*60);
    break;
    default:
    setcookie('tip', 'NULL', time()+60*60);
    }


    flashtan gelen tip değişkenini index.php de echo ile çıktı alıyorum. doğru değeri gönderiyor flash. Fakat tip değişkeninin değerini ilk seferde cookie ye atmıyor. sayfayı yenilediğimde cookie ye atıyor.

    Bunu nasıl çözerim arkadaşlar ?
  • 05-11-2010, 14:40:33
    #5
    Kardeş dediğim gibi çerez atma işlemini çerez okuma işleminden önce yapmalısın...

    Yani önce çerezi ata, sonrasında çerez kontrolü yap.
  • 05-11-2010, 14:53:56
    #6
    $deg = $_COOKIE[$_GET['tip']];
    echo $deg;
    switch ($deg)
    {
    case "Perakende":
    setcookie("deg", 'Perakande', time()+60*60);
    break;
    case "Endustriyel":
    setcookie("deg", 'Endustriyel', time()+60*60);
    break;
    default:
    setcookie('deg', 'NULL', time()+60*60);
    }



    böyle yaptım yine olmadı şu hatayı verdi..

    Notice: Undefined index: Endustriyel in C:\wamp\www\index.php on line 6
  • 05-11-2010, 15:04:30
    #7
    sayfanın başına error_reporting(0); koymalısın
  • 05-11-2010, 15:20:33
    #8
    bu olay beni herşeyden soğuttu :S
    beceremiyorum şu cookie olayını başımda saç kalmadı