2016年3月9日 星期三

[SQL]auto_increment

#-- 利用 LAST_INSERT_ID() 取得上一筆 AUTO_INCREMENT
#-- *注意* 此函數僅返回此次 Connection所Insert之AUTO_INCREMENT, 故如未Insert則為 0
INSERT INTO [DB_name] (uid, name, mobile_phone, email, cretat_ts) VALUES (NULL, "Glenn", "0912345678", CONCAT(LAST_INSERT_ID() + 1, "@dkstu.com"), UNIX_TIMESTAMP());

#-- 獲取指定表的 AUTO_INCREMENT
select AUTO_INCREMENT from INFORMATION_SCHEMA.TABLES where TABLE_NAME = [DB_name] ;

2016年3月2日 星期三

[PHP/HTML]避免頁面快取

 

HTML Meta Tag


<meta http-equiv="cache-control" content="no-cache">
//舊寫法,為了相容性添加。
<meta http-equiv="pragma" content="no-cache">
//設為立即過期。
<meta http-equiv="expires" content="0">

PHP


header("Expires: Mon, 26 Jul 1990 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");

以下為另一種方法, 以參數方式使其為新URL。


if (!is_numeric($_GET['_']) || $_GET['_'] < time()) {
$_GET['_'] = time();
header('location: http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']. '?' . http_build_query($_GET));
}

Smarty


<!-- 此方式可以避免瀏覽器快取(時效為一天) -->
http://blog.dkstu.com{$smarty.now|date_format:"%Y%m%d"}

 

 

2016年3月1日 星期二

[多語言]網頁轉址之[永久/暫時]轉址{Redirect}

PHP


<?php
header("HTTP/1.1 301 Moved Permanently"); // 不使用此行即為暫時轉址{302}
header("Location: http://host.domain.tld/path/to/");
?>

 

 

Client端無法使用永久轉址{301},以下皆為暫時轉址{302}。


HTML


<meta http-equiv=refresh content="0;url=http://dkstu.com/">

 

Javascript


<script language="JavaScript">
window.location.href = "http://dkstu.com/";
</script>