2013/11/10

PHP 檔案上傳

在PHP中進行檔案上傳

HTML FROM :

<form name="FileUpload" action="fileupload.php" method="post" enctype="multipart/form-data" >
<input type="file" name="file_name" />
<input type="submit" />
</form>

接收檔案的PHP程式:fileupload.php

<?php
  $filename = $_FILES['file_name']['name'];
  $tmpname = $_FILES['file_name']['tmp_name'];
  $tmpsize = $_FILES['file_name']['size'];

  if($tmpsize > 1024*1024*10 or $tmpsize <= 0){
    // 檢查檔案大小是否大於10MB
  }

  $dest = 檔案上傳的路徑;
  if(move_uploaded_file($tmpname,$dest)) {
    // 檔案上傳成功
  }
?>

PHP 執行 Linux 的 Shell Script

PHP 的 shell_exec() 函式可以執行 Linux 的 Shell Script

語法:

string shell_exec ( string $cmd )

範例:

<?php
  $output = shell_exec('ls -l');
  echo '<pre>$output</pre>';
?>
以上指令可以列出目前目錄的檔案列表


案例:用 Shell Script 的 cal 指令來顯示月曆
引用來源:http://www.grandsights.twbbs.org/2010/04/php-shell-script.html

<?php
  $output = shell_exec('/usr/bin/cal 11 2013');
  echo '<pre>$output</pre>';
?>
顯示2013/11月份的月曆

PHP 產生MD5編碼的亂數

亂數產生一組五個字元的字串

substr(md5(uniqid(rand(),true)),0,5)


PHP函數:
rand() 產生亂數
uniqid() 產生不重複序號
md5($str) 將$str以MD5編碼
substr($str,起始位置,字串長度) 擷取字串


PHP 將數字補齊位數

PHP補齊位數函式 : str_pad()

string str_pad ( string $input , int $pad_length [, string $pad_string= " " [, int $pad_type= STR_PAD_RIGHT ]] )


$input : 原字串
$pad_length : 補齊後的位數
$pad_string : 用來補齊的字串
$pad_type : 補齊的方式 有三種,STR_PAD_RIGHT (由右邊補)、STR_PAD_LEFT (由左邊補)、STR_PAD_BOTH (左右兩邊都補), 預設為STR_PAD_RIGHT

PHP 設定支援 mysqli

PHP 設定支援 mysqli

編輯 php.ini

設定以下參數(Windows環境範例):

extension_dir = C:\AppServ\php5\ext
extension = php_mysqli.dll

Java Class 執行的記憶體配置

java -Xms64m -Xmx256m classname

JSP與Javascript的輸出斷行字元

JSP : "\r\n"

JavaScript : "\n"

去除JSP自動生成的空行

JSP中的程式碼的部分 <% ..... %> 在顯示網頁原始碼時會產生空白的行數


Tomcat 5.5.x+

在conf/web.xml中的servlet/jsp區段加入
<init-param>
  <param-name>trimSpaces</param-name>
  <param-value>true</param-value>
</init-param>

Tomcat 6.0.x+ servlet 2.5+

<jsp-config>
  <jsp-property-group>
    <url-pattern>*.jsp</url-pattern>
    <trim-directive-whitespaces>true</trim-directive-whitespaces>
  </jsp-property-group>
</jsp-config>

JSP 2.1+

在jsp頁面中加入

<%@ page trimDirectiveWhitespaces="true" %>