[share] Addons Chrome Yang Dipakai Desta Untuk Development Web

Bismillah…

Kali ini bukan tulisan teknik, lebih kepada pengetahuan/ pemberitahuan addons browser chrome yang gw pake saat devel aplikasi web dengan php, diantaranya:

  1. Web Developer via http://chrispederick.com/work/web-developer/
  2. Poper Blocker via https://www.poperblocker.com/
  3. Wapplyzer via https://wappalyzer.com/download
  4. Postman
  5. PHP Docs-to-go (OFFLINE)
  6. Page Ruler
  7. WhatFont
  8. WindowResizer

Done.

Have a nice day!

 

[trick] Crud dengan menggunakan angular-js

berikut ini adalah tricky dari membuat crud dengan menggunakan php dan angular.js

Insert.html


<!DOCTYPE html>
<html data-ng-app="latihan">
<head>
<meta charset="utf-8" />
<title>Insert Multiple Data</title>
<script src="vendor/angular/angular.js"></script>
</head>
<body ng-controller="MainController" >
{{ data }}
<div data-ng-repeat="key in data">
Nama <input type="text" data-ng-model="data[$index].nama"> <br>
Kelas <input type="text" data-ng-model="data[$index].kelas"> <br>
</div>

<button data-ng-click="tambah()">Tambah Data</button>
<button data-ng-click="cancel()" data-ng-show="data.length > 1">Cancel</button>
<button data-ng-click="simpan()">Simpan</button>
<p>{{ pesan }}</p>
</body>
</html>
<script>
angular.module('latihan', [])

.controller('MainController',function($scope,$http){
//set type data 'data' dengan object
$scope.data = [{nama : '',kelas : ''} ];
//fungsi tambah inputan
$scope.tambah = function(){
$scope.data.push({nama : '', kelas : ''});
};
//fungsi kurangi inputan
$scope.cancel = function(){
$scope.data.splice($scope.data.length-1);
};
//fungsi simpan
$scope.simpan = function(){
$http.post('http://localhost/latihan/server.php?action=insert',$scope.data).success(function(response){
if(response > 0){
$scope.data = [{nama : '',kelas : ''} ];
$scope.pesan = response +' Data telah berhasil di simpan';
$scope.$apply();
}
});
}
})
</script>

Edit.html


<!DOCTYPE html>
<html data-ng-app="latihan">
<head>
<meta charset="utf-8" />
<title>Edit Multiple Data</title>
<script src="vendor/angular/angular.js"></script>
</head>
<body ng-controller="MainController" >

<table>
<tr>
<td>No</td>
<td>Nama</td>
<td>Kelas</td>
<td>Action</td>
</tr>
<tr data-ng-repeat="(k,v) in data">
<td>{{ $index +1 }}</td>
<td> <input type="text" data-ng-model="v.nama" data-ng-if="v.isedit"><p data-ng-if="!v.isedit">{{v.nama}}</p></td>
<td><input type="text" data-ng-model="v.kelas" data-ng-if="v.isedit"><p data-ng-if="!v.isedit">{{v.kelas}}</p></td>
<td><button data-ng-click="edit($index)">Edit</button></td>
</tr>
</table>
<button data-ng-click="update()">Update</button>
{{ pesan }}
</body>
</html>
<script>
angular.module('latihan', [])

.controller('MainController',function($scope,$http){
// set type data dataedit dengan array kosong
$scope.dataedit = [];
// fugsin menggambil data ke server
$scope.getdata = function(){
$http.get('http://localhost/latihan/server.php?action=get').success(function(response){
$scope.data = response;
$scope.$apply();
});
};
// init data
$scope.getdata();
//ketika user klik button edit
$scope.edit = function(index){
//set agar ketika user input
//munculkan input type
$scope.data[index]['isedit'] = true;
// masukan data yang di pilih ke array dataedit
$scope.dataedit.push($scope.data[index]);
};
$scope.update = function(){
//kirim data yang di edit saja ke server
$http.post('http://localhost/latihan/server.php?action=update',$scope.dataedit).success(function(response){
if(response > 0){
//munculkan list baru yang sudah berhasil di edit
$scope.getdata();
//tampilkan pesna sukses
$scope.pesan = response +' Data telah berhasil di update';
$scope.$apply();
}
});
}
});
</script>

