PHP Cheat: number

influence seri kedua, eplorasi basic number di PHP

// number

// generate number range
$x=10; $y=17;
$range = range($x, $y);
$kelipatan = range($x, $y, 3);
print_r($range); // Array ( [0] => 10 [1] => … [7]=> 17 )
print_r($kelipatan); // Array ( [0] => 10 [1] => 13 [2] => 16 )

// membulatkan(rounding) nilai floating (desimal)

$num = (2/3);
//rounding biasa
echo round($num); // 1
// penempatan 1 desimal
echo round($num, 1); // 0.7
// penempatan 3 desimal
echo round($num, 3); // 0.667

// pembulatan atas (ceil), bawah (floor)
$num = (1/3);
echo ceil($num); // 1
echo floor($num); // 0

// Maximal dan minimal
$ary = array(76, 12, 3, 0, 1.5, -0.333);
sort($ary);
echo “Minimum: ” . $ary[0]; // 76
echo “Maximum: ” . $ary[sizeof($ary)-1]; // -0.333

// mencari nilai ganjil-genap
$num = 31;
echo (1&$num) ? “ganjil” : “genap”; // ganjil // cara bitwise
echo ($num % 2) “ganjil” : “genap”; // ganjil // cara modus

// memformat angka dengan koma
$num = 123456789.12345;
echo number_format($num); // 123,456,789
echo number_format($num, 2); // 123,456,789.12
echo number_format($num, 2, ‘, ‘, ‘\”); // 123’456’789,12

// format angka dengan nol didepannya
printf(“%02.2f”, 1234.12345); // 1234.12

// convert antar base (binary,octal, hexadecimal, atau custom)
$num = 100;
echo “Binary : ” . decbin($num); // Binary : 1100100
echo “Octal : ” . decoct($num); // Octal : 144
echo “Hexadecimal : ” . dechex($num); // Hexadecimal : 64
echo “Base6 : ” . base_convert($num, 10, 6); // Base6 : 244
echo “Base5 : ” . base_convert($num, 10, 5); // Base6 : 400

// convert RGB ke nilai hexa
function rgb2hex($r, $g, $b) {
return “#” . dechex($r) . dechex($g) . dechex($b);
}
echo rgb2hex(0, 255, 64); //#00ff40

// convert radian ke degre dan sebaliknya
$deg = 90;
echo deg2rad($deg); //  1.5707963267949
$rad = 1.5707963267949;
echo rad2deg($rad); // 90

// menghitung factorial
$num = 5; $fac = 1;
for ($x=$num; $x>=1; $x–)
$fac *= $x;
echo $fac; // 120

// menghitung logaritma
echo log(6); // 1.7917594692281
echo log10(6); // 0.77815125038364

// trigonometri
$num = 45;
echo sin($num); // 0.85090352453412
echo cos($num); // 0.52532198881773
ech0 tan($num); // 1.6197751905439
echo asin($num); //arcsin: NAN
echo acos($num); //arccos: NAN
echo atan($num); //arctan: 1.5485777614682
echo sinh($num); //  hyperbolic sin : 1.7467135528743E+19
echo cosh($num); //  hyperbolic sin : 1.7467135528743E+19
echo tanh($num); //  hyperbolic sin : 1

// nilai random yang sulit ditebak
echo md5(uniqid(rand(), true)); //5c491b82811fa4f1478319a2f0022bbb

// list nilai prime
function prime($end) {
$sieve =  range(2, $end);
$size = sizeof($sieve);
reset($sieve);
// iterate pada array
while(list($key, $val) =  each($sieve)) {
for($x=$key+1; $x<$size; $x++)
if($sieve[$x] % $val == 0)
unset($sieve[$x]);
}
return $sieve;
}
echo implode(” “, prime(21)); // 2 3 5 7 11 13 17 19

// prime dengan iterasi for
function prime($num) {
for($x=($num-1); $x>1; $x–)
if(($num % $x) == 0)
return false;
return true;
}
echo prime(9) ? “Prime” : “Not”;

Advertisements

PHP Cheat: string

Beberapa waktu ini lagi influence dengan PHP,  beberapa hasil coretan iseng

cheat : String:
$txt = “and ALL the King’s”;

// memperbesar semua huruf
strtoupper($txt);
// AND ALL THE KING’S

