Wednesday, November 16, 2016

Install PHP 5 (5.4, 5.5, 5.6) dan PHP 7 di Linux

  No comments

Install PHP 5 (5.4, 5.5, 5.6) and PHP 7 on Linux


Via PPA

Install PHP 5.4 On linux (Debian, Ubuntu, Mint ...)

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php5-oldstable
sudo apt-get update
sudo apt-get install -y php5
NOTE:
If you have this message add-apt-repository: command not found
run : apt-get install software-properties-common

Install PHP 5.5

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php5.5

Install PHP 5.6 On linux (Debian, Ubuntu, Mint ...)

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php5.6

Install PHP 7 On linux (Debian, Ubuntu, Mint ...)

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php7.0

Check Installed PHP Version

php -v

Install PHP 5.6 Modules

Show available PHP Modules list
sudo apt-cache search php5.6-* 

Install modules which is required for you.
Example PHP 5.6:
sudo apt-get install libapache2-mod-php5.6 php5.6-cgi php5.6-cli php5.6-curl php5.6-imap php5.6-gd php5.6-mysql php5.6-pgsql php5.6-sqlite3 php5.6-mbstring php5.6-json php5.6-bz2 php5.6-mcrypt php5.6-xmlrpc php5.6-gmp php5.6-xsl php5.6-soap php5.6-xml php5.6-zip php5.6-dba

Example PHP 7:
sudo apt-get install libapache2-mod-php7.0 php7.0-common php7.0-mysql php7.0-curl php7.0-json php7.0-cgi php7.0-gd

PHP 5.6 Modules list (Example)
php-amqp - AMQP extension for PHP
php-apcu - APC User Cache for PHP
php-geoip - GeoIP module for PHP
php-igbinary - igbinary PHP serializer
php-imagick - Provides a wrapper to the ImageMagick library
php-mongodb - MongoDB driver for PHP
php-msgpack - PHP extension for interfacing with MessagePack
php-oauth - OAuth 1.0 consumer and provider extension
php-redis - PHP extension for interfacing with Redis
php-rrd - PHP bindings to rrd tool system
php-smbclient - PHP wrapper for libsmbclient
php-solr - PHP extension for communicating with Apache Solr server
php-ssh2 - Bindings for the libssh2 library
php-uuid - PHP UUID extension
php-yac - YAC (Yet Another Cache) for PHP
php-zmq - ZeroMQ messaging bindings for PHP
php-radius - radius client library for PHP
php-http - PECL HTTP module for PHP Extended HTTP Support
php-uploadprogress - file upload progress tracking extension for PHP
libapache2-mod-php5.6 - server-side, HTML-embedded scripting language (Apache 2 module)
php5.6-cgi - server-side, HTML-embedded scripting language (CGI binary)
php5.6-cli - command-line interpreter for the PHP scripting language
php5.6-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php5.6-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
libphp5.6-embed - HTML-embedded scripting language (Embedded SAPI library)
php5.6-dev - Files for PHP5.6 module development
php5.6-common - documentation, examples and common module for PHP
php5.6 - server-side, HTML-embedded scripting language (metapackage)
php5.6-curl - CURL module for PHP
php5.6-gd - GD module for PHP
php5.6-imap - IMAP module for PHP
php5.6-intl - Internationalisation module for PHP
php5.6-ldap - LDAP module for PHP
php5.6-mysql - MySQL module for PHP
php5.6-pgsql - PostgreSQL module for PHP
php5.6-pspell - pspell module for PHP
php5.6-recode - recode module for PHP
php5.6-snmp - SNMP module for PHP
php5.6-sqlite3 - SQLite3 module for PHP
php5.6-sybase - Sybase module for PHP
php5.6-tidy - tidy module for PHP
php5.6-opcache - Zend OpCache module for PHP
php-xdebug - Xdebug Module for PHP
php5.6-json - JSON module for PHP
php-memcached - memcached extension module for PHP, uses libmemcached
php5.6-bz2 - bzip2 module for PHP
php5.6-mcrypt - libmcrypt module for PHP
php5.6-odbc - ODBC module for PHP
php5.6-readline - readline module for PHP
php5.6-interbase - Interbase module for PHP
php5.6-xmlrpc - XMLRPC-EPI module for PHP
php5.6-enchant - Enchant module for PHP
php5.6-gmp - GMP module for PHP
php5.6-xsl - XSL module for PHP (dummy)
php-memcache - memcache extension module for PHP
php-gmagick - Provides a wrapper to the GraphicsMagick library
php5.6-bcmath - Bcmath module for PHP
php5.6-mbstring - MBSTRING module for PHP
php5.6-soap - SOAP module for PHP
php5.6-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php5.6-zip - Zip module for PHP
php-tideways - Tideways PHP Profiler Extension
php-mailparse - Email message manipulation for PHP
php-propro - propro module for PHP
php-raphf - raphf module for PHP
php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP
php-gearman - PHP wrapper to libgearman
php-xcache - fast, stable PHP opcode cacher
php-mongo - MongoDB database driver
php5.6-dba - DBA module for PHP
php-xhprof - Hierarchical Profiler for PHP 5.x

PHP 7 Modules list (Example)