delete .html


<!DOCTYPE html>
<html data-ng-app="latihan">
<head>
<meta charset="utf-8" />
<title>Delete Multiple Data</title>
<script src="vendor/angular/angular.js"></script>
</head>
<body ng-controller="MainController" >

<table>
<tr>
<td></td>
<td>Nama</td>
<td>Kelas</td>
</tr>
<tr data-ng-repeat="(k,v) in data">
<td><input type="checkbox" data-ng-click="check(v.siswaid)"></td>
<td> <input type="text" data-ng-model="v.nama" data-ng-if="v.isedit"><p data-ng-if="!v.isedit">{{v.nama}}</p></td>
<td><input type="text" data-ng-model="v.kelas" data-ng-if="v.isedit"><p data-ng-if="!v.isedit">{{v.kelas}}</p></td>
</tr>
</table>
<button data-ng-click="delete()">Delete</button>
{{ pesan }}
</body>
</html>
<script>
angular.module('latihan', [])

.controller('MainController',function($scope,$http){
// set type data datadelete dengan array kosong
$scope.datadelete = [];
// fugsin menggambil data ke server
$scope.getdata = function(){
$http.get('http://localhost/latihan/server.php?action=get').success(function(response){
$scope.data = response;
$scope.$apply();
});
};
// init data
$scope.getdata();
//ketika user klik button edit
$scope.check = function(siswaid){
//buat variabel tmp bernilai true
//ini digunakan untuk chek apakah sudah ada
//siswa id di dalah array data delete
//jika sudah ada delete array dengan splce dan set
// tmp jadi false agar tidak di push(dimasukan ke dalam array) kembali di bawah
var tmp = true;
for(var i = 0; i < $scope.datadelete.length;i++){
if($scope.datadelete[i] == siswaid){
$scope.datadelete.splice(i);
tmp = false;
break;
}
}
if(tmp)$scope.datadelete.push(siswaid);
};
$scope.delete = function(){
//kirim data yang di edit saja ke server
$http.post('http://localhost/latihan/server.php?action=delete',$scope.datadelete).success(function(response){
if(response > 0){
//munculkan list baru yang sudah berhasil di delete
$scope.getdata();
//tampilkan pesna sukses
$scope.pesan = response +' Data telah berhasil di delete';
$scope.$apply();
}
});
}
});
</script>

server.php


<?php

$hostname = "localhost";
$user = "root";
$pass = "";
$database = "latihan";

$conn = mysql_connect($hostname,$user,$pass);
if(!$conn) die ("gagal melakukan koneksi");
mysql_select_db($database,$conn) or die("database tidak ditemukan");

switch($_GET['action']){
case 'insert' :
$data = json_decode(file_get_contents("php://input"));
$i = 0;
foreach($data as $k => $v){
$query = "INSERT INTO siswa(nama,kelas) VALUES ('".$v->nama."','".$v->kelas."')";
mysql_query($query);
$i++;
};
echo json_encode($i);
break;
case 'get' :
$query = "SELECT * FROM siswa";
$sql = mysql_query($query);
$data = array();
while($row=mysql_fetch_array($sql)) {
$data[] = $row;
}

echo json_encode($data);
break;
case'update' :
$data = json_decode(file_get_contents("php://input"));
$i = 0;
foreach($data as $k => $v){
$query = "UPDATE siswa set nama = '".$v->nama."' , kelas = '".$v->kelas."' where siswaid = '".$v->siswaid."'";
mysql_query($query);
$i++;
};
echo json_encode($i);
break;
case'delete' :
$data = json_decode(file_get_contents("php://input"));
$i = 0;
foreach($data as $k => $v){
$query = "DELETE FROM siswa where siswaid = '".$v."'";
mysql_query($query);
$i++;
};
echo json_encode($i);
break;
}

[trick] Algoritma binary search