// memperkecil semua hurup
strtolower($txt);
// and all the king’s

// Hurup besar pertama
ucfirst($txt);
// And ALL the King’s

// hurup besar untuk semua awal kata
ucwords($txt);
// And ALL The King’s

// mengecek string kosong
$str = ”    “;
echo (!isset($str) || trim($str) == “”) ? “EMPTY” : “NOT”;
// EMPTY

// membuang beberapa karakter
$str = “123456789abcdef”
substr($str, 6);
// 789abcdef // membuang 6 karakter awal
substr($str, 0, -6);
//123456789 // membuang 6 karakter akhir

// membuang double whitespace
$str = ”    this em  b e dd    “;
echo ereg_replace(‘[[:space:]]+’, ‘ ‘, trim($str));
// this em b e dd
* trim untuk membuang whitespace dari akhiran string, lalu gunakan
ereg_replace() untuk menemukan double whitespace dan menempatkan
dengan satu white space

 

// membuang double whitespace

jika terjadi error, maka gunakan script berikutnya

$str = 'foo   o';
$str = preg_replace('/\s\s+/', ' ', $str);
// This will be 'foo o' now
echo $str

// membalik kata
$str = “reverse”;
echo strrev($str);
// esrever

// mengulang string
$str = “la “;
echo str_repeat($str, 3);
// la la la

// truncated, awalan untuk ‘read more’
function truncated_str($str, $max_chr=6, $add=’…’) {
if(strlen($str) > $max_chr) // cek panjang string
return trim(substr($str, 0, $max_chr)) . $add;
else
return $str;
}
$str = “123 123 4567890 abcde”;
echo truncated_str($str);
// 123 12…
echo truncated_str($str, 9);
// 123 123 4…
echo truncated_str($str, 9, ” read more”);
// 123 123 4 read more

// character menjadi nilai ASCII
$chr = “\r”;
echo ord($chr);
// 13

// ASCII jadi character
$asc = 65;
echo chr($asc);
// A

// memisahkan string menjadi beberapa bagian (chunk)
$str = “memberikan yg terbaik pada segala sesuatu, sebenarnya memberikan yg terbaik pada diri sendiri”;
$chunkArray = str_split($str, 11)
print_r($chunkArray);
//Array ( [0] => memberikan [1] => yg terbaik [2] => pada segala [3] => sesuatu, s [4] => ebenarnya m [5] => emberikan y [6] => g terbaik p [7] => ada diri se [8] => ndiri )

// membandingkan kata yang seperti nya sama
echo (metaphone(“rest”) == metaphone(“Reset”)) ? “sama” : “tidak”;
// sama
echo (metaphone(“kamu”) == metaphone(“aku”)) ? “sama” : “tidak”;
// tidak

// parsing koma sebagai pemisah list
$str = “apel, semangka, jambu ,durian”;
print_r(explode(“, “, $str));
// Array ( [0] => apel [1] => semangka [2] => jambu ,durian )

// parsing URL
$url = “http://www.facebook.com/profile.php?id=1138295099&ref=profile&#8221;;
$data = parse_url($url); // parsing url
foreach($data as $k => $v)
echo “$k: $v <br>”;
// scheme: http host: http://www.facebook.com path: /profile.php query: id=1138295099&ref=profile

// menghitung banyaknya kata dalam kalimat
$kalimat = “The preg_split() function is probably one of PHP’s most underappreciated functions.”;
$kata = preg_split(‘/[^0-9A-Za-z\’]+/’, $kalimat, -1, PREG_SPLIT_NO_EMPTY);
echo count($kata) . ” kata”;
// 13 kata ->kata diatas hanya 11, tetapi char ‘ dan _ di anggap sebagai pemisah, sehingga menjadi 13
echo str_word_count($kalimat) . ” kata”; // 12 kata

// mencari duplikat kata
$str = “ha ha its so funny hi hi”;
$str = trim($str);// trim whitespace pada akhir string
$str = ereg_replace(‘[[:space:]]+’, ‘ ‘,$str);
// kompresi whitespace ditengah kata
$words = explode(‘ ‘, $str); // mengarraykan dengan whitespace
foreach($words as $w) // iterasi pada array // hitung duplikat setiap kata // simpan hasil pada array yg lain
$wordStats[strtolower($w)]++;
foreach ($wordStats as $k => $v) // cetak semua duplikasi kata
if($v >= 2) echo “$k “;
// ha hi

