Tidak bisa insert ke database (mengikuti video sistem login dan register (oop php) - metode insert)

Saya mengikuti video php register dan login (oop) bagian metodi insert. Namun saya tidak berhasil memasukkan data ke dalam database. Tidak ada tulisan error. Saat ditampilkan dengan fungsi die muncul: <a href=' https://www.dropbox.com/s/scsk6p91etutq97/Screen%20Shot%202019-02-18%20at%2000.28.25.png?dl=0 '> https://www.dropbox.com/s/scsk6p91etutq97/Screen%20Shot%202019-02-18%20at%2000.28.25.png?dl=0 </a>

Namun saat database di refresh datanya tidak tersimpan : <a href=' https://www.dropbox.com/s/0ojefxtyyb9uzu8/Screen%20Shot%202019-02-18%20at%2000.28.39.png?dl=0 '> https://www.dropbox.com/s/0ojefxtyyb9uzu8/Screen%20Shot%202019-02-18%20at%2000.28.39.png?dl=0 </a>

Database.php :

<?php

class Database{

     private static $INSTANCE = null;
     private $mysqli,
             $HOST = 'localhost',
             $USER = 'root',
             $PASS = 'root',
             $DBNAME = 'tutorial_oop';

  public function __construct()
  {
    $this->mysqli = new mysqli( $this->HOST, $this->USER, $this->PASS, $this->DBNAME );
    if( mysqli_connect_error() ){
      die('gagal koneksinya');
    }
  }
    /*
    single pattern,
    menguji koneksi agar tidak double
    */
   public static function getInstance()
  {
    if( !isset( self::$INSTANCE ) ){
      self::$INSTANCE = new Database();
    }

    return self::$INSTANCE;
  }

  public function insert($table, $fields = array())
  {
    //mengambil kolom
    $column = implode(", ", array_keys($fields));

    //mengambil nilai
    $valueArrays = array();
    $i = 0;
    foreach($fields as $key=>$values){
        if ( is_int($values) ){
            $valueArrays[$i] = $values;
        }else{
            $valueArrays[$i] = "'" . $values . "'";
        }

        $i++;
    }

    $values = implode(", ", $valueArrays);

    $query = "INSERT INTO $table ($column) VALUES ($values)";

    die($query);

    if($this->mysqli->query($query)) return true;
    else return false;
  }
}

User.php:

<?php

class User{
    private $_db;

    public function __construct()
    {
        $this->_db = Database::getInstance();
    }

    public function register_user($fields = array())
    {
       if( $this->_db->insert('users', $fields) ) return true;
       else return false;
    }

}
?>

register.php :


<?php
    require_once 'core/init.php';

    if( Input::get('submit') ){

        $user->register_user(array(
            'usename' => Input::get('username'),
            'password' => password_hash(Input::get('password'), PASSWORD_DEFAULT)
        ));
    }

    require_once 'templates/header.php';
?>
<h2>Register now!</h2>

<form action="register.php" method="post">
<label>Username</label>
<input type="text" name="username"><br>

<label>Password</label>
<input type="password" name="password"><br>

<input type="submit" name="submit" value="Register Now!">

</form>
<?php require_once 'templates/footer.php'; ?>

-- phpMyAdmin SQL Dump
-- version 4.8.3
-- https://www.phpmyadmin.net/
--
-- Host: localhost:8889
-- Generation Time: Feb 16, 2019 at 11:50 AM
-- Server version: 5.7.23
-- PHP Version: 7.2.10

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";

--
-- Database: `tutorial_oop`
--

-- --------------------------------------------------------

--
-- Table structure for table `users`
--

CREATE TABLE `users` (
  `id` int(11) NOT NULL,
  `username` varchar(50) NOT NULL,
  `password` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Indexes for dumped tables
--

--
-- Indexes for table `users`
--
ALTER TABLE `users`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `users`
--
ALTER TABLE `users`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;

Terima kasih sebelumnya

avatar ahmadalexanderr
@ahmadalexanderr

2 Kontribusi 0 Poin

Diperbarui 5 tahun yang lalu

Tanggapan

coba baca aturan main ya, untuk bertnaya yang lebih rapi. bungkus kode di dalam "tag kode", tuliskan tidak bisanya apa, apakah ada error, atau apa yang terjadi (silahkan diedit pertanyannya)

tidak bisanya apanya gan, ada errorkah, tulisan yang muncul apa, apa yang terjadi

1 Jawaban:

username bukan usename <pre> $user-&gt;register_user(array( //'usename' =&gt; Input::get('username'), 'username' =&gt; Input::get('username'), 'password' =&gt; password_hash(Input::get('password'), PASSWORD_DEFAULT) )); </pre>

avatar dianarifr
@dianarifr

642 Kontribusi 316 Poin

Dipost 5 tahun yang lalu

Tanggapan

terima kasih sudah saya koreksi, namun data masih belum bisa masuk...

Login untuk ikut Jawaban