Skip to content

irzaarivin/simPHPel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimPHPel

Adalah sebuah Libray PHP untuk melakukan CRUD (Create, Read, Update, Delete). Library ini dikhususkan untuk memudahkan programmer pemula yang baru belajar PHP dasar & OOP (Object Oriented Programming)



Getting Started


  1. Setelah anda mengekstrak file SimPHPel.zip, maka seharusnya anda mendapatkan struktur file seperti ini:
* SimPHPel
  + brain
      + core
          - Database.php
          - Auth.php
      - Config.php
  - bridge.php
  - index.php

  1. Edit file index.php :
<?php

include('bridge.php');

// Mendapatkan seluruh data di table "coba"
$result = Database::all("coba");

// Meregister user baru
$register = Auth::register("coba");

if($register) {
    echo "<script>
        alert('Ok');
        document.location.href = 'http://localhost:8080/simPHPel/';
    </script>";
}

?>
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>SimPHPel</title>
</head>

<body>

    <h1>Data Di Tabel "Coba" :</h1>
    <?php foreach ($result as $data) : ?>

        <p><?= $data['name']; ?> | <?= $data['email']; ?></p><br>

    <?php endforeach; ?>
    
    <br><br>
    
    <h1>Tambah Data Tabel "Coba" :</h1>
    <form action="" method="POST">
        <input type="text" name="name" required>
        <input type="text" name="email" required>
        <input type="password" name="password" required>
        <button type="submit">Kirim</button>
    </form>

</body>

</html>

  1. Edit file brain/Config.php untuk mengganti nama database anda :
<?php

class Config {

    // UBAH SERVER, USERNAME, PASSWORD, DAN DATABASE DARI MYSQLNYA DI PROPERTIES INI
    private static $db_server = "localhost";
    private static $db_user = "root";
    private static $db_password = "";
    private static $db_name = "nama_database_anda";

    protected static function connect() {
        $conn = mysqli_connect(self::$db_server, self::$db_user, self::$db_password, self::$db_name);
        return $conn;
    }

}

?>



SEBELUM MENJALANKAN PROGRAM :

  1. Import file coba.sql ke dalam phpmyadmin
  2. Pastikan anda mengekstrak simPHPel.zip di dalam folder project anda yang berada di dalam folder htdocs
  3. Buka folder "brain", kemudian edit file Config.php
  4. Temukan sintaks :
    private static $db_name = "usk_latihan";
  5. Ganti kata "usk_latihan" menjadi nama database anda
  6. Buat file index.php
  7. Buka tag php di baris paling atas :
    <?php ... ?>
  8. Didalam tag php, masukan script :
    include('bridge.php');
  9. Atau jika anda ingin menggunakan Magic Method CRUD ini di dalam file php anda yang lain, ikuti langkah 7 & 8
  10. File yang telah anda sisipkan script include('bridge.php'); sudah siap untuk anda gunakan semua methodnya



PERSYARATAN PROGRAM :

1. Minimal php versi 8.0.0
2. Database MySQL atau MariaDB



DOKUMENTASI PROGRAM :

Program ini sangat berkaitan dengan database. Ia berasumsi jika semua table yang telah anda buat memiliki PRIMARY KEY dengan nama "id" dan memiliki atribut AUTO_INCREMENT.

Semua method bersifat static, sehingga anda bisa memanggil method tersebut tanpa harus menginisialisasikan objek.



CARA PENGGUNAAN :

NamaClass::method(parameter);

atau

Database::all(nama_table);
Auth::register(nama_table);



DOKUMENTASI METHOD PADA CLASS Database :


1. tables()

Database::tables();

Method ini digunakan untuk melihat semua table yang telah dibuat. Method tersebut menghasilkan perintah SQL seperti ini :

SHOW TABLES;

2. all("nama_table")

Database::all("nama_table");

Method ini digunakan untuk mengambil semua data di dalam table. Method tersebut menghasilkan perintah SQL seperti ini :

