free hit counter

Source Code Penjualan Online Php Sehederhana Dan Database Nya

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Perkembangan teknologi digital telah mendorong pesatnya pertumbuhan bisnis online. Membangun toko online sendiri, meskipun terlihat rumit, kini bisa diakses oleh siapa pun dengan pengetahuan pemrograman dasar. Artikel ini akan memandu Anda langkah demi langkah dalam membangun sistem penjualan online sederhana menggunakan PHP dan MySQL sebagai basis datanya. Kita akan fokus pada fungsionalitas inti, seperti menampilkan produk, menambahkan ke keranjang belanja, dan melakukan proses checkout (tanpa integrasi pembayaran gateway). Tujuannya adalah memberikan pemahaman yang kuat tentang arsitektur dan logika di balik sistem e-commerce sederhana.

I. Perencanaan dan Desain Database

Sebelum memulai pengkodean, kita perlu merencanakan struktur database yang akan menyimpan informasi produk, pengguna, dan transaksi. Kita akan menggunakan MySQL sebagai sistem manajemen basis data relasional (RDBMS). Berikut skema database yang akan kita gunakan:

Tabel: produk

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Kolom Tipe Data Keterangan
id_produk INT(11) ID produk (primary key, auto-increment)
nama_produk VARCHAR(255) Nama produk
deskripsi TEXT Deskripsi produk
harga DECIMAL(10,2) Harga produk
stok INT(11) Stok produk
gambar VARCHAR(255) Nama file gambar produk

Tabel: users

Kolom Tipe Data Keterangan
id_user INT(11) ID pengguna (primary key, auto-increment)
username VARCHAR(50) Username pengguna
password VARCHAR(255) Password pengguna (gunakan hashing!)
nama VARCHAR(255) Nama lengkap pengguna
email VARCHAR(255) Email pengguna

Tabel: keranjang

Kolom Tipe Data Keterangan
id_keranjang INT(11) ID keranjang (primary key, auto-increment)
id_user INT(11) ID pengguna
id_produk INT(11) ID produk
jumlah INT(11) Jumlah produk dalam keranjang

Tabel: transaksi

Kolom Tipe Data Keterangan
id_transaksi INT(11) ID transaksi (primary key, auto-increment)
id_user INT(11) ID pengguna
tanggal DATETIME Tanggal transaksi
total_harga DECIMAL(10,2) Total harga transaksi

II. Pengkodean PHP

Berikut contoh kode PHP sederhana untuk menampilkan produk dari database:

<?php
// Koneksi ke database
$servername = "localhost";
$username = "username_anda";
$password = "password_anda";
$dbname = "nama_database_anda";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) 
  die("Connection failed: " . $conn->connect_error);


// Query untuk mengambil data produk
$sql = "SELECT * FROM produk";
$result = $conn->query($sql);

if ($result->num_rows > 0) 
  while($row = $result->fetch_assoc()) 
    echo "<div>";
    echo "<h3>" . $row["nama_produk"] . "</h3>";
    echo "<p>" . $row["deskripsi"] . "</p>";
    echo "<p>Harga: Rp " . $row["harga"] . "</p>";
    echo "<img src='gambar/" . $row["gambar"] . "' alt='" . $row["nama_produk"] . "' width='200'>"; // Pastikan folder gambar ada
    echo "<form method='post' action='add_to_cart.php'>";
    echo "<input type='hidden' name='id_produk' value='" . $row["id_produk"] . "'>";
    echo "<input type='number' name='jumlah' value='1' min='1'>";
    echo "<input type='submit' value='Tambahkan ke Keranjang'>";
    echo "</form>";
    echo "</div>";
  
 else 
  echo "0 results";


$conn->close();
?>

Kode di atas menampilkan daftar produk dengan gambar, deskripsi, dan harga. Terdapat form sederhana untuk menambahkan produk ke keranjang belanja. add_to_cart.php adalah file terpisah yang akan memproses penambahan produk ke keranjang.

III. Menangani Keranjang Belanja (add_to_cart.php)

File add_to_cart.php akan menangani penambahan produk ke keranjang belanja. Kode berikut menunjukkan contoh sederhana:

<?php
// Koneksi ke database (sama seperti sebelumnya)

