Sintak yang benar untuk menyertakan file koneksi. php adalah

Indonesian (Bahasa Indonesia) translation by Ike Sofia (you can also view the original English article)

Dalam tutorial ini, kita akan membuat sistem 'Shoutbox' dasar dengan PHP. Ditujukan pada pemula untuk pengembangan PHP, ini memungkinkan Anda membuat kaki Anda basah bekerja dengan database sebelum beralih ke beberapa tutorial PHP yang lebih maju di sini di NETTUTS.

pengantar

Dengan 25 tampilan beranda unik, versi ringan dan gelap, desain responsif, dan panel admin yang kuat yang memungkinkan Anda untuk menyesuaikan hampir semua aspek tema, Porto adalah pilihan tepat jika Anda ingin agar toko Anda menonjol.

Setelah tutorial, semoga Anda memiliki pemahaman yang baik tentang dasar-dasar penggunaan PHP untuk berkomunikasi dengan database untuk mengirim, meminta dan menerima informasi. Kami juga akan menyertakan penggunaan Gravatars di Shoutbox kami, menambahkan kehebatan ekstra itu!

Bagi yang belum memilikinya, saya sarankan anda membaca seri PHP From Scratch kami untuk memahami dengan tepat apa itu PHP, dan lihat beberapa sintaks dasar dan bagaimana kami menggunakan variabel.

File sumber juga dikomentari bagi mereka yang lebih memilih untuk belajar seperti itu.

Langkah 1 - Memulai

Database

Sebelum memulai, Anda seharusnya sudah memiliki setup database di server web Anda. Pastikan Anda memiliki rincian berikut ini:

  • Nama host (misalnya localhost)
  • Nama database
  • Username untuk database
  • Kata sandi

Dalam database, Anda perlu membuat tabel yang diberi nama teriakan dengan lima bidang:

  • id
  • nama
  • e-mail
  • pos
  • alamat IP

Untuk membuat ini, jalankan kode SQL berikut. Anda biasanya akan menjalankan ini dari tab SQL di phpMyAdmin.

CREATE TABLE `shouts` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(45) NOT NULL,
  `email` VARCHAR(60) NOT NULL,
  `post` TEXT NOT NULL,
  `ipaddress` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`id`)
);

Sintak yang benar untuk menyertakan file koneksi. php adalah
Sintak yang benar untuk menyertakan file koneksi. php adalah
Sintak yang benar untuk menyertakan file koneksi. php adalah

Anda harus menerima pesan "Permintaan SQL Anda berhasil dijalankan"

File

Kami membutuhkan tiga file yang dibuat untuk proyek ini:

  • index.php
  • style.css
  • db.php

Anda juga memerlukan folder dengan gambar yang dibutuhkan. Ambil ini dari file sumber.

Detail Koneksi Database

File db.php akan digunakan untuk menyimpan rincian database kami. Buka dan masukkan kode berikut:

<?php
$host = 'localhost'; //usually localhost
$username = 'root'; //your username assigned to your database
$password = 'password'; //your password assigned to your user & database
$database = 'shoutbox'; //your database name
?>

Langkah 2 - Interaksi

Jalankan file index.php Anda dengan kode berikut, mulailah dokumen kami dan beberapa bagian ke style kemudian.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Shoutbox for NETTUTS by Dan Harper</title>
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<div id="container">

  <h2>Shoutbox</h2>
  <h5><a href="http://www.danharper.me" title="Dan Harper">Dan Harper </a> : <a href="http://www.nettuts.com" title="NETTUTS - Spoonfed Coding Skills">NETTUTS</a></h5>

  <div id="boxtop" />
  <div id="content">

Membangun Koneksi

Sebelum kita bisa melakukan apapun dengan database, kita perlu terhubung dengannya. Masukkan kode berikut setelah sebelumnya. Hal ini dijelaskan di bawah ini.

<?php
$self = $_SERVER['PHP_SELF']; //the $self variable equals this file
$ipaddress = ("$_SERVER[REMOTE_ADDR]"); //the $ipaddress var equals users IP
include ('db.php'); // for db details

