按一下這裡開小視窗
置中:
資料來源:http://www.cnblogs.com/shiyu007/archive/2006/12/05/582801.html
UEM範例

var swfu;
window.onload = function () {
var settings_object = {
upload_url : "http://www.swfupload.org/upload.php",
flash_url : "http://www.swfupload.org/swfupload.swf",
file_size_limit : "20 MB",
button_placeholder_id : "spanSWFUploadButton"
};
swfu = new SWFUpload(settings_object);
};
// The uploadStart event handler. This function variable is assigned to upload_start_handler in the settings object
var myCustomUploadStartEventHandler = function (file) {
var continue_with_upload;
if (file.name === "the sky is blue") {
continue_with_upload = true;
} else {
continue_with_upload = false;
}
return continue_with_upload;
};
// The uploadSuccess event handler. This function variable is assigned to upload_success_handler in the settings object
var myCustomUploadSuccessEventHandler = function (file, server_data, receivedResponse) {
alert("The file " + file.name + " has been delivered to the server. The server responded with " + server_data); }; // Create the SWFUpload Object
var swfu = new SWFUpload({
upload_url : "http://www.swfupload.org/upload.php",
flash_url : "http://www.swfupload.org/swfupload.swf",
file_size_limit : "200 MB",
upload_start_handler : myCustomUploadStartEventHandler,
upload_success_handler : myCustomUploadSuccessEventHandler }
);
mysql> SELECT * FROM table
WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;
TO_DAYS(date)
mysql> SELECT TO_DAYS(950501);
-> 728779
mysql> SELECT TO_DAYS('1997-10-07');
-> 729669
mysql> select DAYOFWEEK('1998-02-03');
-> 3
mysql> select DAYOFYEAR('1998-02-03');
-> 34
((unix_timestamp(NOW())- unix_timestamp(`startTime`)) <'86400')
select unix_timestamp('2008-08-08'); -- 1218124800
限制:一個ip一天只記錄一次點擊物品
$sql="select count(*) as c from web_log where DATE(now())=DATE(time) and commodity_sn='$sn' and ip='$address'";
$serachWebLogData=lazy_get_line($sql);
if(! $serachWebLogData['c']>=1){
//如果沒有資料就可以做插入
$sql="insert....";
if (!empty($_SERVER['HTTP_CLIENT_IP']))
$ip=$_SERVER['HTTP_CLIENT_IP'];
else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
else
$ip=$_SERVER['REMOTE_ADDR'];
browser()
function browser(){
$browsers = array("firefox", "msie", "opera", "chrome", "safari",
"mozilla", "seamonkey","konqueror", "netscape",
"gecko", "navigator", "mosaic", "lynx", "amaya",
"omniweb", "avant", "camino", "flock", "aol");
$agent=strtolower($_SERVER["HTTP_USER_AGENT"]);
//echo $browser;
foreach($browsers as $browser){
if (preg_match("#($browser)[/ ]?([0-9.]*)#", $agent, $match)){
$browser_version=$match[1].$match[2];
break ;
}
}
$mobileAgents = array(
"iphone",
"ipad",
"android",
"mini",
"mobi",
"portable",
"playstation",
"palm",
"hiptop",
"avantgo",
"plucker",
"xiino",
"blazer",
"eclair",
"froyo");
$OSName=array('nt 5.1'=>"XP",'nt 5.0'=>'2000','nt 5.1'=>'XP','nt 5.2'=>"Windows Server 2003",'nt 6.0'=>'vista、2008','nt 6.1'=>'Win7,Server 2008 R2','nt 6.2'=>'Windows8');
if(eregi('nt 5.1',$agent)){
$browser_os=$OSName['nt 5.1'];
}else if(eregi('nt 5.0',$agent)){
$browser_os=$OSName['nt 5.0'];
}else if(eregi('nt 5.1',$agent)){
$browser_os=$OSName['nt 5.1'];
}else if(eregi('nt 5.2',$agent)){
$browser_os=$OSName['nt 5.2'];
}else if(eregi('nt 6.0',$browser)){
$browser_os=$OSName['nt 6.0'];
}else if(eregi('nt 6.1',$agent)){
$browser_os=$OSName['nt 6.1'];
}else if(eregi('nt 6.2',$agent)){
$browser_os=$OSName['nt 6.2'];
}else{
foreach($mobileAgents as $check) {
if(stripos($agent, $check)) {
$browser_os=$check;
break;
}
}
}
return $browser_version."[{$browser_os}]";
}
// 建立 PHPMailer 物件及設定 SMTP 登入資訊
require("../phpMailer/class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // send via SMTP
$mail->Host = "remote.smtp.server"; // SMTP servers
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "me@localhost"; // SMTP username
$mail->Password = "123456"; // SMTP password
$mail->From = "myemail@localhost";
$mail->FromName = "My Name";
// 執行 $mail->AddAddress() 加入收件者,可以多個收件者
$mail->AddAddress("to@email.com","Josh Adams");
$mail->AddAddress("to2@email.com"); // optional name
$mail->AddReplyTo("jyu@aemtechnology.com","AEM");
$mail->WordWrap = 50; // set word wrap
// 執行 $mail->AddAttachment() 加入附件,可以多個附件
$mail->AddAttachment("path_to/file"); // attachment
$mail->AddAttachment("path_to_file2", "INF");
// 電郵內容,以下為發送 HTML 格式的郵件
$mail->IsHTML(true); // send as HTML
$mail->Subject = "testing email";
$mail->Body = "This is the HTML body";
$mail->AltBody = "This is the text-only body";
if(!$mail->Send())
{
echo "Message was not sent ";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}
echo "Message has been sent";
$mail = new PHPMailer(); // defaults to using php "mail()"
$mail->CharSet = "utf-8";
$mail->From = 'admin@XX.XX.X.X';
$mail->FromName = 'AXX';
$subject = " system email test";
$mail->Subject = $subject;
$data_user[0]['id']='xx@xx.xxxx';
$data_user[0]['name']='Bau';
$sql="";
$body = "Dear,
please reply to testing email.";
$data=lazy_get_data($sql);
foreach($data as $value){
$body.=$value['empID'].'gg'.$value['empEmail']."
";
}
//$mail->SingleTo=TRUE; #個人理解,如果cc有多個接收mail只會顯示一個人的
$mail->ClearAddresses(); #由於內文不一樣,$mail->AddAddress 的陣列讓寄信人只寄一個,避免寄給很多人。
// optional, comment out and test
$body = eregi_replace("[\]",'',$body);
$mail->MsgHTML($body);
$mail->Encoding = "base64";
foreach($data_user as $value){
$mail->AddAddress($value['id'], $value['name']);
$mail->IsSMTP();
$mail->SMTPAuth = false;
//$mail->Port = 25;
//需使用SMTP驗證
//ou$mail->SMTPSecure = "ssl";
// 利用SSL連線到伺服器
$mail->Host = "mail.global.frontbridge.com";
//當然啦,信件寄送主機就是GMAIL
//$mail->Port = 465;
//指定SMTP port
//$mail->Username = "";
//MAIL帳號
//$mail->Password = "";
if($debug=='1'){
echo "";
echo $mail->Subject."";
echo $to."[{$to_name}]";
echo $body;
}elseif($debug=='0'){
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
echo $to;
exit;
} else {
//echo "Message sent!";
sleep(3);
}
}
}
$body=""
$array=array("a"=>"卡卡","b"=>"黃金");
unset($array);
if(isset($array)){
print_r($array);
}else{
echo '沒有變數';
}
unset($a);
unset($b);
等於
unset($a,$b);
SELECT COUNT(column_name) FROM table_name
SELECT COUNT(*) FROM table_name
| O_Id | OrderDate | Price | 顧客 |
| 1 | 20011/11/12 | 100 | ans |
| 2 | 20011/11/12 | 100 | dce |
| 3 | 20011/11/14 | 100 | abc |
| 4 | 20011/11/15 | 100 | ans |
SELECT COUNT(顧客) AS CustomerNilsen FROM Orders
WHERE 顧客='ans'
studies
#pageheading {
font-size:3.25em;
font-weight:bold;
padding-top:20px;
color:#fff;
padding-bottom:20px;
}
#headingspacer{
margin:0 0 0 0;
height:22px;
background: url('images/XXX.gif') repeat bottom;
}
3.@import 表示法
@import url(mysite.css);4.行內樣式-直接利用元件的 STYLE 屬性(缺點:無法被重複利用)
if($kk=="cc"){echo $hh--;}
if($kk=="cc")$hh--;
if($kk=="cc")$hh--;else $kk++;
" alert//('已寄發通知信');history.back();";
function SendHtmlMail($mail_info)
{
$from_address = $mail_info["from_address"];
$to_address = $mail_info["to_address"];
$message = $mail_info["message"];
$subject = $mail_info["subject"];
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "From: ".$from_address."\r\n";
$headers .= "Reply-To: ".$from_address."\r\n";
if(@mail($to_address, $subject, $message, $headers)) echo "成功"; else echo "失敗";
}
--------------------------以上是自訂函數----------------
$subject->標題
$mail_info["subject"] = "=?UTF-8?B?" . base64_encode($subject) . "?=";
$mail_info["message"] ="來blog看看";
$mail_info["from_address"] = "from mail";
$mail_info["to_address"] = "to mail";
SendHtmlMail($mail_info);
//此函式用來將文字截斷成某個固定長度,並示意還有更多
function truncate_text_nicely($string, $max, $moretext){
//字中超過所設定的最大長度才會進行處理
if (strlen($string) > $max){
//修正$max,減去省略符號的長度以騰出更多空間
$max -= strlen($moretext);
//只擷取字串合適的部分
$string=strrev(strstr(strrev(substr($string, 0, $max)),' '));
//將省略符號加到後面
$string .=$moretext;
}
//不管字串有沒有變動,都將它傳回去
return $string;
}
$str='It was a dark and stormy night when the Baron prepared his plane.';
$str1="今天上班看到路上有很多明華園要公演的旗幟";
//將字串解析成為值
$values=truncate_text_nicely($str1,35,'...');
echo "
{$values}
";
因為某些原因,想要截取字串。一開始想到的是 mb_strcut()。
如果要取某個字串的前 10 字,可以這樣下:
$text = "許茹芸淚海慶功宴吃蓋飯在台北市四平街";
$result = mb_strcut($text, 0, 30, "UTF-8");
echo $result; // 許茹芸淚海慶功宴吃蓋
但是要取某個字串的「後 10 字」呢?
最一開始的想法是用 mb_strlen() 把 $text 的長度取出來,但是後來發現其實 mb_strcut() 本身就支援這個做法:
$text = "許茹芸淚海慶功宴吃蓋飯在台北市四平街";
$result = mb_strcut($text, -30, 30, "UTF-8");
echo $result; // 吃蓋飯在台北市四平街
Tags: php mb_strcut mb_strlen 字串 長度 截取 UTF-8 utf8 許茹芸 淚海 慶功宴 蓋飯 四平街
echo mb_substr('字不要切一半我字不要切我字, 0, 7, 'utf-8');
輸出:字不要切一半我
echo mb_substr('字a不要切c一半我字不要切我字', 0, 7, 'utf-8');
輸出:字a不要切c一
echo mb_strcut('字不要切一半我字不要切我字', 0, 7, 'utf-8');
?>
输出:字不
從上面的例子可以看出,mb_substr是按字來切分字符,而mb_strcut是按字節來切分字符,但是都不會產生半个字符的現象,也就是亂碼的現象。
$sql="select * from XXX where XXX='$XXX'"; $result=mysql_query($sql); $count_result=mysql_num_rows($result);
ini_set('default_charset', 'utf-8');
$p=10; //每頁顯示10筆
$px=5; //每頁顯示跳頁用的5筆
$col_id=intval($_GET['cat']); //get
$post_kind_id=$_POST['kind_id'];//post
if($post_kind_id!=''){
$col_id=$post_kind_id;
$page=""; #避免之前選擇的頁數影響之後post出去的page頁面
$sql_where_kind=" where kind_id='$col_id'";
$sql="SELECT * FROM `".DBPREFIX."_news` ".$sql_where_kind;
$data=lazy_get_data($sql);
}else{
$data=lazy_get_data($sql);
}
if($col_id!=""){
$sql_where_kind=" where kind_id='$col_id'";
$sql="SELECT * FROM `".DBPREFIX."_news`".$sql_where_kind;
$data=lazy_get_data($sql);
}
$snStr="issue_news.php?cat={$col_id}";
$total =$num;
$show=ceil($total/$p); //每頁顯示$P筆
if(isset($page)){
$page=$page;
}else if(isset($_GET['page']))
{
$page=$_GET['page'];
}else{
$page=0;
}
$sqlproducts=$sql. " ORDER BY top_sn desc ,news_sn desc "." LIMIT ".($page*$p).",".$p;
$data=lazy_get_data($sqlproducts);
//放在table最下面
array_page($total,$page,$p,$px,$snStr);
一、只要給這支function資料庫的總筆數(用count去算就好了)
二、原本的select查詢,最後面加上limit ".($page*$p).",".$p;
三、在表格最後面,把function這個名字貼上
array_page($totals_rows,$page,$p,$px,$new_Link);
四、$new_Link就是要該網頁,原本有些 $_GET 要回傳,就加在這裡...
例如:http://localhost/test.php?mode=old ---> 查歷史資料 $new_Link 就
給他 'mode=old'
山人覺得優點就是...
database用 limit 去限制每次查的大小,可以節省資料庫抓資料數量的負擔
用count去算database的內容也快
原本的SQL語法如...
$sql="select id,name,sex from humandata";
要改成二支
一支如第二點所說的 :
$sql="select id,name,sex from humandata limit ".($page*$p).",".$p;
另一支就是要算筆數
$sql="select count(*) from humandata";
或擔心二支SQL算出不用筆數,就偷懶這樣寫
$sql="select count(*) from (原sql語法) as a ";
接著...$totals_rows=mysql_result(mysql_query($sql),0,0);
一點點小小的心得供大家參考...也希望大家能多多指教
//自動產生分頁排序說明
//版本1.1
//開發者:羽山秋人
//時間:2007414
//第二版修正於:2007416
//使用方法
/* array_page(
$totals_rows $資料庫算出的總筆數,
$page $目前的頁碼常用
$p $每頁顯示的筆數
$px $每頁要顯示多少個【第 xx 頁】
$new_Link $跳頁用的網頁帶入值 ---> ?以後原本傳的值
P.S:需自行在 SQL 語法最後加上 limit ".($page*$p).",".$p;
P.S:$p、$px、$page 請加注在 檔案開頭 以上
limit ".($page*$p).",".$p; //加在原本沒分頁的SQL語法最後(mysql only)
//要加開網頁開頭的部分-------------------start
$p=10; //每頁顯示5筆
$px=5; //每頁顯示跳頁用的5筆
if(isset($page))
{
$page=$page;
}
else if(isset($_GET['page']))
{
$page=$_GET['page'];
}
else
{
$page=0;
}
//要加在網頁開頭的部分-------------------end
*/
function array_page($totals_rows,$page,$p,$px,$new_Link)
{
//傳說中的分頁
//$p=5; // 每頁顯示5筆
//$px=5; //每頁限制最多5頁,超過就用「下5頁」上5頁
$page_range_start=floor($page/$px)*$px;
$page_range_end=$page_range_start+$px;
//自動算幾頁
$totals_page=ceil($totals_rows/$p);
if($page_range_end>$totals_page)
{
$page_range_end=$totals_page;
}
//echo $page_range_start;
//echo "
";
//echo $page_range_end;
//echo "
";
if($page-($page%$px)>=$px)
{
echo "【上".$px."頁】 ";
}
if(($page-$page%$px)<$totals_page-$px)
{
if(($page+$px)>=$totals_page) //修正加上page的頁碼超過最終頁碼 2007/4/16
{
$temp=$totals_page-1;
}
else
{
$temp=$page+$px;
}
echo "【下".$px."頁】";
}
echo "
";
for($i=$page_range_start;$i<$page_range_end;$i++)
{
if($page==$i)
echo "【第 ".($i+1)." 頁】";
else
echo "【第 ".($i+1)." 頁】";
}
echo "
第【".($page+1)."】頁";
echo "合計共【".$totals_rows."】筆/共【".$totals_page."】頁";
//分頁結束
}
?>
//seal類別
class seal {
//屬性
public $name;
public $shape;
public $diameter;
public $length;
//建構子
function __construct($name,$shape,$diameter,$length) {
$this->name=$name;
$this->shape=$shape;
$this->diameter=$diameter;
$this->length=$length;
}
public function stamp()
{
echo "(印)".$this->name."\n";
}
}
header("Contet-type:text/plain;charset=big5");
//建立實體
$obj=new seal("高島","圓柱",10,60);
//屬性
echo"私的印章的形狀是「".$obj->shape."」\n";
//方法
$obj->stamp();
header("Content-Type:text/plain; charset=big5");
if(function_exists("mb_send_mail")){
echo "mb_send_mail函式已定義";
}else{
echo "mb_seind_mail函式沒定義";
}
print_r(get_defined_functions());/*列出已被定義的函數 */
print_r(get_defined_vars());/*列出已定義的變數 */
array array_map (mix callback , array $arr1 [, array $... ] )
function cube($n){
return($n * $n * $n);
}
$a = array(1, 2, 3, 4, 5);
$b = array_map("cube", $a);
print_r($b);
Array
(
[0] => 1
[1] => 8
[2] => 27
[3] => 64
[4] => 125
)
function show_Spanish($n, $m)
{
return("The number $n is called $m in Spanish");
}
function map_Spanish($n, $m)
{
return(array($n => $m));
}
$a = array(1, 2, 3, 4, 5);
$b = array("uno", "dos", "tres", "cuatro", "cinco");
$c = array_map("show_Spanish", $a, $b);
print_r($c);
$d = array_map("map_Spanish", $a , $b);
print_r($d);
// printout of $c
Array
(
[0] => The number 1 is called uno in Spanish
[1] => The number 2 is called dos in Spanish
[2] => The number 3 is called tres in Spanish
[3] => The number 4 is called cuatro in Spanish
[4] => The number 5 is called cinco in Spanish
)
// printout of $d
Array
(
[0] => Array
(
[1] => uno
)
[1] => Array
(
[2] => dos
)
[2] => Array
(
[3] => tres
)
[3] => Array
(
[4] => cuatro
)
[4] => Array
(
[5] => cinco
)
)
<HTML>
<HEAD>
<TITLE>簡易資料驗證</TITLE>
<script language="javascript">
function myFunction(){
try{
if(document.myForm.ID.value !="test"){
throw "idError"
}else if(document.myForm.psw.value !="test"){
throw"pswError"
}else{
alert("身份驗證通過")
}
}catch(e){
if(e=="idError")alert("帳號資料不符")
if(e=="pswError")alert("密碼資料不符")
}
}
</script>
</HEAD>
<BODY >
<center>
進入會員專區前,請先登入:<BR>
<form name="myForm">
帳號:<input type="text" name="ID" size="10"><br>
密碼:<input type="password" name="psw" size="10"><br>
<input type="button" value="身份驗證" onClick="myFunction()">
</form>
</BODY>
</HTML>