// mencari string pada kalimat
$str = “silahkan <b>berkunjung</b> pada <a href=’g3n1kwordpress.com’>page pribadi saya</a>”;
echo ereg(“<b>(.*)<\/b>”, $str) ? “cocok” : “tidak”;
// cocok
echo preg_match(“/<b>(.*?)<\/b>/i”, $str) ? “cocok” : “tidak”;
// cocok

// mencari berapa banyak hasil pencarian kata
$str = “silahkan <b>berkunjung</b> pada <a

href=’g3n1kwordpress.com’><b>page pribadi saya</b></a>”;
preg_match_all(“/<b>(.*?)<\/b>/i”, $str, $matches);
echo sizeof($matches[0]) . ” occur(s)”;

// mencari jumlah string yg duplikat
$str = “ha hi hu hi ha ha ha hi”;
echo substr_count($str, “ha”); // 4

// menempatkan kata pada kalimat
$str = “batu menimpa mobil penduduk”;
echo str_replace(“mobil”, “rumah”, $str);
// batu menimpa rumah penduduk

// menempatkan kata pada kalimat // lebih rumit
$str = “batu <b>menimpa</b> mobil <b>penduduk</b>”;
echo preg_replace(“/<b>(.*?)<\/b>/i”, “<i>\\1</i>”, $str);
// batu menimpa rumah penduduk

// menempatkan kata pada kalimat dan membatasi pengubahanya
$str = “batu <b>menimpa</b> mobil <b>penduduk</b>”;
echo preg_replace(“/<b>(.*?)<\/b>/i”, “<i>\\1</i>”, $str, 1);
// batu menimpa rumah penduduk

// mengextract substring
$str = “batu <a href=’somelink’>menimpa</a> mobil <a f”>penduduk</a> desa”;
$matches = preg_split(“/<a(.*?)>(.*?)<\/a>/i”, $str);
echo $matches[0]. ”   “; //
echo $matches[sizeof($matches)-1]; // batu desa

// memecah paragraph menjadi beberapa bagian, mengambil nya
$str = “contoh paragraph! ya seperti ini. mengerti ?”;
echo strok($str, “.?!”); // contoh paragraph // bagian pertama
echo strrev(strtok(strrev(trim($str)), “.?!”));
// mengerti // terakhir

// membangkitkan ceksum string
$str = “just string”;
echo md5($str);
// 497b4d5639884d3a277ec47116f219ee
echo sha1($str);
// 77767476768aaeb390a852e14dacf5aa3537d390

// Enkrypsi string (one-way enkripsi)
$pass = “guestmeplease”;
$scram = “scramble”;
echo crypt($pass, $scram);
// scJMwWB79dEkE

CSS Tabbed menu navigation

menu tabbed navigation

hasil akhir nya seperti ini

akhir

untuk itu butuh dua buah source:

tabbed sebelah kiri tableft8

tabbed sebelah kanantabright8

save-as saja gambar-gambar source diatas

buat sebuah file html baru dan masukan kode html berikut

  1. <html>
  2. <head><title>Tabbed Navigation</title>
  3. <link href=“tabbed8.css” rel=“stylesheet” type=“text/css”>
  4. <body>
  5. <div id=“tabs8”>
  6. <ul>
  7. <li><a href=“1.php”><span>1</span></a></li>
  8. <li><a href=“2.php”><span>second</span></a></li>
  9. <li><a href=“3.php”><span>third ketiga</span></a></li>
  10. <li><a href=“long.php”><span>looooooong text</span></a></li>
  11. <li><a href=“5.php”><span>Ipsum</span></a></li>
  12. </ul>
  13. </div>
  14. </body>
  15. </html>

buat sebuah file css baru beri nama tabbed8.css dan masukan kode-kode berikut:

body {
margin:0;
padding:0;
font: bold 11px/1.5em Verdana;
}

#tabs8
{
float:left;
background:#fcf1cc;
width:100%;
font-size:93%;
line-height:normal;
border-bottom:1px solid #E276A7;
}

#tabs8 ul {
margin:0px; /* membuang jarak */
padding:10px 10px 0 50px; /* posisi list */
list-style:none; /* membuang dooted list*/

}