php7.0-common - Common files for packages built from the PHP source
libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module)
php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.0-cli - command-line interpreter for the PHP scripting language
php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library)
php7.0-dev - Files for PHP7.0 module development
php7.0-dbg - Debug symbols for PHP7.0
php7.0-curl - CURL module for PHP
php7.0-gd - GD module for PHP
php7.0-imap - IMAP module for PHP
php7.0-intl - Internationalisation module for PHP
php7.0-ldap - LDAP module for PHP
php7.0-pgsql - PostgreSQL module for PHP
php7.0-pspell - pspell module for PHP
php7.0-recode - recode module for PHP
php7.0-snmp - SNMP module for PHP
php7.0-tidy - tidy module for PHP
php7.0-json - JSON module for PHP
php-all-dev - package depending on all supported PHP development packages
php7.0-sybase - Sybase module for PHP
php7.0-modules-source - PHP 7.0 modules source package
php7.0-sqlite3 - SQLite3 module for PHP
php7.0-mysql - MySQL module for PHP
php7.0-opcache - Zend OpCache module for PHP

Via DotDeb (for debian linux)
Add deb repository to /etc/apt/sources.list.d/dotdeb.list
For Debian 8
echo "deb http://packages.dotdeb.org jessie all" >> /etc/apt/sources.list.d/dotdeb.list
For Debian 7
echo "deb http://packages.dotdeb.org wheezy-php56 all" >> /etc/apt/sources.list.d/dotdeb.list
echo "deb-src http://packages.dotdeb.org wheezy-php56 all" >> /etc/apt/sources.list.d/dotdeb.list
Then
wget -O- https://www.dotdeb.org/dotdeb.gpg | apt-key add -
apt update
Remove If another version installed
systemctl stop php5-fpm
apt-get autoremove --purge php5*
Install PHP 7 for apache
apt install php7.0 libapache2-mod-php7.0 php7.0-mysql php7.0-curl php7.0-json php7.0-gd php7.0-mcrypt php7.0-msgpack php7.0-memcached php7.0-intl php7.0-sqlite3 php7.0-gmp php7.0-geoip php7.0-mbstring php7.0-xml php7.0-zip

If you want to install php5.6 on debian 8 (Jessie)

apt-get -y install php5 libapache2-mod-php5

source:
http://www.drupal8.ovh/en/tutoriels/178/how-to-install-php-on-linux

Sunday, November 13, 2016

Validasi Form Upload PHP

  No comments
Banyak kasus hacking terjadi yang salah satunya di sebabkan oleh tidak divalidasinya form upload pada aplikasi web yang di buat.

Berikut contoh sederhana untuk validasi Fom upload file pada program PHP :


File HTML

<form action ="upload_file.php" metode="post" enctype="multipart/form-data"> <label for="file"> Filename: </label> <input type="file" name="gambar" id="gambar" /> <br /> <input type="submit" name="upload" value="Submit" /> </form>
File PHP
<?php if(isset($_POST['upload'])) { date_default_timezone_set('Asia/Jakarta'); $name = $_POST['gambar']; $time = time(); $nama_gambar = $_FILES['gambar'] ['name']; // Nama Gambar $size = $_FILES['gambar'] ['size'];// Size Gambar $error = $_FILES['gambar'] ['error']; $tipe_video = $_FILES['gambar'] ['type']; //tipe gambar untuk filter $folder = "uploads/"; //folder tujuan upload $valid = array('jpg','png','gif','jpeg'); //Format File yang di ijinkan Masuk ke server if(strlen($nama_gambar)) { // Perintah untuk mengecek format gambar list($txt, $ext) = explode(".", $nama_gambar); if(in_array($ext,$valid)) { // Perintah untuk mengecek size file gambar if($size<500000) { // Perintah untuk mengupload gambar dan memberi nama baru $gambarnya = time().substr(str_replace(" ", "_", $txt), 5).".".$ext; $gmbr = $folder.$gambarnya; $tmp = $_FILES['gambar']['tmp_name']; if(move_uploaded_file($tmp, $folder.$gambarnya)) { $mysqli->query("INSERT INTO gallery_gambar(Nama_Gambar`, `DESC_GAMBAR`, `gambar`) VALUES ('$name', '$desc', '$gmbr') "); echo '<script> alert("gambar Berhasil di upload"); </script>'; } else{ // Jika Gambar Gagal Di upload echo '<script> alert("gambar Gagal di upload"); </script>'; } } else{ // Jika Gambar melebihi size echo '<script> alert("gambar Terlalu Besar, Max 5MB"); </script>'; } } else{ // Jika File Gambar Yang di Upload tidak sesuai eksistensi yang sudah di tetapkan echo '<script> alert("Format Gambar Tidak valid , Format Gambar Harus (JPG, Jpeg, gif, png) "); </script>'; } } else{ // Jika Gambar belum di pilih echo '<script> alert("Gambar Belum Di Pilih , Harap Memilih Gambar Dahulu"); </script>'; } exit; } ?>

Contoh Diatas hanya contoh sederhana untuk validasi Form Upload File. Masih ada
banyak berbagai cara yang dapat dilakukan oleh hacker untuk melaksanakan aksinya.

Kode-Kecil. Powered by Blogger.