如果有 Session_id() 要延續,程式是這樣:
session_id($_GET["sid"]);
session_start();
本網誌記錄網站設計的一些內容筆記。 網站設計需要整合很多工具與概念。 我畢業自淡江電子計算機科學學系,算是科班出身。但我們那個年代(50年代,唉!LKK了!),網路還只是剛開始,相關的技術都是出社會以後陸續接觸學習。 網站的建立與設計,牽涉的範圍真的很廣泛。 網站的目地是甚麼?銷售網頁、電子購物、廣告、社群經營、互動、教學、客戶服務、網站應用程式、...... 需要整合的人才,程式設計師、資料庫管理師、網頁美編、文字編輯、多媒體製作等等。 這裡將記錄一個LKK對網站系統重新學習與複習,還有教學使用的一些資料。
CodeCharge checkbox 如果是只在 前端javascript 用,就不要用內建的 form->checkbox
如果在 html 使用 code-charge 內建的 checkbox ,他會 表現得跟單純的 html checkbox 不大一樣。
如果只是要在前端使用 javascript ,不會更新後端資料庫,就不要用CCS內建的checkbox!
他會不一樣!很頭大!
例如:寫 購物車,結帳,收件人與會員資料一樣,前面加個 check,讓用戶選擇,只要 click on, 就複製會員資料到收件人欄位裡,這個功能只要單純的 javascript 就可以了。
那麼,就使用單純的 html 的 checkbox 就好。千萬不要使用CCS內建的checkbox,會無法使用!
紀錄 下
<div class="form-group">
<label>請填寫送貨收件人資料 (請填入收件人真實姓名,以確保順利收件)</label>
</div>
<hr>
<div class="form-group">
<div class="checkbox">
<label for="contentorderssame_with_customer">
<input type="checkbox" id="contentorderssame_with_customer" onclick="same_with_customer()">
{res:same_with_customer}
</label>
</div>
</div>
<div class="form-group">
<label for="contentordersdelivery_name">{res:delivery_name}</label>
<input type="text" class="form-control" name="{delivery_name_Name}" value="{delivery_name}" id="contentordersdelivery_name">
</div>
<div class="form-group">
<label for="contentordersdelivery_telephone">{res:delivery_telephone}</label>
<input class="form-control" type="text" name="{delivery_telephone_Name}" value="{delivery_telephone}" id="contentordersdelivery_telephone">
</div>
<script language="JavaScript" type="text/javascript">
function same_with_customer()
{
if (document.getElementById("contentorderssame_with_customer").checked == true) {
document.getElementById("contentordersdelivery_name").value=document.getElementById("ss_customer_name").innerHTML;
document.getElementById("contentordersdelivery_telephone").value=document.getElementById("ss_customer_telephone").innerHTML;
} else {
document.getElementById("contentordersdelivery_name").value="";
document.getElementById("contentordersdelivery_telephone").value="";
}
}
</script>
CCS欄位有自動檢查是否需要有值的功能,只要在"Required"設成"Yes",就可以了。
但是,奇怪,怎麼搞了半天,都沒有!
搞了好久。
只好去查原始碼~~~
Common.php
Classes.php
找到 clsControl 裡面的 Validate() method
使用 die("text -- $varibale"); 來查看變數內容,以抓蟲。
一個一個試,才發現問題出在 clsError->addError() 這裡!?
再查進去,原來是
$this->Errors->addError($CCSLocales->GetText('CCS_RequiredField', $this->Caption));
離開時,要帶著 session_id 的參數,然後回來時,再帶回來該參數。
離開時: session_id()
回來時:
if (!empty($_REQUEST["retsid"])) {
session_id($_REQUEST["retsid"]);
session_start();
}
CCS 有內建的目錄產生功能。
在製作電子購物網站時,會有產品目錄,分層進去,然後才顯示產品目錄頁,然後才是產品單頁。
在製作目錄時,CCS的內建目錄可以有兩層結構。
為了簡化產品目錄結構,產品項目幾百個以內,大概分三層就可以了。
第一層是"館別",第二層是主目錄、第三層是子目錄,然後是產品。
如果將目錄製作成為 共用的 子網頁,可以被嵌入的子網頁。
那就分別製作 N個館別,然後顯示主目錄以及子目錄,共三層。
第一層、第二層,都只有顯示,不能連結。
第三層才可以連結。
由於目錄是製作成 嵌入式子網頁,會在每個網頁都出現。如果 傳入的 Get 參數有 Categories_id,那麼CCS的目錄結構就跟著跑了。所以,只要將要連結出去的 GET 參數 改成 category_id,跟原本的 categories_id 不一樣,就不會引動目錄跟著跑了!而要顯示第三層產品目錄的網頁,其 GET 參數跟著改成 category_id 這樣就完成了!
ERROR 1292 (22007): Truncated incorrect DOUBLE value
這個 Warning產生了。
經查是我這個個案是資料型態不一致造成的。
程式裡面,做了一個變數
DECLARE v_variable VARCHAR(100);
SET v_variable = IFNULL((SELECT abc FROM table WHERE id = 'aaa'),0);
IF (v_variable = 0) THEN
.........................
ELSE
...................
END IF;
v_variable 資料型態是文字,將他設為數字 0!
後面又拿文字來跟數值比較!所以產生了這個警告!
修改一下,就好了。
DECLARE v_variable VARCHAR(100);
SET v_variable = (SELECT abc FROM table WHERE id = 'aaa');
IF (v_variable IS NULL) THEN
.........................
ELSE
...................
END IF;
使用 DA 壓縮檔案後,
下載
然後,到另一個目錄
上傳
解壓縮!
結果:解壓縮還是回到原來的地方。
新的地方完全都沒有。
研究後才發現,原來 壓縮時有包含路徑。
所以,解壓縮後,還是存回原來的路徑。
正確的作法,應該是 下載到 Local,然後解壓縮,他會依照原先的路徑。然後,移動壓縮的目錄,用相對路徑,再重新壓縮。再上傳、解壓縮!完成!
只要用 if (empty({primary_key})) 就可以知道是否為新增模式了。 如果 {promary_key} 是空白的,那麼就是在新增模式;反之,就是更新模式。 以上。