<?php
function BinarySearch( $looping, $array, $key, $low, $high )
{
if( $low > $high )
{
return -1;
}

$looping++;


$middle = intval( ( $low+$high )/2 );
echo "
Looping ke-$looping <br>
middle = ( $low+$high )/2 = $middle <br>
";



if ( $array[$middle] == $key )
{
echo "
Jika ".$array[$middle]." == $key, maka $middle <br>
";

return $middle;
}
elseif ( $key < $array[$middle] )
{
echo "
Jika $key < ".$array[$middle].", maka kembali ke fungsi BinarySearch() <br><br>
";

return BinarySearch( $looping, $array, $key, $low, $middle-1 );
}
elseif ( $key > $array[$middle] )
{
echo "
Jika $key > ".$array[$middle].", maka kembali ke fungsi BinarySearch() <br><br>
";

return BinarySearch( $looping, $array, $key, $high, $middle+1 );
}
}
?>

Biasanya digunakan untuk mencari keakuratan untuk pencarian data SQL dan Kecepatan Pencarian data dalam Microsite. contoh penerapannya bisa kita lihat google.

[trick] Setting Host Name Localhost di Linux Lite

Bismillah…

Kali ini sekedar catatan langkah melakukan hostname di localhost, kalo misalkan kita akses aplikasi via:

localhost/aplikasi atu 127.0.0.1/aplikasi

Kita mau ubah menjadi seperti ini:

aplikasi.local

Berikut ini langkahnya (pastikan menggunakan XAMPP untuk LINUX):

  1. Buka file /opt/lampp/etc/ http.conf dengan nano atau vim
  2. Cari file line “Virtual Host” di nomor 480, lalu uncomment… source: http://stackoverflow.com/a/10878285
  3. Buka file /opt/lampp/etc/extra/httpd-vhosts.conf dengan nano atau vim. lalu tambahkan virtual host. source: http://stackoverflow.com/q/10878284
  4. Buka file /etc/hosts dengan nano atau vim, tambahkan disamping “localhost” dengan nama ServerName yang diset di langkah 3 tadi.
  5. Restart xampp dengan perintah ” sudo /opt/lampp/lampp restart “
  6. Done.

Have a nice day!

Sumber:

  1. http://stackoverflow.com/questions/11259414/virtual-host-not-working-in-zend-framework
  2. https://framework.zend.com/manual/2.4/en/user-guide/skeleton-application.html
  3. http://stackoverflow.com/questions/10878284/virtual-hosts-xampp-linux-ubuntu-not-working

[trick] beberapa plugin php yang dipakai untuk edit photo


// IMG_FILTER_EDGEDETECT
// IMG_FILTER_BRIGHTNESS
// IMG_FILTER_COLORIZE
// IMG_FILTER_EMBOSS
// IMG_FILTER_GAUSSIAN_BLUR
// IMG_FILTER_GRAYSCALE
// IMG_FILTER_NEGATE
// IMG_FILTER_MEAN_REMOVAL
// IMG_FILTER_SMOOTH

header("Content-type:image/jpeg");
$image = imagecreatefromjpeg('koala.jpg');
imagefilter($image,IMG_FILTER_GRAYSCALE,70);
imagejpeg($image);

kali ini saya akan menggunakan gray scale, yang hasilnyan seperti ini.

koala

 

fungsi lainnya :

https://topidesta.wordpress.com/2015/04/08/memaksimalkan-penggunaan-input-typerange-html-5/

Share Custom Share Social Media

like and share

kita pasti mikir gimana ya caranya button share atau like itu kita buat sendiri , bukan memakai langsung dari facebook atau sosmed lainnya.

nah saya share share dikit aja disini, ya meskipun sedikit mudah2an membantu lah.. hahaha

untuk facebook:

</pre>
<a href="https://www.facebook.com/sharer/sharer.php?u=<? echo $url_webnya ;?>">share fb</a>

untuk twitter:

</pre>
<a href="https://twitter.com/intent/tweet?text=<?php echo $title_web; ?> <?=$url_webnya;?>">share twiiter</a>

untuk google_plus:

</pre>
<a href="https://plus.google.com/share?url=<?php echo $url; ">share g+</a>

Nah demikian lah scriptnya, mudah bukan. heheh, selamat mencoba