Posts

Showing posts with the label PHP

Fix openssl encrypt decrypt [PHP]

Image
Warning: openssl_decrypt(): IV passed is only 12 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0 in PATH_FILE on line LINE_N openssl_encrypt(): IV passed is only 12 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0 in PATH_FILE on line LINE_N How to fix the errors Ensure your SALT  only using NUMBER ONLY  and Minimum length of SALT  is 12 . Ensure your PHP version is 7 or above That's how to fix openssl_encrypt() and openssl_decrypt() errors

Membuat PHP argumen dengan '='

Image
Cara Membuat argumen PHP CLI dengan ' = ' ' --= ' Buat file php <?php function arguments($argv) { $_ARG = array(); foreach ($argv as $arg) { if (ereg('--([^=]+)=(.*)',$arg,$reg)) { $_ARG[$reg[1]] = $reg[2]; } elseif(ereg('-([a-zA-Z0-9])',$arg,$reg)) { $_ARG[$reg[1]] = 'true'; } } return $_ARG; } ?> Contoh penggunaan php myscript.php --user=nobody --password=secret -p --access="host=127.0.0.1 port=456" Output Array ( [user] => nobody [password] => secret [p] => true [access] => host=127.0.0.1 port=456 )

Put execution arg into $_GET

PHP CLI <?php if ( $argv ) {     foreach ( $argv as $k => $v )     {         if ( $k == 0 ) continue;         $it = explode ( "=" , $argv [ $i ]);         if (isset( $it [ 1 ])) $_GET [ $it [ 0 ]] = $it [ 1 ];     } } ?>

Menggunakan PHP di termux

Instalasi pkg update -y pkg upgrade -y pkg install php curl wget git -y Contoh Penggunaan PHP (CLI) pada termux buat file php <?php parse_str ( implode ( '&' , array_slice ( $argv , 1 )), $_GET ); ?> Usage/penggunaan php -f namafile.php a=1 b[]=2 b[]=3 //output //$_GET['a'] to '1' and $_GET['b'] to array('2', '3').

[PHP][JS] CryptoJS encrypt decrypt

Image
 CryptoJS encrypt decrypt support PHP 5, PHP 7.x. See the Pen PHP CryptoJS Encrypt Decrypt by dimas lanjaka ( @dimaslanjaka ) on CodePen . Code PHP and details variable [JS] /** * @package https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.js */ var salt = 'salt'; //salt var iv = '1111111111111111'; //pass salt minimum length 12 chars var iterations = '999'; //iterations /** * Get key * @param string passphrase * @param string salt */ function getKey(passphrase, salt) { var key = CryptoJS.PBKDF2(passphrase, salt, { hasher: CryptoJS.algo.SHA256, keySize: 64 / 8, iterations: iterations }); return key; } /** * Encrypt function * @param string passphrase * @param string plainText */ function userJSEncrypt(passphrase, plainText) { var key = getKey(pas

[JS][PHP] Membuat Websocket Javascript

Image
Cara membuat websocket dengan Javascript (JS) dan PHP Update: Simple Websocket Requirements: PHP 5.6+ (minimum)  Websocket merupakan standard baru untuk berkomunikasi, dan cocok untuk aplikasi chat, live server, live listener. Hampir sama dengan AJAX namun perbedaannya ada pada kecepatan dan CPU usage pada device client maupun server. Intinya lebih ringan lah. Websocket ini dapat menerima request apapun dan mendistribusikannya secara instant dari perubahan data sebelumnya. Berikut Cara membuat websocket tanpa NODEJS menggunakan Pure Javascript dan PHP: websocket.js /** websocket steam */ var socket; socket_start(); //start websocket function socket_start() { if (!socket) { //if socket is null console.log('WebSocket Started'); //start server socket = socket_server(); } try { socket.onopen = function (msg) { //console.log('socket initialized'); }; socket.onmessage = function (msg) { var data = JSON.parse(msg.data);

PHP check session has started

Image
PHP >= 5.4.0 , PHP 7 if (session_status() == PHP_SESSION_NONE) { session_start(); } Reference: http://www.php.net/manual/en/function.session-status.php For versions of PHP < 5.4.0 if(session_id() == '') { session_start(); } PHP Check if session has started or not, then session_start()

[JS][PHP] Regexp for matching URL Pattern

Image
Regexp Pattern Untuk mencocokkan semua jenis URL, kode berikut seharusnya berfungsi: <?php $regex = "((https?|ftp)://)?"; // SCHEME $regex .= "([a-z0-9+!*(),;?&=$_.-]+(:[a-z0-9+!*(),;?&=$_.-]+)?@)?"; // User and Pass $regex .= "([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))"; // Host or IP $regex .= "(:[0-9]{2,5})?"; // Port $regex .= "(/([a-z0-9+$_%-]\.?)+)*/?"; // Path $regex .= "(\?[a-z+&\$_.-][a-z0-9;:@&%=+/$_.-]*)?"; // GET Query $regex .= "(#[a-z_.-][a-z0-9+$%_.-]*)?"; // Anchor ?> Example: correctly way for matching URL <?php if(preg_match("~^$regex$~i", 'www.example.com/etcetc', $m)) var_dump($m); if(preg_match("~^$regex$~i", 'http://www.example.com/etcetc', $m)) var_dump($m); ?> Pattern diatas bisa digunakan di javascript. Bedanya dengan diatas hanya dari segi vari