#tabs8
li {
display:inline; /* membuat list menjadi horizontal */
margin:0px;
padding:0px;
}

#tabs8
a {
float:left;
background:url(tableft8.gif) no-repeat left top; /*gambar tabbed kiri */

margin:0;
padding:0 0 0 4px;
text-decoration:none; /* membuang underline */
}

#tabs8
a span {
float:left;
display:block;
background:url(“tabright8.gif”) no-repeat right top;
padding:5px 15px 4px 6px;
color:#333;

}

/* Commented Backslash Hack hides rule from IE5-Mac \*/
#tabs8 a span {float:none;}
/* End IE5-Mac hack */

#tabs8 a:hover span {
color:#591333;
}


#tabs8
a:hover {
background-position:0% -42px;
}

#tabs8
a:hover span {
background-position:100% -42px;
}

rahasia tabbed ini adalah

memindahkan posisi background gambar

saat mouse berada diatas objek (hover)

pada html jangan lupa untuk menambahkan <span> (lihat kode html) sehingga gambar source tabbed kanan dapat ditampilkan

garis disekeliling hyperlink gambar

jika kirim email dengan hyperlink dan objek hyperlink tersebut memakai gambar, atau membuat hyperlink dengan objek image.

maka secara otomatis disekeliling gambar akan muncul garis

hasil_1dan kode pembentuk  (sengaja saya buat sederhana sekali)

code_start

garis ini kadang membuat desain web menjadi ‘tidak enak’ dilihat

jadi hilangkan saja dengan sedikit css pada tag img

dan hasil nya

code_hasil_finish

garis hyperlink menghilang …

Script PHP format email HTML

Beberapa hari yang lalu, bulan mei tanggal 20 an

membuat mekanisme sederhana untuk sebuah pemesanan eticket theone-management untuk konser Maliq d’essential yang ke 7.judul nya 7 7 7 apagitu lupa deh.

mekanisme nya cukup sederhana,

pemesan melakukan pesanan di website, dan kirim email ke client dan operator tiket

yang jadi masalah adalah keinginan (pribadi sih, maap ya kawan2 team, inisiatif tanpa bilang2) untuk menampilkan banner 7 year celebration dan gambar + url inksomnia solution pada email yang dikirimkan.

karena metode yg selama ini dipakai implementasi pada inksomnia streetwear. adalah mengirimkan email dalam bentuk format text.

<?PHP
$alamat_tujuan = “G3n1k@yahoo.com”;
$subject_mail = “Biliard Bersama”;
// ubah isi message menjadi format html
$isi_message = “<a href=’https://g3n1k.wordpress.com&#8217; alt=’powered by:Wordpress’>”;
$isi_message .= “<img src=http://0.gravatar.com/avatar/6abae3358bfa1b9ba2b012da63d93648?s=128&d=identicon&r=G></a>”;
$isi_message .= “<br/><h1>Final Biliard <br>tanggal 05 <br>bulan mei <br>jam 21:00. <br>jangan telat ya</h1>”;

// penambahan header agar email dibaca sebagai format html
$header_mail = ‘MIME-Version: 1.0’ . “\r\n”;
$header_mail .= ‘Content-type: text/html; charset=iso-8859-1’ . “\r\n”;
// alamat untuk reply
$header_mail .= From: Admin Biliard bersama <x.g3n1k@gmail.com>”;
$header_mail .= Reply-to:x.g3n1k@gmail.com”;

$laporan_kirim = mail($alamat_tujuan, $subject_mail, $isi_message, $header_mail);
// pesan email terkirim
if($laporan_kirim) {
echo “email pemberitahuan terkirim”;}
else {
echo “Error, kegagalan pengiriman email”;
}
?>

bagian terpenting disini adalah pada line 11 dan 12

tanpa deklarasi header ini maka email berformat html tidak akan terkirim

note:

jika ingin mencoba scripting email ini pastikan bahwa server hosting andamendukung untuk pengiriman email.saya melakukan hosting pada 100webspace.com dan script ini tidak berhasil saya jalankan

kemudian saya mencoba pada hosting berbayar dan hasilnya seperti ini

hasil

<?PHP

