Posts Tagged ‘php’

PHP insert/update/view file BLOB di MySQL

This item was filled under [ Code Snippet, MySQL, PHP ]

Cara untuk insert/update/view (menyimpan/mengubah/menampilkan) file biner pada MySQL adalah sebagai berikut.

Struktur database MySQL contoh nya kita beri nama tabel “file_attachment”, sebagai berikut:
Copy paste pada tools MySQL Administrasi Anda, seperti phpmyadmin.

CREATE TABLE IF NOT EXISTS `file_attachment` (
  `id` bigint(20) NOT NULL auto_increment,
  `file_content` mediumblob NOT NULL,
  `file_name` varchar(255) NOT NULL,
  `file_type` varchar(255) NOT NULL,
  `file_size` bigint(20) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

Untuk Insert Script nya adalah sbb.:
Beri nama file insert_blob.php (hanya contoh).

<?php
// CONECT DATABASE
@mysql_connect("localhost", "root", "") OR die ("NOT CONNECT DATABASE");
@mysql_select_db("nama_database") OR die ("CONNECTED, BUT NO DATABASE");
 
if($_POST[submit]){
    $file_name = $_FILES['file']['name'];
    $tmp_name  = $_FILES['file']['tmp_name'];
    $file_size = $_FILES['file']['size'];
    $file_type = $_FILES['file']['type'];
    $fp = fopen($tmp_name, 'r');
    $file_content = fread($fp, $file_size) or die("Error: cannot read file");
    $file_content = mysql_real_escape_string($file_content) or die("Error: cannot read file");
    fclose($fp);
 
 
    // INSERT
    $qu = "INSERT INTO `file_attachment`
                (`file_content`,`file_name`,`file_type`,`file_size`)
                VALUES
                ('".$content."','".$file_name."','".$file_type."','".$file_size."')";
	$re = mysql_query($qu) or die ("Sorry Cant insert db!");
	echo $file_name." inserted succesfully to database";
}
echo '<form method="post" enctype="multipart/form-data">';
echo '	<input name="file" type="file">';
echo '	<input name="submit" type="submit" value="Upload">';
echo '</form>';
?>

Untuk menampilkan File dari BLOB, menggunakan 2 file, file pertama adalah sebagai berikut:
Beri nama file view_blob.php (hanya contoh).

<?php
// CONECT DATABASE
@mysql_connect("localhost", "root", "") OR die ("NOT CONNECT DATABASE");
@mysql_select_db("nama_database") OR die ("CONNECTED, BUT NO DATABASE");
 
$id = $_REQUEST['id'];
$query = "SELECT * FROM `file_attachment` WHERE `id`='".$id."' LIMIT 1";
$qu = mysql_query($query);
$num = mysql_numrows($qu);
if($num > 0) {
	$result=mysql_fetch_object($qu);
	header("Content-Disposition: attachment; filename=".jin_gfile($result->file_name.""));
	header("Content-length: ".$result->file_size."");
	header("Content-type: ".$result->file_type."");
	echo $result->file_content;
} else {
	echo "File tidak valid!";
}
?>

berikut tambahan fungsi jin_gfile, supaya nama file tidak ada karakter aneh (boleh disatukan dalam file view_blob.php).

<?php
// CLEAN FILENAME
function jin_gfile($txt) {
	$txt = preg_replace("/[^a-zA-Z0-9s.]/", "_", trim($txt));
	return $txt;
}
?>

Berikutnya file kedua untuk view, adalah sbb bergantung kebutuhan:
- Untuk File Download (file umum), kita asumsikan pada data di MySQL sudah ada id 9 yang isinya adalah file document laporan ber ekstensi .doc atau .xls

<a href="http://namadomain/view_blob.php?id=9">File Laporan Bulan Maret 2010 (klik untuk download)</a>

- Untuk menampilkan gambar, kita asumsikan pada data di MySQL sudah ada id 3 yang isinya adalah file gambar ber ekstensi .jpg, .gif atau .png

<img src="http://namadomain/view_blob.php?id=3" alt="Gambar Alumni 1996">

Catatan PENTING: jika memungkinkan disarankan untuk tidak memilih menyimpan file biner kedalam struktur storage tabel database MySQL, melainkan lebih baik menyimpan file system.

Continue reading...

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5 out of 5)
Loading ... Loading ...
Popularity: 23 views
Tagged with: [ , , , ]

Belajar PHP dan MySQL dari NOL - Part II (code dasar PHP)

This item was filled under [ General, MySQL, PHP ]

Code PHP

Ada satu konsep penting yang Anda butuhkan untuk mendapatkan pikiran Anda sekitar sebelum kita melangkah lebih jauh. Tidak seperti CGI script, yang meminta Anda untuk menulis kode untuk output HTML, PHP memungkinkan Anda embed kode PHP pada halaman HTML biasa, dan mengeksekusi kode PHP yang tertanam saat halaman diminta.