SELECT * FROM nama_table

3. find("nama_table", id)

Database::find("nama_table", id);

Method ini digunakan untuk mencari data tertentu pada suatu table berdasarkan id. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM nama_table WHERE id = 'id';

4. get("nama_table", "key", "value")

Database::get("nama_table", "key", "value");

Method ini digunakan untuk mencari data tertentu pada suatu table dengan value where clause tertentu. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM nama_table WHERE key = 'value';

5. getOpt("nama_table", "key", "option", "value")

Database::getOpt("nama_table", "key", "option", "value");

Method ini digunakan untuk mencari data tertentu pada suatu table dengan where clause dan value tertentu. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM nama_table WHERE key option 'value';

6. create("nama_table")

Database::create("nama_table");

Method ini digunakan untuk menambahkan data. untuk menggunakan method ini, pastikan value dari atribut tag input anda sama dengan nama field pada database anda.


7. update("nama_table", "id")

Database::update("nama_table", "id");

Method ini digunakan untuk mengupdate data. untuk menggunakan method ini, pastikan value dari atribut tag input anda sama dengan nama field pada database anda.


8. delete("nama_table", "id")

Database::delete("nama_table", "id");

Method ini digunakan untuk menghapus data dari table tertentu dengan id. Method ini akan menghasilkan perintah SQL seperti ini :

DELETE FROM nama_table WHERE id = 'id';

9. deleteOpt("nama_table", "key", "option", "value")

Database::deleteOpt("nama_table", "key", "option", "value");

Method ini digunakan untuk menghapus data dari table tertentu dengan where clauses dan value tertentu. Method ini akan menghasilkan perintah SQL seperti ini :

DELETE FROM nama_table WHERE key option 'value';

10. innerJoin("table1", "table2", "kolom_table1", "kolom_table2")

Database::innerJoin("table1", "table2", "kolom_table1", "kolom_table2");

Method ini digunakan untuk melakukan fungsi INNER JOIN. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM table1 INNER JOIN table2 ON table1.kolom_table1 = table2.kolom_table2;

11. leftJoin("table1", "table2", "kolom_table1", "kolom_table2")

Database::leftJoin("table1", "table2", "kolom_table1", "kolom_table2");

Method ini digunakan untuk melakukan fungsi LEFT OUTER JOIN. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM table1 LEFT JOIN table2 ON table1.kolom_table1 = table2.kolom_table2;

12. rightJoin("table1", "table2", "kolom_table1", "kolom_table2")

Database::rightJoin("table1", "table2", "kolom_table1", "kolom_table2");

Method ini digunakan untuk melakukan fungsi RIGHT OUTER JOIN. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM table1 RIGHT JOIN table2 ON table1.kolom_table1 = table2.kolom_table2;

13. fullJoin("table1", "table2", "kolom_table1", "kolom_table2")

Database::fullJoin("table1", "table2", "kolom_table1", "kolom_table2");

Method ini digunakan untuk melakukan fungsi FULL OUTER JOIN. Method ini akan menghasilkan perintah SQL seperti ini :

SELECT * FROM table1 LEFT OUTER JOIN table2 ON table1.kolom_table1 = table2.kolom_table2 UNION SELECT * FROM table1 RIGHT OUTER JOIN table2 ON table1.kolom_table1 = table2.kolom_table2;




DOKUMENTASI METHOD PADA CLASS Auth :


1. register("nama_table")

Auth::register("nama_table");

Method ini digunakan untuk mendaftarkan user baru, data password akan otomatis di hash.


2. login("nama_table", "keyword")

Auth::login("nama_table", "keyword");

Method ini digunakan untuk melakukan proses Autentikasi dengan mencari data berdasarkan keyword/field tertentu.


3. logout("url")

Auth::logout("url");

Method ini digunakan untuk melakukan proses Logging Out User dan otomatis redirect ke url tertentu

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages