Nov 15

Permasalahan yang sering muncul saat upload file dan cara menanganinya.

Contoh skrip Upload PHP File Upload

<html>
<head>
<title>Contoh Form Upload dengan PHP</title>
</head>
<body>

Contoh Form Upload dengan PHP
<form enctype=”multipart/form-data” action=”upload.php” method=”post”>
<input type=”hidden” name=”MAX_FILE_SIZE” value=”15000000″ />
Upload this file: <input name=”userfile” type=”file” />
<input type=”submit” value=”Upload” />
</form>

</body>
</html>

File Upload.php

$uploaddir = ‘images/’;
$uploadfile = $uploaddir . $_FILES['userfile']['name'];
chmod(”$userfile”, 0644);
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo “File $uploadfile sukses diupload”;
} else {
echo “Proses upload gagal, kode error = ” . $_FILES['userfile']['error'];
}
?>

TroubleShoot

Apa bila upload file gagal maka sebaiknya yang anda lakukan adalah

1. Pastikan quota atau hardisk anda masih mempunyai Free Space?
2. Pastikan Permisi folder tujuan anda writeable (dapat di tulisi - permisi file 777)
3. Pastikan konfigurasi PHP anda sudah pas dengan kebutuhan upload (PHP membatasi maximum size file yang di upload). Adapun variable-variabel yang harus diperatikan adalah

* file_uploads
* upload_max_file_size
* post_max_size
* memory_limit
* max_execution_time
* max_input_time

Sumber diambil dari wiki forum php

Posted in: PHP Beginner | No Comments »

Nov 15

function encrypt($Str_Message) {
$Len_Str_Message=strlen($Str_Message);
$Str_Encrypted_Message="";
for($Position = 0;$Position<$Len_Str_Message;$Position++){
// long code of the function to explain the algoritm
//this function can be tailored by the programmer modifyng the formula
//to calculate the key to use for every character in the string.
$Key_To_Use = (($Len_Str_Message+$Position)+1); // (+5 or *3 or ^2)
//after that we need a module division because can´t be greater than 255
$Key_To_Use = (255+$Key_To_Use) % 255;
$Byte_To_Be_Encrypted = substr($Str_Message, $Position, 1);
$Ascii_Num_Byte_To_Encrypt = ord($Byte_To_Be_Encrypted);
$Xored_Byte = $Ascii_Num_Byte_To_Encrypt ^ $Key_To_Use; //xor operation
$Encrypted_Byte = chr($Xored_Byte);
$Str_Encrypted_Message .= $Encrypted_Byte;

//short code of the function once explained
//$str_encrypted_message .= chr((ord(substr($str_message, $position, 1))) ^ ((255+(($len_str_message+$position)+1)) % 255));
}
return $Str_Encrypted_Message;
} //end function
?>

Posted in: PHP Intermediate | No Comments »

Nov 05

Konstanta adalah pemberian nama baru terhadap suatu nilai. Dimana konstanta tersebut bersifat tetap dan tidak terpengaruh oleh eksekusi script apapun. Konstanta bersifat case-sensitive. Menurut kesepakatan bersama, penamaan konstanta selalu menggunakan huruf besar.

Contoh penamaan konstanta :

define(”CONSTANT”, “Hello world.”);

echo CONSTANT; // “Hello world.”

?>

<?php

// Penamaan konstanta yang benar

define(”KONS”, “sesuatu”);

define(”KONS2?, “sesuatu yang lain”);

define(”KONS_OK”, “sesuatu yang lain lagi”);

?>

Cara mendefinisikan konstanta adalah dengan menggunakan fungsi define(). Sekali konstanta tersebut didefenisikan maka konstanta tersebut tidak bisa dirubah atau dihapus.

Konstanta hanya boleh berisi data scalar atau bertipe tunggal misalnya boolean, integer, float dan string (tidak berlaku terhadap array atau object). Konstanta juga tidak bisa diisi dengan sesuatu yang berupa pernyataan atau ekspresi.

Untuk mendapatkan nilai konstanta bisa dengan cara mencatumkan nama konstatanya. Tidak seperti variable, konstanta tidak memerlukan tanda “$” didepan nama konstantanya.

PERBEDAAN ANTARA KONSTANTA DAN VARIABLE:

· Konstanta tidak diberi tanda dollar ($) sebelum nama konstantanya.

· Konstanta hanya boleh didefinisikan dengan fungsi define().

· Konstanta bisa didefinisikan dan diakses dimana saja tanpa mengikuti aturan scope.

· Konstanta tidak bisa didefinisikan ulang atau menghapusnya.

· Konstanta hanya boleh berisi nilai scalar.

Contoh:

<?php

define(”CONSTANT”, “Hello world.”);

echo CONSTANT; // “Hello world.”

?>

Posted in: PHP Beginner | No Comments »

Nov 05

PHP mendukung komentar seperti yang ada di ‘C’, ‘C++’ dan Unix shell-style (Perl style).

Terkadang dibutuhkan beberapa baris kalimat untuk memberi keterangan pada suatu baris program, hal ini sering disebut remarks. Dimana remarks tidak akan ikut dieksekusi oleh server. Jika remarks hanya satu baris maka gunakanlah (“//”) atau (“#”), jika remarks terdiri dari beberapa baris secara berurutan lebih efektif jika menggunakan (“/*…*/”)

Lihat contoh berikut ini :

<?php

echo ‘Ini hanyalah test’; // Ini komentar satu baris, model komentar C++

/* Ini komentar untuk baris lebih dari satu.

Dan diakhiri dengan tanda */

echo ‘Ini masih test yang lain’;

echo ‘Satu lagi test terakhir’; # Komentar satu baris, model shell-style

?>

<?php

<h1>Ini hanya sebuah <?php # echo ’sederhana’;?> contoh.</h1>

<p>Header di atas akan tercetak ‘Ini hanya sebuah contoh’.</p>

?>

Contoh yang salah:

<?php

/*

echo ‘Ini hanya sebuah test’; /* Komentar ini menyebabkan kesalahan */

*/

?>

Posted in: PHP Beginner | No Comments »

Oct 10

addslashes… mungkin sudah sangat sering anda mengenalnya. Mulai dari PHP versi 4 sampai versi 5 sekarang. Namun bagaimana dengan addcslashes? Memang sama-sama sebuah fungsi yang dimiliki oleh php, namun dengan sedikit perbedaan yang dapat anda gunakan dalam membuat script anda.

Continue reading »

Posted in: PHP Beginner | No Comments »

« Previous Entries