Perintah PHP tertanam ini diapit oleh khusus dalam tag awal dan akhir, seperti ini:

<?php
 
... Kode PHP ...
 
?>

Berikut adalah contoh sederhana yang menunjukkan bagaimana PHP dan HTML dapat dikombinasikan:

<html>
<head> </head>
<body>
 
Agen: Jadi, siapa yang Anda pikir Anda, bagaimanapun?
<br />
 
<?php
// Print output
echo 'Neo: Aku Neo, tapi orang-orang memanggilku Salah.';
?>
 
</body>
</html>

Anda tidak cukup tradisional “Hello, World” program … tetapi sekali lagi, aku selalu berpikir tradisi itu over-rated.
Continue reading…

Continue reading...

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...
Popularity: 1,213 views
Tagged with: [ , , , , ]

Belajar PHP dan MySQL dari NOL - Part I (pengertian, sejarah dan kelebihan)

This item was filled under [ General, MySQL, PHP ]

Pengertian PHP

PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP banyak dipakai untuk memrogram situs web dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain.

Contoh terkenal dari aplikasi PHP adalah forum (phpBB) dan MediaWiki (software di belakang Wikipedia). PHP juga dapat dilihat sebagai pilihan lain dari ASP.NET/C#/VB.NET Microsoft, ColdFusion Macromedia, JSP/Java Sun Microsystems, dan CGI/Perl. Contoh aplikasi lain yang lebih kompleks berupa CMS yang dibangun menggunakan PHP adalah Mambo, Joomla!, Postnuke, Xaraya, dan lain-lain.

Sejarah PHP

Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs Personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script yang digunakan untuk mengolah data form dari web.
Continue reading…

Continue reading...

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5 out of 5)
Loading ... Loading ...
Popularity: 2,326 views

Mengambil alamat address web url full beserta variabel

This item was filled under [ Code Snippet, PHP ]

Masalah:

Seringkali jika kita ke website halaman yang harus login, maka kita harus login terlebih dahulu untuk melihat isi konten tersebut, akan tetapi kita ingin supaya setelah login redirect ke halaman konten tadi.

Solusi:

kita butuhkan script untuk mengambil alamat url full lengkap beserta variabel-varibel nya, untuk disispkan pada hidden text yang isinya adalah alamat full url pada form login Anda, yang nantinya akan diredirect pada alamat web tersebut yaitu dengan cara memanggil php script berikut:

// Fungsi Ambil Full Web Address Beserta Variabel2nya
function jin_get_address() { 
	$s = empty($_SERVER["HTTPS"]) ? '' : ($_SERVER["HTTPS"] == "on") ? "s" : ""; 
	$protocol = strleft(strtolower($_SERVER["SERVER_PROTOCOL"]), "/").$s; 
	$port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]); 
	return $protocol."://".$_SERVER['SERVER_NAME'].$port.$_SERVER['REQUEST_URI']; 
}
 
function strleft($s1, $s2) { 
	return substr($s1, 0, strpos($s1, $s2)); 
}

UPDATE:
tambahan fungsi strleft, terimkasih kepada Adi Suwarso atas koreksinya :mrgreen:

Continue reading...

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5 out of 5)
Loading ... Loading ...
Popularity: 9,857 views
Tagged with: [ , , , , , ]

Fungsi set cookie dan remove cookie dengan mudah

This item was filled under [ Code Snippet, PHP ]

Berikut adalah salah satu fungsi untuk men-set cookie dan menghapus cookie.

$cookie_folder = "/"; // contoh path cookie, sebaiknya variable ini disimpan pada file config, agar mudah diubah sesui kebutuhan.
 
function jin_set_cookie($field, $value) {
	global $cookie_folder;
	header("Content-Type: text/html; charset=utf-8");
	setcookie($field, $value, time() + 604800, $cookie_folder);
}
function jin_del_cookie($field) {
	setcookie($field, "", time() - 604800, "");
}

Penggunaan menyimpan cookie:

jin_set_cookie("setup_warna", "biru");
jin_set_cookie("setup_chat", "off");

Penggunaan menghapus cookie:

jin_del_cookie("setup_warna");
jin_del_cookie("setup_chat");

Keterangan:

604800 = 1 Minggu, cookie akan menyimpan selama 1 minggu pada browser client selama tidak menghapus nya

Continue reading...

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5 out of 5)
Loading ... Loading ...
Popularity: 546 views
Tagged with: [ , ]
Page 1 of 612345next »...Last »

Halaman ini di eksekusi dalam waktu 0.959 detik! (koneksi mayan kenceng nih...)