$connect = mysql_connect($host,$username,$password) or die('<p class="error">Unable to connect to the database server at this time.</p>');

mysql_select_db($database,$connect) or die('<p class="error">Unable to connect to the database at this time.</p>');

Dua baris pertama menggunakan fungsi PHP built-in untuk mendapatkan nama file ini, dan baris lainnya untuk mendapatkan alamat IP pengunjung. Kita akan menggunakan dua variabel nanti di tutorial.

Kami kemudian menyertakan file db.php kami sehingga kami dapat mengambil rincian database yang Anda isi. Sebagai alternatif, Anda dapat menempelkan semuanya dari db.php di sini, tapi praktiknya bagus untuk memisahkan detailnya.

$ connect menyimpan fungsi untuk menggunakan rincian database kami untuk membangun koneksi dengan server database. Jika tidak dapat terhubung, maka akan muncul pesan kesalahan dan menghentikan pemuatan halaman lainnya dengan mati ().

Finally, we connect to our database.

Apakah ada yang diajukan?

Hal berikutnya yang akan kita lakukan adalah memeriksa apakah seseorang telah mengirimkan teriakan menggunakan formulir (yang akan kita sertakan segera). Kami memeriksa dokumen POST untuk melihat apakah ada sesuatu yang telah dikirim dari formulir.

if(isset($_POST['send'])) {
    if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['post'])) {
        echo('<p class="error">You did not fill in a required field.</p>');
    } else {

Kami mulai dengan if () yang memeriksa POST kami untuk melihat apakah item yang bernama 'kirim' telah dikirim. Jika sudah kita gunakan fungsi kosong () untuk memastikan field 'name', 'email' dan 'post' terisi. Jika tidak, kita akan menampilkan error.

Jika tidak, kami melanjutkan:

$name = htmlspecialchars(mysql_real_escape_string($_POST['name'])); 
$email = htmlspecialchars(mysql_real_escape_string($_POST['email'])); 
$post = htmlspecialchars(mysql_real_escape_string($_POST['post']));

$sql = "INSERT INTO shouts SET name='$name', email='$email', post='$post', ipaddress='$ipaddress';";

    if (@mysql_query($sql)) {
        echo('<p class="success">Thanks for shouting!</p>');
    } else {
        echo('<p class="error">There was an unexpected error when submitting your shout.</p>');
    }
}
}

Pada tiga baris pertama, kami menjalankan masing-masing bidang kami (nama, email dan pos) melalui fungsi htmlspecialchars () dan mysql_real_escape_string () dan menempatkannya ke variabel mereka sendiri.

htmlspecialchars () adalah fungsi yang dirancang untuk mencegah pengguna mengirimkan kode HTML. Jika kita tidak melakukan ini, seseorang bisa memasukkan HTML ke dalam database kita yang kemudian akan dieksekusi ke pengguna lain. Ini sangat buruk jika seseorang mengirimkan kode javascript yang akan mentransfer pengunjung ke situs berbahaya!

mysql_real_escape_string () adalah fungsi yang serupa. Kecuali yang satu ini menghentikan pengguna mengirimkan kode SQL ke server. Jika kita tidak melakukan ini, seseorang bisa mengeksekusi kode untuk mencuri, mengedit atau menghapus database kita!

Dengan menggunakan detail baru kami, kami membuat query SQL untuk memasukkan shout yang dikirimkan ke database. Jika tag (), kita menjalankan Query SQL. Jika query berhasil dijalankan, dan shout ditambahkan ke database, kami menampilkan "Thanks for shouting!" pesan; Jika tidak, kita akan menampilkan sebuah kesalahan.

Mengambil Teriakan

Kami sekarang akan mengambil 8 teriakan terbaru dari database kami untuk menampilkannya ke pengguna.

$query = "SELECT * FROM `shouts` ORDER BY `id` DESC LIMIT 8;";
    
