Menjalankan PHP dalam PHP (eval)

Posted on Updated on

Dalam pemrograman PHP, terdapat fungsi khusus untuk meng-eksekusi perintah PHP di dalam file PHP. Fungsi ini bernama eval. Jika anda masih bingung, biasanya tehnik ini diterapkan pada Web Shell. Untuk memudahkan user dalam menjalankan kode PHP, tanpa membuat ulang file PHP tersebut.

Input untuk eval itu sendiri dapat kita masukan langsung dalam file PHP, ataupun dari form HTML. Kegunaan fungsi ini adalah merubah input yang awalnya berupa String (huruf), menjadi script PHP yang akan diproses. Hal ini sangat diperlukan jika ingin meng-eksekusi PHP melalui form.

Berikut contoh sederhana dari form HTML untuk input PHP tersebut. Simpan dengan extensi HTML.

<html>
<head>
	<title>PHP Tag Script</title>
</head>
<body>
	<center><font face="calibri">
<h1>Enter Your PHP Script</h1>

<hr color="blue" width="50%">

<form action="aksi.php" method="post">
		<!--<input type="text" name="input">
-->
<p style="text-align:center;">
		<textarea style="padding: 3px; width: 500px; height: 200px;" name="input"></textarea>

<input type="submit" value="Execute!">
	</form>
Copyright @ www.almansyurin.web.id
</body>
</html>

Dari form tersebut, kita akan membutuhkan file PHP lagi yang akan memprosesnya.

<html>
<head>
	<title>PHP Tag Script</title>
</head>
<body>
	<center><font face=calibri>
<h1>PHP Result Here</h1>

<hr color=blue width=50%>

<?php
		$script = (string)$_POST['input'];
		$code = $script . ';';

		eval($code);
	?>



<font size=2>
	<b><u>Real Code Here :</u></b></font>

<hr color=red width=50%>

<?php
		echo $script;
	?>

Copyright @ www.almansyurin.web.id
<a href=input.php>[back]</a>
</body>
</html>

Simpan file PHP di atas dengan nama aksi.php, dan letakan pada directory web server yang sama.

Lewat form tersebut, anda dapat mengeksekusi syntax PHP apapun. Misalnya fungsi phpinfo() yang akan menampilkan informasi dari PHP.

Iklan

9 thoughts on “Menjalankan PHP dalam PHP (eval)

    sepraha said:
    19 Januari 2012 pukul 9:49 PM

    ka kalo buat liat hasilnya gimana??

      Pudja Mansyurin said:
      24 Januari 2012 pukul 4:09 PM

      Fungsi “eval()” kan digunakan untuk meng-eksekusi programnya,
      Nah, untuk menampilkanya pada web browser, gunakan fungsi “echo()”,

      Semoga bisa membantu,

        sepraha said:
        28 Februari 2012 pukul 7:44 AM

        makasih ka 😀

    sepraha said:
    28 Februari 2012 pukul 11:27 AM

    itu yang nampilinnya beda halaman lagi atau sama ka??

      Pudja Mansyurin said:
      29 Februari 2012 pukul 5:03 PM

      untuk script di atas, itu nampilin outputnya dalam halaman aksi.php gan, 😀

    sepraha said:
    29 Februari 2012 pukul 9:04 PM

    kalo emang di aksi terus yang echo $script; buat apa ka?#maaf ka banyak nanya penasaran sama fungsi ini

    sepraha said:
    29 Februari 2012 pukul 9:05 PM

    eh maaf ka hehe, baru ngeh emang itu aksi hehe maaf” ka 😀 makasih ka 😀

    sepraha said:
    4 April 2012 pukul 6:19 AM

    ka, itu bisa masukin query, nah biar query gak bisa di eksekusi harus diapain ya ka?

      Pudja Mansyurin responded:
      26 November 2016 pukul 10:00 PM

      php eval bisa dimatikan dari konfigurasi php.ini neng

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s