$alamat_tujuan = "G3n1k@yahoo.com";
#$alamat_tujuan = "G3n1k@yahoo.com";
$subject_mail = "Hasil suervey Notebook ";
// ubah isi message menjadi format html
$isi_message =
'
<h3>Test</h3>
 <a href="http://h10010.www1.hp.com/wwpc/th/en/sm/WF30a/321957-321957-64295-3955552-3955552-4145442.html"><img alt="HP ProBook 4421S" src="http://leadership-park.com/tomail/file/HP-ProBook-4421s-Notebook-PC.jpg" style="border: medium none;" /></a></p>

';
// penambahan header agar email dibaca sebagai format html
$header_mail = "MIME-Version: 1.0" . "\r\n";
$header_mail .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
// alamat untuk reply
$header_mail .= "From: Indra Sadik <G3n1k@yahoo.com>";
$header_mail .= "Reply-to:G3n1k@yahoo.com";

$laporan_kirim = mail($alamat_tujuan, $subject_mail, $isi_message, $header_mail);
// pesan email terkirim
if($laporan_kirim) {
echo "email pemberitahuan terkirim";}
else {
echo "Error, kegagalan pengiriman email";
}
?>

NTLDR Missing

Masalah Clasic NTLDR Missing …

malam itu jam 1 lebih melihat ada laptop dengan alasan tidak jelas nyangkut di atas meja, dengan pesan manis yang inti nya adalah titipan buat gw betulin 😦 .

buka pembungkus nya, laptop toshiba, tidak jelas tahun berapa, tapi dari susunan tipe keyboard terlihat ini laptop lama.

ok langsung tekan power untuk menyalakannya. dua baris tulisan muncul

NTLDR is missing

press Ctrl + Alt + Del to restart

missing

yah pokoknya pesannya kaya gitu deh.

teringat pesan mbah SiRo, yg beberapa hari yang lalu kena masalah begini juga. mbah Siro pake jurus ‘copy-paste’ buat memperbaikinya

oche langsung bereskan

  1. booting dari cd, pake cd installer Microsoft Windows XP
  2. tekan ‘R’ untuk masuk ke konsol recovery
  3. masukan angka yang tertera (baca baik2 perintahnya) lalu enter
  4. masukan password administrator (umumnya tidak terpassword)
  5. kita akan masuk pada C:\WINDOWS>
  6. cari dimana drive cd booting berada (pada kasus ini ada di E:\)
  7. copy file NTLDR dengan perintah copy E:\i386\ntldr c:\
  8. copy file ntdetect.com dengan perintah copy E:\i386\ntdetect.com c:\
  9. ketik exit untuk merestrat komputer
  10. keluarkan cd dan botting dari hardisk
  11. sip, seharusnya komputer kembali normal

ada juga beberapa cara yang lebih mudah seperti

fixboot dan fixmbr

thanks mbah Siro

beres, sekarang tidur udah hampir jam 2 pagi

123654

cara menuliskan CSS pada html & alasannya

3 cara menuliskan css pada html

1. deklarasikan aturan css pada file html itu

tulis_css_1

cara ini mudah dilakukan jika kita hanya membuat aturan CSS hanya untuk halaman website tersebut. Tetapi jika kita membuat banyak halaman website misal 5 halaman dan sebenarnya mereka memakai ‘theme’ yang sama, maka cara ini adalah ‘mimpi buruk’, karena jika kita merubah sedikit saja themes, maka kita harus merubah semua halaman website. Bad Idea untuk website dengan halaman lebih dari 1.

2. menuliskan css pada file terpisah

tulis_css_2

pilihan (sangat) bijak  jika kita membuat banyak halaman website, karena dengan sebaris perintah kita bisa mendeklarasikan pada seluruh halaman web. jika melakukan sebuah perubahan pada themes desain web, kita hanya perlu melakukan sekali dan semua halaman akan berubah secara otomatis, kerja dan struktur yang efisien.

3. menuliskan didalam tag sintaks html

tulis_css_3

adakala nya kita tidak membutuhkan CSS yang panjang dan menjlimet, mungkin kita hanya membutuhkan css agar gambar dalam email berformat HTML yang kita kirim kan tidak memiliki border/ garis disekelilingnya. sehingga kita hanya membutuhkan sebaris kecil CSS maka cara ini cukup efisien.