$result = @mysql_query("$query") or die('<p class="error">There was an unexpected error grabbing shouts from the database.</p>');

?><ul><?

Pada baris pertama, kami membuat kueri SQL baru untuk "Mengambil semua bidang dari tabel 'teriakan', agar mereka turun oleh 'ID'; namun hanya memberi kami 8 terbaru".

Pada baris kedua kita mengeksekusi query dan menyimpannya dalam $ result. Kita sekarang:

while ($row = mysql_fetch_array($result)) {

    $ename = stripslashes($row['name']);
    $eemail = stripslashes($row['email']);
    $epost = stripslashes($row['post']);
    
    $grav_url = "http://www.gravatar.com/avatar.php?gravatar_id=".md5(strtolower($eemail))."&size=70"; 
    
    echo('<li><div class="meta"><img src="'.$grav_url.'" alt="Gravatar" />
    <p>'.$ename.'</p></div><div class="shout"><p>'.$epost.'</p></div></li>');

}
?></ul>

Baris pertama mengatakan "Meskipun masih ada baris (hasil) di dalam $ hasil, tampilkan sebagai berikut:".

stripslashes () menghilangkan garis miring yang mysql_real_escape_string () mungkin telah dimasukkan ke dalam pengiriman.

$ grav_url menciptakan Gravatar dari setiap alamat email pengguna.

Kami kemudian mengeluarkan (echo) setiap teriakan dengan cara tertentu. Pada dasarnya menampilkan Gravatar, Name and Shout dalam daftar yang bisa kita gambarkan dengan mudah nanti.

Formulir

Langkah terakhir untuk halaman ini adalah memasukkan formulir ke bagian bawah halaman yang dapat dikirim oleh pengguna melalui pos.

<form action="<?php $self ?>" method="post">
<h2>Shout! </h2>
<div class="fname"><label for="name"><p>Name:</p></label><input name="name" type="text" cols="20" /></div>
<div class="femail"><label for="email"><p>Email:</p></label><input name="email" type="text" cols="20" /></div>
<textarea name="post" rows="5" cols="40"></textarea>
<input name="send" type="hidden" />
<p><input type="submit" value="send" /></p>
</form>

</div><!--/content-->
<div id="boxbot"></div>
</div><!--/container-->
</body>
</html>

Perhatikan bahwa kami mereferensikan variabel $ self untuk memberi tahu formulir untuk mengirimkan hasilnya; dan kami juga mengirim melalui metode POST. Di bawah formulir kami menutup setiap tag HTML yang kami buka.

Styling

Cobalah! Anda telah menyelesaikan semua kode PHP, dan Anda harus bisa menambahkan shout baru dan melihat 8 yang terbaru.

Sintak yang benar untuk menyertakan file koneksi. php adalah
Sintak yang benar untuk menyertakan file koneksi. php adalah
Sintak yang benar untuk menyertakan file koneksi. php adalah

Namun, ada satu masalah. Terlihat UGLY! Mari kita mengatasinya dengan beberapa CSS :) Dengan ini bukan tutorial CSS, saya tidak akan membahas salah satu gaya, tapi semuanya cukup mendasar.

* {
margin: 0;
padding: 0;
}

body {
background: #323f66 top center url("images/back.png") no-repeat;
color: #ffffff;
font-family: Helvetica, Arial, Verdana, sans-serif;
}

h2 {
font-size: 3.5em;
letter-spacing: -1px;
background: url("images/shoutbox.png") no-repeat;
width: 303px;
margin: 0 auto;
text-indent: -9999em;
color: #33ccff;
}

h2 {
font-size: 2em;
letter-spacing: -1px;
background: url("images/shout.png") no-repeat;
width: 119px;
text-indent: -9999em;
color: #33ccff;
clear: both;
margin: 15px 0;
}

h5 a:link, h5 a:visited {
color: #ffffff;
text-decoration: none;
}

h5 a:hover, h5 a:active, h5 a:focus {
border-bottom: 1px solid #fff;
}