if(isset($_POST['id_produk']) && isset($_POST['jumlah']))
    $id_produk = $_POST['id_produk'];
    $jumlah = $_POST['jumlah'];
    $id_user = 1; // Ganti dengan sistem login yang sebenarnya

    // Periksa apakah produk sudah ada di keranjang
    $sql = "SELECT * FROM keranjang WHERE id_user = $id_user AND id_produk = $id_produk";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) 
        // Update jumlah
        $row = $result->fetch_assoc();
        $new_jumlah = $row['jumlah'] + $jumlah;
        $sql = "UPDATE keranjang SET jumlah = $new_jumlah WHERE id_user = $id_user AND id_produk = $id_produk";
     else 
        // Tambahkan ke keranjang
        $sql = "INSERT INTO keranjang (id_user, id_produk, jumlah) VALUES ($id_user, $id_produk, $jumlah)";
    

    if ($conn->query($sql) === TRUE) 
        echo "Produk berhasil ditambahkan ke keranjang!";
     else 
        echo "Error: " . $sql . "<br>" . $conn->error;
    


$conn->close();
?>

Kode ini memeriksa apakah produk sudah ada di keranjang. Jika iya, maka jumlahnya diupdate. Jika tidak, maka produk ditambahkan ke tabel keranjang. Ingat untuk mengganti $id_user = 1 dengan sistem login yang terintegrasi.

IV. Menampilkan Keranjang Belanja (cart.php)

Berikut contoh kode untuk menampilkan isi keranjang belanja:

<?php
// Koneksi ke database (sama seperti sebelumnya)
$id_user = 1; // Ganti dengan sistem login yang sebenarnya

$sql = "SELECT k.id_keranjang, p.nama_produk, p.harga, k.jumlah, (p.harga * k.jumlah) AS total_harga_item FROM keranjang k JOIN produk p ON k.id_produk = p.id_produk WHERE k.id_user = $id_user";
$result = $conn->query($sql);

if ($result->num_rows > 0) 
    echo "<table><tr><th>Nama Produk</th><th>Harga</th><th>Jumlah</th><th>Total Harga</th></tr>";
    $total_harga = 0;
    while($row = $result->fetch_assoc()) 
        echo "<tr><td>" . $row["nama_produk"] . "</td><td>" . $row["harga"] . "</td><td>" . $row["jumlah"] . "</td><td>" . $row["total_harga_item"] . "</td></tr>";
        $total_harga += $row["total_harga_item"];
    
    echo "</table>";
    echo "<p>Total Harga: " . $total_harga . "</p>";
 else 
    echo "Keranjang belanja kosong.";


$conn->close();
?>

Kode ini menampilkan daftar produk di keranjang beserta total harganya.

V. Proses Checkout (Sederhana)

Proses checkout yang sederhana hanya akan menyimpan data transaksi ke tabel transaksi. Integrasi dengan gateway pembayaran membutuhkan pengetahuan tambahan dan berada di luar cakupan artikel ini.

<?php
// ... (koneksi ke database) ...

// Ambil data dari keranjang
// ... (query untuk mengambil data dari keranjang berdasarkan id_user) ...

// Simpan data transaksi ke tabel transaksi
$total_harga = 0; // Hitung total harga dari keranjang
$id_user = 1; // Ganti dengan sistem login yang sebenarnya
$sql = "INSERT INTO transaksi (id_user, tanggal, total_harga) VALUES ($id_user, NOW(), $total_harga)";

if ($conn->query($sql) === TRUE) 
    // Kosongkan keranjang setelah transaksi berhasil
    $sql = "DELETE FROM keranjang WHERE id_user = $id_user";
    $conn->query($sql);
    echo "Transaksi berhasil!";
 else 
    echo "Error: " . $sql . "<br>" . $conn->error;


$conn->close();
?>

VI. Kesimpulan

Artikel ini memberikan gambaran dasar tentang membangun sistem penjualan online sederhana menggunakan PHP dan MySQL. Sistem ini masih sangat sederhana dan membutuhkan pengembangan lebih lanjut untuk menjadi sistem e-commerce yang fungsional dan handal. Fitur-fitur seperti sistem login yang aman, integrasi gateway pembayaran, manajemen pengguna yang lebih kompleks, dan fitur-fitur tambahan lainnya perlu ditambahkan untuk meningkatkan fungsionalitas dan keamanan sistem. Namun, pemahaman dasar yang diberikan dalam artikel ini akan menjadi pondasi yang kuat untuk membangun sistem e-commerce yang lebih kompleks di masa mendatang. Ingat selalu untuk memprioritaskan keamanan data dan menerapkan praktik pengkodean yang baik.

Membangun Sistem Penjualan Online Sederhana dengan PHP dan MySQL: Panduan Lengkap dari Nol

Artikel Terkait

Leave a Reply

Your email address will not be published. Required fields are marked *

Main Menu