• 28-03-2018, 22:42:51
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    merhaba arkadaşlar ben erbilen arkadaşın yazmış oldupu BasicDB sınıfını kullanıyorum
    normalde insert kullanımı aşağıdaki gibi
    BasicDB.php de insert kısmını değiştirmek lazım ama nasıl bir yapı yapmalıyım değişken kabul etmesi için?
    <?php
    
    
    // class file
    require 'BasicDB.php';
    
    
    // connection
    $db = new BasicDB('localhost', 'testdb', 'testuser', 'password');
    
    
    // insert
    $query = $db->insert('users')
    ->set(array(
    username => 'test user',
    password => 123456,
    email => 'test@mail.com'
    ));
    
    
    if ( $query ){
    echo 'Last Insert Id: '.$db->lastId();
    }
    
    
    ?>
    ben istiyorum ki dizi depolayan değişkenimi eklemek istedim ama yapamadım

     
    <?php
    
    
    // class file
    require 'BasicDB.php';
    
    
    // connection
    $db = new BasicDB('localhost', 'testdb', 'testuser', 'password');
    
    
    // insert
    $query = $db->insert('users')
    ->set($veriler);
    
    
    if ( $query ){
    echo 'Last Insert Id: '.$db->lastId();
    }
    
    
    ?>
  • 28-03-2018, 23:28:01
    #2
    <?php
     
     
    // class file
    require 'BasicDB.php';
     
     
    // connection
    $db = new BasicDB('localhost', 'testdb', 'testuser', 'password');
     
    $veriler = array(
      'birinci' => 'data1',
      'ikinci' => 'data2',
      'ucuncu' => 'data3'
    );
    // insert
    $query = $db->insert('users')
    ->set($veriler);
     
     
    if ( $query ){
    echo 'Last Insert Id: '.$db->lastId();
    }
     
     
    ?>
  • 28-03-2018, 23:55:57
    #3
    OzgunWeb adlı üyeden alıntı: mesajı görüntüle
    <?php
     
     
    // class file
    require 'BasicDB.php';
     
     
    // connection
    $db = new BasicDB('localhost', 'testdb', 'testuser', 'password');
     
    $veriler = array(
      'birinci' => 'data1',
      'ikinci' => 'data2',
      'ucuncu' => 'data3'
    );
    // insert
    $query = $db->insert('users')
    ->set($veriler);
     
     
    if ( $query ){
    echo 'Last Insert Id: '.$db->lastId();
    }
     
     
    ?>
    hocam o şekilde denedim olmadı birinci,ikinci,ıcuncu tek tırnaklardan dolayı kabul etmiyor. birde ben formdan gelen verileri Array ( [adsoyad] => 'erdal' [email] => 'erdal@erdal.net' ) çeklinde alıyorum
    $veriler = array(
      'birinci' => 'data1',
      'ikinci' => 'data2',
      'ucuncu' => 'data3'
    );
    aslında istediğim tarzda https://github.com/fatihgol/pdo-database-class-v2/blob/master/class.database.php burda sınıfı yazılmış aşağıdaki kodu erbilenin BasicDB uyarlıyamadım
    $results = $this->connection->prepare($sql); ve return $this->connection->lastInsertId($table); satırlarında connection kısımlarını ne ile değiştireceğim bilemedim
    public function insert($table, $array)
    {
    
    
    $columns = implode(", ", array_keys($array));
    $values = array_values($array);
    $valCount = count($values);
    $str = '?';
    $str .= str_repeat(", ?", $valCount-1);
    
    
    
    
    $sql = "INSERT INTO ".$table."(".$columns.") VALUES (".$str.")";
    $results = $this->connection->prepare($sql);
    
    
    try {
    
    
    $results->execute($values);
    return $this->connection->lastInsertId($table);
    
    
    } catch(PDOException $e) {
    
    
    return "Sorgu Hatası : " . $e->getMessage() . "</br>";
    }
    }
  • 29-03-2018, 00:13:41
    #4
    Hocam, array'lar şu satırlarda convert ediliyor SQL formatı için.

    $columns = implode(", ", array_keys($array));
    $values = array_values($array);
    $valCount = count($values);
    $str = '?';
    $str .= str_repeat(", ?", $valCount-1);
    Buradan düzenleme yaparsanız istediğiniz gibi parametre dönderebilirsiniz.
  • 29-03-2018, 00:25:15
    #5
    OzgunWeb adlı üyeden alıntı: mesajı görüntüle
    Hocam, array'lar şu satırlarda convert ediliyor SQL formatı için.

    $columns = implode(", ", array_keys($array));
    $values = array_values($array);
    $valCount = count($values);
    $str = '?';
    $str .= str_repeat(", ?", $valCount-1);
    Buradan düzenleme yaparsanız istediğiniz gibi parametre dönderebilirsiniz.
    hocam normalde erbileninin insert fonksiyonu farklı aşağıda verdiğim insert fonksiyonu Burdaki sınıftan aldım fatihgol diye bir arkadaşa ait bunu erbilenin sınıfına dahil edemedim
    public function insert($table, $array)
    {
     
     
    $columns = implode(", ", array_keys($array));
    $values = array_values($array);
    $valCount = count($values);
    $str = '?';
    $str .= str_repeat(", ?", $valCount-1);
     
     
     
     
    $sql = "INSERT INTO ".$table."(".$columns.") VALUES (".$str.")";
    $results = $this->connection->prepare($sql);
     
     
    try {
     
     
    $results->execute($values);
    return $this->connection->lastInsertId($table);
     
     
    } catch(PDOException $e) {
     
     
    return "Sorgu Hatası : " . $e->getMessage() . "</br>";
    }
    }
  • 29-03-2018, 00:50:11
    #6
    Hocam tek tırnak ile olduğunda aldığınız hatayı iletebilir misiniz ? Skype varsada yardımcı olurum. Skype: ozgunlive@gmail.com

    Konya adlı üyeden alıntı: mesajı görüntüle
    hocam normalde erbileninin insert fonksiyonu farklı aşağıda verdiğim insert fonksiyonu Burdaki sınıftan aldım fatihgol diye bir arkadaşa ait bunu erbilenin sınıfına dahil edemedim
    public function insert($table, $array)
    {
     
     
    $columns = implode(", ", array_keys($array));
    $values = array_values($array);
    $valCount = count($values);
    $str = '?';
    $str .= str_repeat(", ?", $valCount-1);
     
     
     
     
    $sql = "INSERT INTO ".$table."(".$columns.") VALUES (".$str.")";
    $results = $this->connection->prepare($sql);
     
     
    try {
     
     
    $results->execute($values);
    return $this->connection->lastInsertId($table);
     
     
    } catch(PDOException $e) {
     
     
    return "Sorgu Hatası : " . $e->getMessage() . "</br>";
    }
    }
  • 02-04-2018, 04:37:25
    #7
    r10'dan bir arkadasımızın yazdıgı bir pdo sınıfı vardı.
    Pdo işlemlerinizde onu kullanabilirsiniz.
    https://github.com/izniburak/pdox