p {
font-size: 0.9em;
line-height: 1.3em;
font-family: Lucida Sans Unicode, Helvetica, Arial, Verdana, sans-serif;
}

p.error {
background-color: #603131;
border: 1px solid #5c2d2d;
width: 260px;
padding: 10px;
margin-bottom: 15px;
}

p.success {
background-color: #313d60;
border: 1px solid #2d395c;
width: 260px;
padding: 10px;
margin-bottom: 15px;
}

#container {
width: 664px;
margin: 20px auto;
text-align: center;
}

  #boxtop {
	margin: 30px auto 0px;
	background: url("images/top.png") no-repeat;
	width: 663px;
	height: 23px;
	}

	
	#boxbot {
	margin: 0px auto 30px;
	background: url("images/bot.png") no-repeat;
	width: 664px;
	height: 25px;
	}

	#content {
	margin: 0 auto;
	width: 664px;
	text-align: left;
	background: url("images/bg.png") repeat-y;
	padding: 15px 35px;
	}
	
    #content ul {
    margin-left: 0;
    margin-bottom: 15px;
    }
    
    #content ul li {
    list-style: none;
    clear: both;
    padding-top: 30px;
    }
    
        #content ul li:first-child {
        padding-top:0;
        }
    
    .meta {
    width: 85px;
    text-align: left;
    float: left;
    min-height: 110px;
    font-weight: bold;
    }
    
        .meta img {
        padding: 5px;
        background-color: #313d60;
        }
        
        .meta p {
        font-size: 0.8em;
        }
    
    .shout {
    width: 500px;
    float: left;
    margin-left: 15px;
    min-height: 110px;
    padding-top: 5px;
    }
    
    form {
    clear: both;
    margin-top: 135px !important;
    }
    
        .fname, .femail {
        width: 222px;
        float: left;
        }
        
        form p {
        font-weight: bold;
        margin-bottom: 3px;
        }
        
        form textarea {
        width: 365px;
        overflow: hidden; /* removes vertical scrollbar in IE */
        }
    
        form input, form textarea {
        background-color: #313d60;
        border: 1px solid #2d395c;
        color: #ffffff;
        padding: 5px;
        font-family: Lucida Sans Unicode, Helvetica, Arial, Verdana, sans-serif;
        margin-bottom: 10px;
        }

Sintak yang benar untuk menyertakan file koneksi. php adalah
Sintak yang benar untuk menyertakan file koneksi. php adalah
Sintak yang benar untuk menyertakan file koneksi. php adalah

Kesimpulan

Jadi begitulah! Shoutbox yang tampan dan berfungsi penuh! Anda mungkin bertanya-tanya apa gunanya membuat Shoutbox, dan nah, Anda benar, tidak ada gunanya. Tapi apa yang dilakukan ini membantu memberi Anda beberapa pemahaman dasar yang penting tentang penggunaan PHP untuk bekerja dengan database, memungkinkan Anda beralih ke panduan yang jauh lebih maju di NETTUTS.

Heck, Anda bahkan bisa menggunakan kembali kode ini untuk membuat blog yang sangat mendasar! Tidak banyak yang menunjukkannya, tapi ini menyenangkan.

Penggunaan include () dan require (); pada PHP untuk apa saja?

Fungsi include() dan require() adalah suatu perintah atau fungsi di dalam pemrograman PHP untuk menyisipkan sebuah file PHP kedalam file PHP yang lainnya.

Apa itu include koneksi PHP?

Include Pada PHP. Seperti terjemahannya include berarti memasukkan, artinya kita memasukkan file kedalam dokumen kita, file tersebut bisa apa saja, termasuk script PHP, file konfigurasi, file HTML, dll.

Apa itu require PHP?

Fungsi PHP include() dan require() merupakan fungsi yang digunakan untuk menyertakan file php lain ke dalam suatu program PHP. Hal sangat yang sangat membantu proses pemrograman karena tidak perlu menulis program PHP secara berulang-ulang, cukup dalam satu file saja.