Şimdi Ara

Php Üyenin Session Bilgisini Veritabanına Nasıl Kaydedebilirim?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
18
Cevap
0
Favori
1.822
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Php Üyenin Session Bilgisini Veritabanına Nasıl Kaydedebilirim?

    merhaba. ben daha önce projemde yapmıştım fakat şuan projemi bulamıyorum.

    ben şöyle bişey yapıyorum.



    mesela input type text e yazı yazıyorum butona bastığımda text e yazılan ve session bilgilerim veritabanına gitsin ad soyad username şifre gibi. text e yazmayı yapıyorum session bilgilerini nasıl kaydettirebilirim?

    $adsoyad= $_SESSION["ad_soyad"];

    mysql_query("insert into tablo set adsoyad='$adsoyad'"); gibi yapıyorum olmuyor

    nasıl yapabilirim ?



  • Merhaba,

    Kullandığınız şekil doğrudur sadece sql sorgunuzda sorun var. O da; "insert into tablo set" diye bir sorgu olamaz. Insert işlemi için şu sorgu kullanılır: "INSERT INTO [Tablo_Adi] VALUES ([Deger_1]);" şeklinde yada bu şekilde "INSERT INTO [Tablo_Adi] ([Kolon_1],[Kolon_2]) VALUES ([Kolon_1_Deger],[Kolon_2_Deger]);" olmalıdır. Sql bilginizi pekiştirmek için w3school'un ilgili sayfasını okumanızı tavsiye ediyorum.(http://www.w3schools.com/sql/). Birde textbox'a yazılan değerleri session içerisine attıp ordan çekip database'e eklemek yerine direkt olarak çekip eklemeniz daha iyi olacaktır. Html form kavramını araştırırsanız ilgili yazılara ulaşabilirsiniz.

    Kolay gelsin...
  • dediğiniz gibide yaptım fakat session bilgisini kaydetmiyor
  • quote:

    Orijinalden alıntı: sekomeko35

    dediğiniz gibide yaptım fakat session bilgisini kaydetmiyor

    Html form kullanarak denediniz mi? Html form olarak yaparsanız daha az zahmetli olacaktır.
  • quote:

    Orijinalden alıntı: özgür beyin

    Html form kullanarak denediniz mi? Html form olarak yaparsanız daha az zahmetli olacaktır.


    Hocam html form derken <form> mu demek istediniz?
  • quote:

    Orijinalden alıntı: hawkpaw


    quote:

    Orijinalden alıntı: özgür beyin

    Html form kullanarak denediniz mi? Html form olarak yaparsanız daha az zahmetli olacaktır.


    Hocam html form derken <form> mu demek istediniz?

    Evet hocam ondan bahsediyorum bir adet html sayfasında form yapısını kullanarak php sayfaya verileri göndererek, daha sonra php sayfasında verileri çekip bir değişkene atarak ve bu değişkenleri istediğiniz gibi kullanarak database işlemleri yapabilirsiniz.
  • quote:

    Orijinalden alıntı: özgür beyin

    quote:

    Orijinalden alıntı: hawkpaw


    quote:

    Orijinalden alıntı: özgür beyin

    Html form kullanarak denediniz mi? Html form olarak yaparsanız daha az zahmetli olacaktır.


    Hocam html form derken <form> mu demek istediniz?

    Evet hocam ondan bahsediyorum bir adet html sayfasında form yapısını kullanarak php sayfaya verileri göndererek, daha sonra php sayfasında verileri çekip bir değişkene atarak ve bu değişkenleri istediğiniz gibi kullanarak database işlemleri yapabilirsiniz.


    hmm ben hep form kullandım da ondan, acaba başka bi yöntem falan mı var diyerekten..

    sağolun..




  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
  • quote:

    Orijinalden alıntı: hawkpaw


    quote:

    Orijinalden alıntı: özgür beyin

    quote:

    Orijinalden alıntı: hawkpaw


    quote:

    Orijinalden alıntı: özgür beyin

    Html form kullanarak denediniz mi? Html form olarak yaparsanız daha az zahmetli olacaktır.


    Hocam html form derken <form> mu demek istediniz?

    Evet hocam ondan bahsediyorum bir adet html sayfasında form yapısını kullanarak php sayfaya verileri göndererek, daha sonra php sayfasında verileri çekip bir değişkene atarak ve bu değişkenleri istediğiniz gibi kullanarak database işlemleri yapabilirsiniz.


    hmm ben hep form kullandım da ondan, acaba başka bi yöntem falan mı var diyerekten..

    sağolun..

    Rica ederim hocam. Şu(http://www.w3schools.com/php/php_forms.asp) bağlantıdan daha detaylı ve uygulamalı öğrenebilirsiniz.

    Tekrardan kolay gelsin...




  • galiba benim indirdiğim üyelik şeyinde sorun var ki session bilgisini yazdırmıyor.

    çünkü daha önce yaptığımda oluyordu.
  • quote:

    Orijinalden alıntı: sekomeko35

    galiba benim indirdiğim üyelik şeyinde sorun var ki session bilgisini yazdırmıyor.

    çünkü daha önce yaptığımda oluyordu.

    Session'da birşeyler olup olmadığını kontrol ettiniz mi?
  • Kodlarımı Paylaşmak İstedim.

    sayfama include ediyorum asagıdaki kodları.

    Cookie Kullanılmış Acaba Session Yerine $_COOKIE mi Kullanılmalı ?



    <?php 

    @ob_start(); @session_start();



    $mysql_data = array(
    "host" => "localhost",
    "name" => "veritabanim",
    "user" => "root",
    "pass" => "",
    );

    $php_version = (int) phpversion();

    if( $php_version >= 5 ) {
    $db = @new mysqli($mysql_data["host"], $mysql_data["user"], $mysql_data["pass"], $mysql_data["name"]);

    if( $db->connect_errno ) {

    die( $db->connect_error );
    }
    } else {
    header("Content-type:text/html;charset=ISO-8859-9");

    die("Artık PHP5 kullanıyoruz! Yenilikçi ol, sistemini güncelle :)");
    }


    $cookie_id = "uyekontrolid";

    if( isset($_COOKIE[$cookie_id]) && dbcount("id", "uyeler", "token=".dbexport($_COOKIE[$cookie_id])) ) {
    $giris_yapildimi = 'evet';
    $result = dbquery("SELECT * FROM uyeler WHERE token=".dbexport($_COOKIE[$cookie_id]));
    $uyebilgi = $result->fetch_assoc();
    } else {
    $giris_yapildimi = 'hayir';
    $uyebilgi = array();
    }



    // bu bir ID mi?
    function idval($num=0, $greaterthan=0) {
    if(!is_numeric($greaterthan)) $greaterthan = 0;
    return (intval($num) > $greaterthan && is_numeric($num) ? (intval($num)==0?"0":intval($num)) : "0" );
    }
    function dbtrim($par) {
    return str_replace(array("'","\""), array("'","""), $par);
    }
    function dbuntrim($par) {
    return str_replace(array("'","""), array("'","\""), $par);
    }
    function dbexport($x='') {return var_export($x, true);}

    // query
    function dbquery($query) {
    global $db;
    $sorgu = $db->query($query);
    if( !$sorgu || $db->errno > 0 ) {
    die( $db->error );
    } else {
    return $sorgu;
    }
    }
    function dbinsert($tablo, $datalist) {
    global $db;
    if(is_array($datalist)):
    $alanlar = array_keys($datalist);
    $alan = implode(',', $alanlar);
    $veri = implode(", ",array_map('dbexport', $datalist));
    else:
    $parametreler = func_get_args();
    $tablo = array_shift($parametreler);
    $alan = $veri = null;
    $toplamParametre = count($parametreler)-1;
    foreach($parametreler as $NO => $parametre):
    $bol = explode('=', $parametre, 2);
    if($toplamParametre == $NO):
    $alan .= $bol[0];
    $veri .= dbexport($bol[1]);
    else:
    $alan .= $bol[0].',';
    $veri .= dbexport($bol[1]);
    endif;
    endforeach;
    endif;

    $sonuc = dbquery('INSERT INTO '.$tablo.' ('.$alan.') VALUES ('.$veri.')');
    if($sonuc)
    return $db->insert_id;
    else
    return "0";
    }
    function dbdelete($tablo, $kosul = null) {
    if($kosul):
    if(is_array($kosul)):
    $kosullar = array();
    foreach($kosul as $alan => $veri)
    $kosullar[] = $alan.'='.dbexport($veri);
    endif;
    return dbquery('DELETE FROM '.$tablo.' WHERE '.(is_array($kosul)?implode(' AND ',$kosullar):$kosul));
    else:
    return dbquery('TRUNCATE TABLE '.$tablo);
    endif;
    }
    function dbupdate($tablo, $deger, $kosul) {
    if(is_array($deger)):
    $degerler = array();
    foreach($deger as $alan => $veri)
    $degerler[] = $alan."=".dbexport($veri);
    endif;

    if(is_array($kosul)):
    $kosullar = array();
    foreach($kosul as $alan => $veri)
    $kosullar[] = $alan."=".dbexport($veri);
    endif;

    return dbquery('UPDATE '.$tablo.' SET '.(is_array($deger) ? implode(',',$degerler):$deger).' WHERE '.(is_array($kosul)?implode(' AND ',$kosullar):$kosul));
    }
    // dbcount('id', 'tablo', "id='".idval($id1)."'")
    function dbcount($field, $table, $conditions = "") {
    global $db;
    $cond = ($conditions ? " WHERE ".$conditions : "");
    $result = dbquery("SELECT COUNT(".$field.") as t FROM ".$table.$cond);
    if (!$result) {
    die( $db->error );
    return false;
    } else {
    $rows = $result->fetch_array(MYSQLI_NUM);
    return $rows[0];
    }
    }
    function create_token($length=11) {
    /*for($i=0; $i < $length; $i++) {
    $key .= $keys[array_rand($keys)];
    }
    return $key;*/
    $keys = implode('', array_merge(range('A', 'Z'), range(0,9), range('a', 'z')));
    do {
    $token = substr(str_shuffle($keys), 0, $length);
    $say = dbcount( "id", "uyeler", "token='".$token."'" );
    } while( $say > 1 );
    return $token;
    }
    # password encoder
    function create_password($password='') {
    // ($password-length * 5) times
    $times = strlen($password) * 18;
    $pass = $password;
    for( $i=0; $i<=$times; $i++ ) {
    $pass = md5($pass);
    }
    return $pass;
    }




  • quote:

    Orijinalden alıntı: sekomeko35

    Kodlarımı Paylaşmak İstedim.

    sayfama include ediyorum asagıdaki kodları.

    Cookie Kullanılmış Acaba Session Yerine $_COOKIE mi Kullanılmalı ?



    <?php 

    @ob_start(); @session_start();



    $mysql_data = array(
    "host" => "localhost",
    "name" => "veritabanim",
    "user" => "root",
    "pass" => "",
    );

    $php_version = (int) phpversion();

    if( $php_version >= 5 ) {
    $db = @new mysqli($mysql_data["host"], $mysql_data["user"], $mysql_data["pass"], $mysql_data["name"]);

    if( $db->connect_errno ) {

    die( $db->connect_error );
    }
    } else {
    header("Content-type:text/html;charset=ISO-8859-9");

    die("Artık PHP5 kullanıyoruz! Yenilikçi ol, sistemini güncelle :)");
    }


    $cookie_id = "uyekontrolid";

    if( isset($_COOKIE[$cookie_id]) && dbcount("id", "uyeler", "token=".dbexport($_COOKIE[$cookie_id])) ) {
    $giris_yapildimi = 'evet';
    $result = dbquery("SELECT * FROM uyeler WHERE token=".dbexport($_COOKIE[$cookie_id]));
    $uyebilgi = $result->fetch_assoc();
    } else {
    $giris_yapildimi = 'hayir';
    $uyebilgi = array();
    }



    // bu bir ID mi?
    function idval($num=0, $greaterthan=0) {
    if(!is_numeric($greaterthan)) $greaterthan = 0;
    return (intval($num) > $greaterthan && is_numeric($num) ? (intval($num)==0?"0":intval($num)) : "0" );
    }
    function dbtrim($par) {
    return str_replace(array("'","\""), array("'","""), $par);
    }
    function dbuntrim($par) {
    return str_replace(array("'","""), array("'","\""), $par);
    }
    function dbexport($x='') {return var_export($x, true);}

    // query
    function dbquery($query) {
    global $db;
    $sorgu = $db->query($query);
    if( !$sorgu || $db->errno > 0 ) {
    die( $db->error );
    } else {
    return $sorgu;
    }
    }
    function dbinsert($tablo, $datalist) {
    global $db;
    if(is_array($datalist)):
    $alanlar = array_keys($datalist);
    $alan = implode(',', $alanlar);
    $veri = implode(", ",array_map('dbexport', $datalist));
    else:
    $parametreler = func_get_args();
    $tablo = array_shift($parametreler);
    $alan = $veri = null;
    $toplamParametre = count($parametreler)-1;
    foreach($parametreler as $NO => $parametre):
    $bol = explode('=', $parametre, 2);
    if($toplamParametre == $NO):
    $alan .= $bol[0];
    $veri .= dbexport($bol[1]);
    else:
    $alan .= $bol[0].',';
    $veri .= dbexport($bol[1]);
    endif;
    endforeach;
    endif;

    $sonuc = dbquery('INSERT INTO '.$tablo.' ('.$alan.') VALUES ('.$veri.')');
    if($sonuc)
    return $db->insert_id;
    else
    return "0";
    }
    function dbdelete($tablo, $kosul = null) {
    if($kosul):
    if(is_array($kosul)):
    $kosullar = array();
    foreach($kosul as $alan => $veri)
    $kosullar[] = $alan.'='.dbexport($veri);
    endif;
    return dbquery('DELETE FROM '.$tablo.' WHERE '.(is_array($kosul)?implode(' AND ',$kosullar):$kosul));
    else:
    return dbquery('TRUNCATE TABLE '.$tablo);
    endif;
    }
    function dbupdate($tablo, $deger, $kosul) {
    if(is_array($deger)):
    $degerler = array();
    foreach($deger as $alan => $veri)
    $degerler[] = $alan."=".dbexport($veri);
    endif;

    if(is_array($kosul)):
    $kosullar = array();
    foreach($kosul as $alan => $veri)
    $kosullar[] = $alan."=".dbexport($veri);
    endif;

    return dbquery('UPDATE '.$tablo.' SET '.(is_array($deger) ? implode(',',$degerler):$deger).' WHERE '.(is_array($kosul)?implode(' AND ',$kosullar):$kosul));
    }
    // dbcount('id', 'tablo', "id='".idval($id1)."'")
    function dbcount($field, $table, $conditions = "") {
    global $db;
    $cond = ($conditions ? " WHERE ".$conditions : "");
    $result = dbquery("SELECT COUNT(".$field.") as t FROM ".$table.$cond);
    if (!$result) {
    die( $db->error );
    return false;
    } else {
    $rows = $result->fetch_array(MYSQLI_NUM);
    return $rows[0];
    }
    }
    function create_token($length=11) {
    /*for($i=0; $i < $length; $i++) {
    $key .= $keys[array_rand($keys)];
    }
    return $key;*/
    $keys = implode('', array_merge(range('A', 'Z'), range(0,9), range('a', 'z')));
    do {
    $token = substr(str_shuffle($keys), 0, $length);
    $say = dbcount( "id", "uyeler", "token='".$token."'" );
    } while( $say > 1 );
    return $token;
    }
    # password encoder
    function create_password($password='') {
    // ($password-length * 5) times
    $times = strlen($password) * 18;
    $pass = $password;
    for( $i=0; $i<=$times; $i++ ) {
    $pass = md5($pass);
    }
    return $pass;
    }


    Kodları incelemedim ama tabiki cookie kullanıldıysa cookie'den çekmeniz lazım bilgileri.




  • cookie ile nasıl çekiliyor acaba session gibimi yoksa ayrı bir kodlamı?
  • Aynı şekilde sadece $_SESSION yerine $_COOKIE kullanıyorsunuz.
  • $id = $_COOKIE["id"];
    $sorgu = "select * from uyeler where id='$id' ";
    $kayit=mysql_query($sorgu);
    $yaz=mysql_fetch_array($kayit);

    echo $yaz["ad"];

    şeklinde yapıyorum fakat olmuyor.

    üstte bir kod daha var. <?=$uyebilgi["ad"];?> <?=$uyebilgi["soyad"];?>

    bu üye bilgilerini getiriyor.

    fakat ben bu kodu kullanarak veritabanına eklemeye çalıştığımda


    $uyebilgi["ad"];
    $sorgu=mysql_query("insert into aciklama set ad='$uyebilgi'");

    veritabanına Array olarak ekliyor.veritabanında Array yazıyor ad kısmında.

    nasıl yapabilirim ?
  • * Hocam öncelikle yukarıdaki arkadaşta belirtmiş ama sanırım okumadınız. Insert sorgusunda "set" kullanılmaz.
    *Eklemek istediğiniz şey array o yüzden array olarak kaydetmesi normal.Siz bu array içerisinde işinize yarayacak kısmı yazacaksınız.

    Sorguda sanırım ad olarak ekleyeceksini bunun içinde sql sorgusunda $uye_bilgi["ad"] yazmanız lazım. Ancak array içindede tırnak kullanımı sql sorgusunda sizi biraz uğraştırabilir. O yüzden;

    $ad = $uye_bilgi["ad"];

    diye bir değişkene atayın ve sql sorgusunda bu değişkeni kullanın. Kolay gelsin.



    < Bu mesaj bu kişi tarafından değiştirildi sdagli7 -- 24 Kasım 2013; 18:05:05 >
  • hocam sağolun ya yaptım sonunda Allah razı olsun.

    ya jquery öğrenmeye başlayınca phpde geride kaldım unuttum.

    sağolun çözdüm sayenizde.insert into set kullanarak yaptım oldu.fakat siz set kullanılmasını neden uygun görmüyorsunuz?
  • Bu benim uygun görmediğim birşey değil genel standart böyledir. Ayrıca set yazmanıza rağmen o sorgu nasıl çalışıyor hala anlayabilmiş değilim. set sadece update sorgularında kullanılır.



    < Bu mesaj bu kişi tarafından değiştirildi sdagli7 -- 24 Kasım 2013; 18:25:06 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.