Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

session di win 2000 profesional

kemaren aq install php 4.3.9 yang versi windows di win2000 profesional. proses instalasi berjalan lancar, page percobaan untuk menampilkan php info juga OK.

yang jadi masalah pas aq gunain session di php. aq punya 3 script php, yang pertama untuk input username dan password.
script yang kedua untuk cek username dan password, kalo username dan password dah bener maka session akan terbentuk.
script yang ketiga untuk menampilkan session yang udah ke bentuk.

knapa kalo session udah ke bentuk di script yang ke-2, trus di redirect ke script yang ke-3, session-nya jadi ga ada / hilang. padahal waktu ta coba ke linux ga ada masalah, di winXp-prof juga Ok.

apa ini memang bugs php di win2000 prof dengan IIS-nya .....????

untuk jawabannya saya ucapkan terima kasih. :)
Tagged:

Comments

  • Coba cek register globalnya. Kalau bisa skrip anda posting disini biar kita analisa.
  • ini contoh script-nya :

    login1.htm :
    <html>
    <head>
    <title>Log-In 1</title>
    </head>

    <body>
    <pre>
    <form name="login1" method="post" action="login2.php">
    Username : <input type="text" name="user" size="20" maxlength="20" />
    Password : <input type="password" name="pwd" size="20" maxlength="20" />

    <input type="submit" value="Log-In" /> <input type="reset" value="Batal" />
    </form>
    </pre>
    </body>
    </html>




    login2.php :
    <?php
    if(!empty($_POST["user"]) && !empty($_POST["pwd"]))
    {
    $user=$_POST["user"];
    $pwd=$_POST["pwd"];
    if($user=="Administrator" && $pwd=="Admins")
    {
    $_SESSION["id"]="Admins";
    header("location: login3.php");
    }
    else
    {
    header("location: login1.htm");
    }
    }
    else
    {
    echo "Silahkan Beri Input Terlebih Dulu <br />";
    echo "<a href='login1.htm'>"."Kembali"."</a>";
    }
    ?>




    login3.php :
    <?php
    if(!empty($_SESION["id"]))
    {
    echo "Sesion anda = ".$_SESSION["id"];
    }
    else
    {
    echo "Session belum teripta <br />";
    echo "<a href='login1.htm'>"."Kembali"."</a>";
    }
    ?>



    setting session di php.ini :
    session.use_cookies = 1
    session.name = PHPSESSID
    session.auto_start = 0
    session.cookie_lifetime = 0
    session.cookie_path = /session.cookie_domain =
    session.serialize_handler = php
    session.gc_probability = 1
    session.gc_divisor = 100
    session.gc_maxlifetime = 1440
    session.bug_compat_42 = 1
    session.bug_compat_warn = 1
    session.referer_check =
    session.entropy_length = 0
    session.entropy_file =
    session.cache_expire = 180
    session.use_trans_sid = 0
  • Originally posted by yonscun_lie
    session_start() -nya dimana?

    sory pak kelupaan

    session_start() dah masukin ke login2.php dan login3.php.
    tapi koq masih ga ngaruh ya ........
    session-nya belum bisa ke baca di login3.php .... :(
    apa masih ada yang salah sama script q ....


    login2.php =
    <?php
    session_start();

    if(!empty($_POST["user"]) && !empty($_POST["pwd"]))
    {
    $user=$_POST["user"];
    $pwd=$_POST["pwd"];
    if($user=="Administrator" && $pwd=="Admins")
    {
    $_SESSION["id"]="Admins";
    header("location: login3.php");
    }
    else
    {
    header("location: login1.htm");
    }
    }
    else
    {
    echo "Silahkan Beri Input Terlebih Dulu <br />";
    echo "<a href='login1.htm'>"."Kembali"."</a>";
    }
    ?>



    login3.php =
    <?php
    session_start();

    if(!empty($_SESION["id"]))
    {
    echo "Sesion anda = ".$_SESSION["id"];
    }
    else
    {
    echo "Session belum teripta <br />";
    echo "<a href='login1.htm'>"."Kembali"."</a>";
    }
    ?>
  • session_start() -nya dimana?
  • yang pas di login2 .. .
    session nya di echo dulu kira2 nongol ngga yach ??
    if($user=="Administrator" && $pwd=="Admins"
    {
    $_SESSION["id"]="Admins";
    echo $_SESSION["id"];
    }
  • if(!empty($_SESION["id"]))


    kamu yakin tidak salah ketik SESSION diatas?
  • @ pak yons
    udah di benerin tapi masih ga ngaruh juga ....

    @ pak funkshit
    kalo di echo $_SESSION["id"] yang ada di script login2.php bisa keluar, tapi pas $_SESSION["id"] di lempar ke login3.php, $_SESSION["id"] ga mau keluar ......
  • ...ini cuma ngetest...

    di login2.php :
    setelah session_start(), coba tambahkan :
    echo session_id();

    di login3.php :
    setelah session_start(), coba tambahkan :
    echo session_id();
    echo $_SESSION["id"];

    coba bandingkan antara session_id di login2.php dan di login3.php, berubah atau tidak?
    trus yg di login3.php, $_SESSION["id"]-nya ter-echo gak?
  • untu mengecek kesalahan pada PHP variabel Array karena sesion adalah Array()
    pakai print_r($_session['id]);
    nanti apakah pada cookies server atau kesalahan variabel

    thank !
  • kalo session_id sama berarti isi $_SESSION harusnya ada,
    trus $_SESSION di-echo jg muncul...

    skrg coba ini :
    ganti fungsi !empty($_SESSION["id"]) dgn isset($_SESSION["id"])....
  • @ pak boo
    session_id yang ada di login2.php dan login3.php sama persis poq
    $_SESSION["id"] dah ke echo sesuai isinya "Admins"

    @ pak jun
    hasil gunain print_r sama seperti gunain echo biasa

    bagian mana yang salah ya ..... jadi tambah bingung neh ..... :[
  • huuh ni aneh banget
    coba yang sederhana banget dulu deh, intinya aja

    login2.php
    <?
    session_start();
    $_SESSION[id]="xxx";
    ?>
    < a href="login3.php">klik</a>

    login3.php
    <?
    session_start();
    echo $_SESSION[id];
    ?>

    masak masih ngga bisa
  • @ pak boo
    dah jalan pak, memang apa ada yang salah dengan !empty($_SESSION["id"]) punya saya pak ...???

    tapi seperti yang saya sampaikan diawal, variabel SESSION tidak mau dilempar ke script yang kalo saya pakai varian dari Win2000 baik yang server maupun yang profesional.

    kalo dicoba dilinux or di WinXP prof, variabel SESSION bisa dilempar ke script yang lain.

    padahal ini php mau ta jalanin di komputer yang pake Win2000 profesional. apa emang php ga akur ama Win2000 ya ...???
Sign In or Register to comment.