登入 註冊
 

最新文章

頁: 1 2 3 4 5 6 7 8 9 10
1
會員註冊出現500錯誤,小弟我找不出問題,請各位大大幫忙看看是哪邊出錯了,感謝阿!
隨便打一個會員名

只要游標一碰到網頁其他地方,就跳出這個錯誤

chrome裡的報錯訊息,

這些.js無法執行,但程式碼並沒有錯誤的地方阿



硬是填滿註冊條件送出的話,會員畫面是報錯500的空白頁面~


請幫幫我,一個頭兩個大阿,感謝各位大大!
2
ECShop 模板修改、調整 / 分享jquery滾動選單原始碼
« 最新文章 由 andy 七月 13, 2019, 05:09:02 下午 »
如果你的網站選單已經固定,而且可以使用jquery的話,那麼這個選單可以為網站版面加分不少,你必須修改圖片和程式碼來符合你的需求...
附件是已經在一般環境下測試過的原始檔
但未曾套用於ecshop上
若是你成功用於ecshop上歡迎分享!

3
ECShop 模板修改、調整 / 如何防止駭客(詐騙集團)入侵網站
« 最新文章 由 andy 七月 13, 2019, 05:01:33 下午 »
隨著資訊快速變化,在網路中看似方便且實用的功能,通常會因為過度的修改而破壞原有的結構及安全性,就像大自然一樣,過度的開發其實背後佈滿危機,凡事適可而止,別讓方便帶來麻煩,ECSHOP是一套開放原始碼的網店系統,因此原始碼是攤在陽光下供大眾檢視的,也因此有漏洞可立即防堵,駭客入侵網站除了政治因素,多數是以竊取個資為目的,管理者應該要盡心維護消費者的個資安全...

1、絕不主動以電話聯繫消費者:
詐騙手法不斷翻新,讓人防不勝防,身為賣家的你,有責任做好把關,確保消費者個資不外洩,才能減少受騙機率,詐騙集團通常會在假期前一天入侵資料庫,以便取得最新交易資料,然後於假日第一天開始詐騙,他們的共通點就是使用電話尤其是手機,因此賣家應該反其道而行,並在網站上有明顯標示,除非消費者主動聯繫你...

2,對網站程式進行總體檢
被入侵過的網站通常會有多處遭到修改,他們會在檔案中植入很流行的【一句話】木馬程式,然後就可以遠端操控資料庫,因此最好花點時間掃瞄所有的程式和模版檔案,如果程式或模版檔案中包含可疑語句應該立即刪除,其中的XXXXX可能是 eval()或任何文字,總之,如果程式碼覺得有問題,應該立即採取措施...

3、增強後台安全
修改admin資料夾名稱不是安全的作法、駭客照樣有辦法得知,偏偏EC後台有完整的資料庫和檔案操作選項,因此駭客登入後台後就可以為所欲為,例如修改LBI庫文件,下載資料庫備份檔,嚴重一點的網店的匯款資料遭到竄改,總之任何事情都可能發生,因此應該將資料庫和檔案操作選項拿掉以策安全,雖然會造成些許不便,但總比被入侵好...

4、使用複雜的密碼
很多人為了容易記就隨便用一組密碼,如身分證、生日或電話號碼,連續的數字或字母,這些都很容易被破解,可要知道,多數入侵者功力不是很好,他們拿到密碼還要花錢請人解碼,越複雜的密碼破解時間越久,費用也就越高,因此容易放棄,不管 cpanel 或是 ecshop 後台,密碼越複雜越好,大寫字母+小寫字母+數字+萬用字元,混和使用,長度也不要低於8個字...

5、用IP管制萬無一失
固定IP 如同身分證字號,不會有重複,更不可能被盜用,用它來做把關,即使你把帳號密碼都給駭客,他也無法進入 ecshop 後台,以目前來說,應該算是最安全的作法,而且各種類型網站都可以用,比較麻煩的是浮動IP的部分,因為每次連線IP都不同,所以方法也比較麻煩...

6、隱藏 config.php 資料庫連線密碼
ecshop 2.7.3 截至目前還算安全,但是開放原始碼的程式誰也不感保證沒漏洞,通常等到有任被入侵才知道,因此事先防範非常重要, config.php 儲存著資料庫連線訊息,駭客可以透過工具的協助打開這個檔案,進而取得資料庫最高權限,會使用這種方法的人,多數是無法順利登入後台,對PHP也有一定的認識,因為比較費力,相對的,小網站對她不具吸引力...

4
ECShop 模板修改、調整 / ecshop 簡繁互轉
« 最新文章 由 andy 七月 13, 2019, 04:29:47 下午 »

    ecshop雖然有語言檔可切換不同語系,但是無法將內容一起轉換,也無法將有文字的按鈕轉換,除非將按鈕上的字改為文字,就像freecolor模板一樣,其他語言(如英文),會因文字長度不同,而破壞版面,翻譯網頁除了使用Google的翻譯工具外,『簡繁互轉』在兩岸互動頻繁下,不外乎是一個簡單快速的工具,在即將開放人民幣匯兌的同時,你是否做好準備了呢?


    在ecshop加入簡繁互轉非常簡單
首先加入底下的連結(切換按鈕),通常是 page_header.lbi 任意地方加上按鈕
代碼: [選擇]
<a href="javascript:void(0)" id="translateLink">简体中文</a>
   
       
然後,在page_footer.lbi最後加上
代碼: [選擇]
{insert_scripts files='tw_cn.js'}
<script type="text/javascript">
var defaultEncoding = 1;
var translateDelay = 0;
var cookieDomain = "handbike";
var msgToTraditionalChinese = "繁";
var msgToSimplifiedChinese = "简";
var translateButtonId = "translateLink";
</script>
tw_cn.js 放在 JS 目錄內,內容為 :
代碼: [選擇]
var defaultEncoding = 1;
var translateDelay = 0;
var cookieDomain = "handbike";
var msgToTraditionalChinese = "繁";
var msgToSimplifiedChinese = "简";
var translateButtonId = "translateLink";

var currentEncoding = defaultEncoding;
var targetEncodingCookie = "targetEncoding" + cookieDomain.replace(/\./g,"");
//swal(targetEncodingCookie);
var targetEncoding = ( getCookie(targetEncodingCookie) == null ? defaultEncoding : getCookie(targetEncodingCookie) );
//swal(targetEncoding);
var translateButtonObject;

function translateText( txt )
{
    if( txt == "" || txt == null )
        return "";
    if( currentEncoding == 1 && targetEncoding == 2 )
        return Simplized(txt);
    else if ( currentEncoding == 2 && targetEncoding == 1 )
        return Traditionalized(txt);
    else
        return txt;
}

function translateBody( fobj )
{
    if( typeof( fobj ) == "object" )
        var objs = fobj.childNodes;
    else
        var objs = document.body.childNodes;

    for(var i=0;i<objs.length;i++)
    {
        var obj=objs.item(i);
        if( "||BR|HR|TEXTAREA|SCRIPT|EMBED|OBJECT|".indexOf( "|"+obj.tagName+"|" ) > 0 || obj == translateButtonObject )
        //if( "||BR|HR|TEXTAREA|".indexOf( "|"+obj.tagName+"|" ) > 0 || obj == translateButtonObject )
            continue;
        if( obj.title != "" && obj.title != null )
            obj.title = translateText( obj.title );
        if( obj.alt != "" && obj.alt != null )
            obj.alt = translateText( obj.alt );
        if( obj.tagName == "INPUT" && obj.value != "" && obj.type != "text" && obj.type != "hidden" )
            obj.value = translateText( obj.value );
        if( obj.nodeType == 3 )
            obj.data = translateText( obj.data );
        else
            translateBody(obj);
    }
}

function translatePage()
{
    if( targetEncoding == 1 )
    {
        currentEncoding  = 1;
        targetEncoding = 2;
        translateButtonObject.innerHTML = msgToTraditionalChinese;
        setCookie( targetEncodingCookie, targetEncoding, 7 );
        translateBody();
    }
    else if( targetEncoding == 2 )
    {
        currentEncoding  = 2;
        targetEncoding = 1;
        translateButtonObject.innerHTML = msgToSimplifiedChinese;
        setCookie( targetEncodingCookie, targetEncoding, 7 );
        translateBody();
    }
}

function JTPYStr()
{
    return '万与丑专业丛东丝丢两严丧个丬丰临为丽举么义乌乐乔习乡书买乱争于亏云亘亚产亩亲亵亸亿仅从仑仓仪们价众优伙会伛伞伟传伤伥伦伧伪伫体余佣佥侠侣侥侦侧侨侩侪侬俣俦俨俩俪俭债倾偬偻偾偿傥傧储傩儿兑兖党兰关兴兹养兽冁内冈册写军农冢冯冲决况冻净凄凉凌减凑凛几凤凫凭凯击凼凿刍划刘则刚创删别刬刭刽刿剀剂剐剑剥剧劝办务劢动励劲劳势勋勐勚匀匦匮区医华协单卖卢卤卧卫却卺厂厅历厉压厌厍厕厢厣厦厨厩厮县参叆叇双发变叙叠叶号叹叽吁后吓吕吗吣吨听启吴呒呓呕呖呗员呙呛呜咏咔咙咛咝咤咴咸哌响哑哒哓哔哕哗哙哜哝哟唛唝唠唡唢唣唤唿啧啬啭啮啰啴啸喷喽喾嗫呵嗳嘘嘤嘱噜噼嚣嚯团园囱围囵国图圆圣圹场坂坏块坚坛坜坝坞坟坠垄垅垆垒垦垧垩垫垭垯垱垲垴埘埙埚埝埯堑堕塆墙壮声壳壶壸处备复够头夸夹夺奁奂奋奖奥妆妇妈妩妪妫姗姜娄娅娆娇娈娱娲娴婳婴婵婶媪嫒嫔嫱嬷孙学孪宁宝实宠审宪宫宽宾寝对寻导寿将尔尘尧尴尸尽层屃屉届属屡屦屿岁岂岖岗岘岙岚岛岭岳岽岿峃峄峡峣峤峥峦崂崃崄崭嵘嵚嵛嵝嵴巅巩巯币帅师帏帐帘帜带帧帮帱帻帼幂幞干并广庄庆庐庑库应庙庞废庼廪开异弃张弥弪弯弹强归当录彟彦彻径徕御忆忏忧忾怀态怂怃怄怅怆怜总怼怿恋恳恶恸恹恺恻恼恽悦悫悬悭悯惊惧惨惩惫惬惭惮惯愍愠愤愦愿慑慭憷懑懒懔戆戋戏戗战戬户扎扑扦执扩扪扫扬扰抚抛抟抠抡抢护报担拟拢拣拥拦拧拨择挂挚挛挜挝挞挟挠挡挢挣挤挥挦捞损捡换捣据捻掳掴掷掸掺掼揸揽揿搀搁搂搅携摄摅摆摇摈摊撄撑撵撷撸撺擞攒敌敛数斋斓斗斩断无旧时旷旸昙昼昽显晋晒晓晔晕晖暂暧札术朴机杀杂权条来杨杩杰极构枞枢枣枥枧枨枪枫枭柜柠柽栀栅标栈栉栊栋栌栎栏树栖样栾桊桠桡桢档桤桥桦桧桨桩梦梼梾检棂椁椟椠椤椭楼榄榇榈榉槚槛槟槠横樯樱橥橱橹橼檐檩欢欤欧歼殁殇残殒殓殚殡殴毁毂毕毙毡毵氇气氢氩氲汇汉污汤汹沓沟没沣沤沥沦沧沨沩沪沵泞泪泶泷泸泺泻泼泽泾洁洒洼浃浅浆浇浈浉浊测浍济浏浐浑浒浓浔浕涂涌涛涝涞涟涠涡涢涣涤润涧涨涩淀渊渌渍渎渐渑渔渖渗温游湾湿溃溅溆溇滗滚滞滟滠满滢滤滥滦滨滩滪漤潆潇潋潍潜潴澜濑濒灏灭灯灵灾灿炀炉炖炜炝点炼炽烁烂烃烛烟烦烧烨烩烫烬热焕焖焘煅煳熘爱爷牍牦牵牺犊犟状犷犸犹狈狍狝狞独狭狮狯狰狱狲猃猎猕猡猪猫猬献獭玑玙玚玛玮环现玱玺珉珏珐珑珰珲琎琏琐琼瑶瑷璇璎瓒瓮瓯电画畅畲畴疖疗疟疠疡疬疮疯疱疴痈痉痒痖痨痪痫痴瘅瘆瘗瘘瘪瘫瘾瘿癞癣癫癯皑皱皲盏盐监盖盗盘眍眦眬着睁睐睑瞒瞩矫矶矾矿砀码砖砗砚砜砺砻砾础硁硅硕硖硗硙硚确硷碍碛碜碱碹磙礼祎祢祯祷祸禀禄禅离秃秆种积称秽秾稆税稣稳穑穷窃窍窑窜窝窥窦窭竖竞笃笋笔笕笺笼笾筑筚筛筜筝筹签简箓箦箧箨箩箪箫篑篓篮篱簖籁籴类籼粜粝粤粪粮糁糇紧絷纟纠纡红纣纤纥约级纨纩纪纫纬纭纮纯纰纱纲纳纴纵纶纷纸纹纺纻纼纽纾线绀绁绂练组绅细织终绉绊绋绌绍绎经绐绑绒结绔绕绖绗绘给绚绛络绝绞统绠绡绢绣绤绥绦继绨绩绪绫绬续绮绯绰绱绲绳维绵绶绷绸绹绺绻综绽绾绿缀缁缂缃缄缅缆缇缈缉缊缋缌缍缎缏缐缑缒缓缔缕编缗缘缙缚缛缜缝缞缟缠缡缢缣缤缥缦缧缨缩缪缫缬缭缮缯缰缱缲缳缴缵罂网罗罚罢罴羁羟羡翘翙翚耢耧耸耻聂聋职聍联聩聪肃肠肤肷肾肿胀胁胆胜胧胨胪胫胶脉脍脏脐脑脓脔脚脱脶脸腊腌腘腭腻腼腽腾膑臜舆舣舰舱舻艰艳艹艺节芈芗芜芦苁苇苈苋苌苍苎苏苘苹茎茏茑茔茕茧荆荐荙荚荛荜荞荟荠荡荣荤荥荦荧荨荩荪荫荬荭荮药莅莜莱莲莳莴莶获莸莹莺莼萚萝萤营萦萧萨葱蒇蒉蒋蒌蓝蓟蓠蓣蓥蓦蔷蔹蔺蔼蕲蕴薮藁藓虏虑虚虫虬虮虽虾虿蚀蚁蚂蚕蚝蚬蛊蛎蛏蛮蛰蛱蛲蛳蛴蜕蜗蜡蝇蝈蝉蝎蝼蝾螀螨蟏衅衔补衬衮袄袅袆袜袭袯装裆裈裢裣裤裥褛褴襁襕见观觃规觅视觇览觉觊觋觌觍觎觏觐觑觞触觯詟誉誊讠计订讣认讥讦讧讨让讪讫训议讯记讱讲讳讴讵讶讷许讹论讻讼讽设访诀证诂诃评诅识诇诈诉诊诋诌词诎诏诐译诒诓诔试诖诗诘诙诚诛诜话诞诟诠诡询诣诤该详诧诨诩诪诫诬语诮误诰诱诲诳说诵诶请诸诹诺读诼诽课诿谀谁谂调谄谅谆谇谈谊谋谌谍谎谏谐谑谒谓谔谕谖谗谘谙谚谛谜谝谞谟谠谡谢谣谤谥谦谧谨谩谪谫谬谭谮谯谰谱谲谳谴谵谶谷豮贝贞负贠贡财责贤败账货质贩贪贫贬购贮贯贰贱贲贳贴贵贶贷贸费贺贻贼贽贾贿赀赁赂赃资赅赆赇赈赉赊赋赌赍赎赏赐赑赒赓赔赕赖赗赘赙赚赛赜赝赞赟赠赡赢赣赪赵赶趋趱趸跃跄跖跞践跶跷跸跹跻踊踌踪踬踯蹑蹒蹰蹿躏躜躯车轧轨轩轪轫转轭轮软轰轱轲轳轴轵轶轷轸轹轺轻轼载轾轿辀辁辂较辄辅辆辇辈辉辊辋辌辍辎辏辐辑辒输辔辕辖辗辘辙辚辞辩辫边辽达迁过迈运还这进远违连迟迩迳迹适选逊递逦逻遗遥邓邝邬邮邹邺邻郁郄郏郐郑郓郦郧郸酝酦酱酽酾酿释里鉅鉴銮錾钆钇针钉钊钋钌钍钎钏钐钑钒钓钔钕钖钗钘钙钚钛钝钞钟钠钡钢钣钤钥钦钧钨钩钪钫钬钭钮钯钰钱钲钳钴钵钶钷钸钹钺钻钼钽钾钿铀铁铂铃铄铅铆铈铉铊铋铍铎铏铐铑铒铕铗铘铙铚铛铜铝铞铟铠铡铢铣铤铥铦铧铨铪铫铬铭铮铯铰铱铲铳铴铵银铷铸铹铺铻铼铽链铿销锁锂锃锄锅锆锇锈锉锊锋锌锍锎锏锐锑锒锓锔锕锖锗错锚锜锞锟锠锡锢锣锤锥锦锨锩锫锬锭键锯锰锱锲锳锴锵锶锷锸锹锺锻锼锽锾锿镀镁镂镃镆镇镈镉镊镌镍镎镏镐镑镒镕镖镗镙镚镛镜镝镞镟镠镡镢镣镤镥镦镧镨镩镪镫镬镭镮镯镰镱镲镳镴镶长门闩闪闫闬闭问闯闰闱闲闳间闵闶闷闸闹闺闻闼闽闾闿阀阁阂阃阄阅阆阇阈阉阊阋阌阍阎阏阐阑阒阓阔阕阖阗阘阙阚阛队阳阴阵阶际陆陇陈陉陕陧陨险随隐隶隽难雏雠雳雾霁霉霭靓静靥鞑鞒鞯鞴韦韧韨韩韪韫韬韵页顶顷顸项顺须顼顽顾顿颀颁颂颃预颅领颇颈颉颊颋颌颍颎颏颐频颒颓颔颕颖颗题颙颚颛颜额颞颟颠颡颢颣颤颥颦颧风飏飐飑飒飓飔飕飖飗飘飙飚飞飨餍饤饥饦饧饨饩饪饫饬饭饮饯饰饱饲饳饴饵饶饷饸饹饺饻饼饽饾饿馀馁馂馃馄馅馆馇馈馉馊馋馌馍馎馏馐馑馒馓馔馕马驭驮驯驰驱驲驳驴驵驶驷驸驹驺驻驼驽驾驿骀骁骂骃骄骅骆骇骈骉骊骋验骍骎骏骐骑骒骓骔骕骖骗骘骙骚骛骜骝骞骟骠骡骢骣骤骥骦骧髅髋髌鬓魇魉鱼鱽鱾鱿鲀鲁鲂鲄鲅鲆鲇鲈鲉鲊鲋鲌鲍鲎鲏鲐鲑鲒鲓鲔鲕鲖鲗鲘鲙鲚鲛鲜鲝鲞鲟鲠鲡鲢鲣鲤鲥鲦鲧鲨鲩鲪鲫鲬鲭鲮鲯鲰鲱鲲鲳鲴鲵鲶鲷鲸鲹鲺鲻鲼鲽鲾鲿鳀鳁鳂鳃鳄鳅鳆鳇鳈鳉鳊鳋鳌鳍鳎鳏鳐鳑鳒鳓鳔鳕鳖鳗鳘鳙鳛鳜鳝鳞鳟鳠鳡鳢鳣鸟鸠鸡鸢鸣鸤鸥鸦鸧鸨鸩鸪鸫鸬鸭鸮鸯鸰鸱鸲鸳鸴鸵鸶鸷鸸鸹鸺鸻鸼鸽鸾鸿鹀鹁鹂鹃鹄鹅鹆鹇鹈鹉鹊鹋鹌鹍鹎鹏鹐鹑鹒鹓鹔鹕鹖鹗鹘鹚鹛鹜鹝鹞鹟鹠鹡鹢鹣鹤鹥鹦鹧鹨鹩鹪鹫鹬鹭鹯鹰鹱鹲鹳鹴鹾麦麸黄黉黡黩黪黾鼋鼌鼍鼗鼹齄齐齑齿龀龁龂龃龄龅龆龇龈龉龊龋龌龙龚龛龟志制咨只里系范松没尝尝闹面准钟别闲干尽脏拼';
}

function FTPYStr()
{
    return '萬與醜專業叢東絲丟兩嚴喪個爿豐臨為麗舉麼義烏樂喬習鄉書買亂爭於虧雲亙亞產畝親褻嚲億僅從侖倉儀們價眾優夥會傴傘偉傳傷倀倫傖偽佇體餘傭僉俠侶僥偵側僑儈儕儂俁儔儼倆儷儉債傾傯僂僨償儻儐儲儺兒兌兗黨蘭關興茲養獸囅內岡冊寫軍農塚馮衝決況凍淨淒涼淩減湊凜幾鳳鳧憑凱擊氹鑿芻劃劉則剛創刪別剗剄劊劌剴劑剮劍剝劇勸辦務勱動勵勁勞勢勳猛勩勻匭匱區醫華協單賣盧鹵臥衛卻巹廠廳曆厲壓厭厙廁廂厴廈廚廄廝縣參靉靆雙發變敘疊葉號歎嘰籲後嚇呂嗎唚噸聽啟吳嘸囈嘔嚦唄員咼嗆嗚詠哢嚨嚀噝吒噅鹹呱響啞噠嘵嗶噦嘩噲嚌噥喲嘜嗊嘮啢嗩唕喚呼嘖嗇囀齧囉嘽嘯噴嘍嚳囁嗬噯噓嚶囑嚕劈囂謔團園囪圍圇國圖圓聖壙場阪壞塊堅壇壢壩塢墳墜壟壟壚壘墾坰堊墊埡墶壋塏堖塒塤堝墊垵塹墮壪牆壯聲殼壺壼處備複夠頭誇夾奪奩奐奮獎奧妝婦媽嫵嫗媯姍薑婁婭嬈嬌孌娛媧嫻嫿嬰嬋嬸媼嬡嬪嬙嬤孫學孿寧寶實寵審憲宮寬賓寢對尋導壽將爾塵堯尷屍盡層屭屜屆屬屢屨嶼歲豈嶇崗峴嶴嵐島嶺嶽崠巋嶨嶧峽嶢嶠崢巒嶗崍嶮嶄嶸嶔崳嶁脊巔鞏巰幣帥師幃帳簾幟帶幀幫幬幘幗冪襆幹並廣莊慶廬廡庫應廟龐廢廎廩開異棄張彌弳彎彈強歸當錄彠彥徹徑徠禦憶懺憂愾懷態慫憮慪悵愴憐總懟懌戀懇惡慟懨愷惻惱惲悅愨懸慳憫驚懼慘懲憊愜慚憚慣湣慍憤憒願懾憖怵懣懶懍戇戔戲戧戰戩戶紮撲扡執擴捫掃揚擾撫拋摶摳掄搶護報擔擬攏揀擁攔擰撥擇掛摯攣掗撾撻挾撓擋撟掙擠揮撏撈損撿換搗據撚擄摑擲撣摻摜摣攬撳攙擱摟攪攜攝攄擺搖擯攤攖撐攆擷擼攛擻攢敵斂數齋斕鬥斬斷無舊時曠暘曇晝曨顯晉曬曉曄暈暉暫曖劄術樸機殺雜權條來楊榪傑極構樅樞棗櫪梘棖槍楓梟櫃檸檉梔柵標棧櫛櫳棟櫨櫟欄樹棲樣欒棬椏橈楨檔榿橋樺檜槳樁夢檮棶檢欞槨櫝槧欏橢樓欖櫬櫚櫸檟檻檳櫧橫檣櫻櫫櫥櫓櫞簷檁歡歟歐殲歿殤殘殞殮殫殯毆毀轂畢斃氈毿氌氣氫氬氳彙漢汙湯洶遝溝沒灃漚瀝淪滄渢溈滬濔濘淚澩瀧瀘濼瀉潑澤涇潔灑窪浹淺漿澆湞溮濁測澮濟瀏滻渾滸濃潯濜塗湧濤澇淶漣潿渦溳渙滌潤澗漲澀澱淵淥漬瀆漸澠漁瀋滲溫遊灣濕潰濺漵漊潷滾滯灩灄滿瀅濾濫灤濱灘澦濫瀠瀟瀲濰潛瀦瀾瀨瀕灝滅燈靈災燦煬爐燉煒熗點煉熾爍爛烴燭煙煩燒燁燴燙燼熱煥燜燾煆糊溜愛爺牘犛牽犧犢強狀獷獁猶狽麅獮獰獨狹獅獪猙獄猻獫獵獼玀豬貓蝟獻獺璣璵瑒瑪瑋環現瑲璽瑉玨琺瓏璫琿璡璉瑣瓊瑤璦璿瓔瓚甕甌電畫暢佘疇癤療瘧癘瘍鬁瘡瘋皰屙癰痙癢瘂癆瘓癇癡癉瘮瘞瘺癟癱癮癭癩癬癲臒皚皺皸盞鹽監蓋盜盤瞘眥矓著睜睞瞼瞞矚矯磯礬礦碭碼磚硨硯碸礪礱礫礎硜矽碩硤磽磑礄確鹼礙磧磣堿镟滾禮禕禰禎禱禍稟祿禪離禿稈種積稱穢穠穭稅穌穩穡窮竊竅窯竄窩窺竇窶豎競篤筍筆筧箋籠籩築篳篩簹箏籌簽簡籙簀篋籜籮簞簫簣簍籃籬籪籟糴類秈糶糲粵糞糧糝餱緊縶糸糾紆紅紂纖紇約級紈纊紀紉緯紜紘純紕紗綱納紝縱綸紛紙紋紡紵紖紐紓線紺絏紱練組紳細織終縐絆紼絀紹繹經紿綁絨結絝繞絰絎繪給絢絳絡絕絞統綆綃絹繡綌綏絛繼綈績緒綾緓續綺緋綽緔緄繩維綿綬繃綢綯綹綣綜綻綰綠綴緇緙緗緘緬纜緹緲緝縕繢緦綞緞緶線緱縋緩締縷編緡緣縉縛縟縝縫縗縞纏縭縊縑繽縹縵縲纓縮繆繅纈繚繕繒韁繾繰繯繳纘罌網羅罰罷羆羈羥羨翹翽翬耮耬聳恥聶聾職聹聯聵聰肅腸膚膁腎腫脹脅膽勝朧腖臚脛膠脈膾髒臍腦膿臠腳脫腡臉臘醃膕齶膩靦膃騰臏臢輿艤艦艙艫艱豔艸藝節羋薌蕪蘆蓯葦藶莧萇蒼苧蘇檾蘋莖蘢蔦塋煢繭荊薦薘莢蕘蓽蕎薈薺蕩榮葷滎犖熒蕁藎蓀蔭蕒葒葤藥蒞蓧萊蓮蒔萵薟獲蕕瑩鶯蓴蘀蘿螢營縈蕭薩蔥蕆蕢蔣蔞藍薊蘺蕷鎣驀薔蘞藺藹蘄蘊藪槁蘚虜慮虛蟲虯蟣雖蝦蠆蝕蟻螞蠶蠔蜆蠱蠣蟶蠻蟄蛺蟯螄蠐蛻蝸蠟蠅蟈蟬蠍螻蠑螿蟎蠨釁銜補襯袞襖嫋褘襪襲襏裝襠褌褳襝褲襇褸襤繈襴見觀覎規覓視覘覽覺覬覡覿覥覦覯覲覷觴觸觶讋譽謄訁計訂訃認譏訐訌討讓訕訖訓議訊記訒講諱謳詎訝訥許訛論訩訟諷設訪訣證詁訶評詛識詗詐訴診詆謅詞詘詔詖譯詒誆誄試詿詩詰詼誠誅詵話誕詬詮詭詢詣諍該詳詫諢詡譸誡誣語誚誤誥誘誨誑說誦誒請諸諏諾讀諑誹課諉諛誰諗調諂諒諄誶談誼謀諶諜謊諫諧謔謁謂諤諭諼讒諮諳諺諦謎諞諝謨讜謖謝謠謗諡謙謐謹謾謫譾謬譚譖譙讕譜譎讞譴譫讖穀豶貝貞負貟貢財責賢敗賬貨質販貪貧貶購貯貫貳賤賁貰貼貴貺貸貿費賀貽賊贄賈賄貲賃賂贓資賅贐賕賑賚賒賦賭齎贖賞賜贔賙賡賠賧賴賵贅賻賺賽賾贗讚贇贈贍贏贛赬趙趕趨趲躉躍蹌蹠躒踐躂蹺蹕躚躋踴躊蹤躓躑躡蹣躕躥躪躦軀車軋軌軒軑軔轉軛輪軟轟軲軻轤軸軹軼軤軫轢軺輕軾載輊轎輈輇輅較輒輔輛輦輩輝輥輞輬輟輜輳輻輯轀輸轡轅轄輾轆轍轔辭辯辮邊遼達遷過邁運還這進遠違連遲邇逕跡適選遜遞邐邏遺遙鄧鄺鄔郵鄒鄴鄰鬱郤郟鄶鄭鄆酈鄖鄲醞醱醬釅釃釀釋裏钜鑒鑾鏨釓釔針釘釗釙釕釷釺釧釤鈒釩釣鍆釹鍚釵鈃鈣鈈鈦鈍鈔鍾鈉鋇鋼鈑鈐鑰欽鈞鎢鉤鈧鈁鈥鈄鈕鈀鈺錢鉦鉗鈷缽鈳鉕鈽鈸鉞鑽鉬鉭鉀鈿鈾鐵鉑鈴鑠鉛鉚鈰鉉鉈鉍鈹鐸鉶銬銠鉺銪鋏鋣鐃銍鐺銅鋁銱銦鎧鍘銖銑鋌銩銛鏵銓鉿銚鉻銘錚銫鉸銥鏟銃鐋銨銀銣鑄鐒鋪鋙錸鋱鏈鏗銷鎖鋰鋥鋤鍋鋯鋨鏽銼鋝鋒鋅鋶鐦鐧銳銻鋃鋟鋦錒錆鍺錯錨錡錁錕錩錫錮鑼錘錐錦鍁錈錇錟錠鍵鋸錳錙鍥鍈鍇鏘鍶鍔鍤鍬鍾鍛鎪鍠鍰鎄鍍鎂鏤鎡鏌鎮鎛鎘鑷鐫鎳鎿鎦鎬鎊鎰鎔鏢鏜鏍鏰鏞鏡鏑鏃鏇鏐鐔钁鐐鏷鑥鐓鑭鐠鑹鏹鐙鑊鐳鐶鐲鐮鐿鑔鑣鑞鑲長門閂閃閆閈閉問闖閏闈閑閎間閔閌悶閘鬧閨聞闥閩閭闓閥閣閡閫鬮閱閬闍閾閹閶鬩閿閽閻閼闡闌闃闠闊闋闔闐闒闕闞闤隊陽陰陣階際陸隴陳陘陝隉隕險隨隱隸雋難雛讎靂霧霽黴靄靚靜靨韃鞽韉韝韋韌韍韓韙韞韜韻頁頂頃頇項順須頊頑顧頓頎頒頌頏預顱領頗頸頡頰頲頜潁熲頦頤頻頮頹頷頴穎顆題顒顎顓顏額顳顢顛顙顥纇顫顬顰顴風颺颭颮颯颶颸颼颻飀飄飆飆飛饗饜飣饑飥餳飩餼飪飫飭飯飲餞飾飽飼飿飴餌饒餉餄餎餃餏餅餑餖餓餘餒餕餜餛餡館餷饋餶餿饞饁饃餺餾饈饉饅饊饌饢馬馭馱馴馳驅馹駁驢駔駛駟駙駒騶駐駝駑駕驛駘驍罵駰驕驊駱駭駢驫驪騁驗騂駸駿騏騎騍騅騌驌驂騙騭騤騷騖驁騮騫騸驃騾驄驏驟驥驦驤髏髖髕鬢魘魎魚魛魢魷魨魯魴魺鮁鮃鯰鱸鮋鮓鮒鮊鮑鱟鮍鮐鮭鮚鮳鮪鮞鮦鰂鮜鱠鱭鮫鮮鮺鯗鱘鯁鱺鰱鰹鯉鰣鰷鯀鯊鯇鮶鯽鯒鯖鯪鯕鯫鯡鯤鯧鯝鯢鯰鯛鯨鯵鯴鯔鱝鰈鰏鱨鯷鰮鰃鰓鱷鰍鰒鰉鰁鱂鯿鰠鼇鰭鰨鰥鰩鰟鰜鰳鰾鱈鱉鰻鰵鱅鰼鱖鱔鱗鱒鱯鱤鱧鱣鳥鳩雞鳶鳴鳲鷗鴉鶬鴇鴆鴣鶇鸕鴨鴞鴦鴒鴟鴝鴛鴬鴕鷥鷙鴯鴰鵂鴴鵃鴿鸞鴻鵐鵓鸝鵑鵠鵝鵒鷳鵜鵡鵲鶓鵪鶤鵯鵬鵮鶉鶊鵷鷫鶘鶡鶚鶻鶿鶥鶩鷊鷂鶲鶹鶺鷁鶼鶴鷖鸚鷓鷚鷯鷦鷲鷸鷺鸇鷹鸌鸏鸛鸘鹺麥麩黃黌黶黷黲黽黿鼂鼉鞀鼴齇齊齏齒齔齕齗齟齡齙齠齜齦齬齪齲齷龍龔龕龜誌製谘隻裡係範鬆冇嚐嘗鬨麵準鐘彆閒乾儘臟拚';
}

function Traditionalized( cc )
{
    var str = '';
    var ss = JTPYStr();
    var tt = FTPYStr();

    for(var i = 0 ; i < cc.length ; i++ )
    {
        if( cc.charCodeAt(i) > 10000 && ss.indexOf( cc.charAt(i) ) != -1 )
            str += tt.charAt( ss.indexOf( cc.charAt(i) ) );
          else
              str += cc.charAt(i);
    }
    return str;
}

function Simplized(cc){
    var str = '';
    var ss = JTPYStr();
    var tt = FTPYStr();

    for( var i=0 ; i < cc.length ; i++)
    {
        if( cc.charCodeAt(i) > 10000 && tt.indexOf( cc.charAt(i) ) != -1 )
            str += ss.charAt( tt.indexOf( cc.charAt(i) ) );
          else
              str += cc.charAt(i);
    }
    return str;
}

function setCookie(name,value,days)
{
    if (days)
    {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(name)
{
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++)
    {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function translateInitilization()
{
    translateButtonObject = document.getElementById( translateButtonId );
    if ( translateButtonObject )
    {
        with( translateButtonObject )
        {
            if(typeof(document.all)!="object")
            {
                href="javascript:translatePage();";
            }
            else
            {
                href="#";
                onclick = new Function( "translatePage(); return false;");
            }
        }

        if ( currentEncoding != targetEncoding )
        {
            setTimeout("translateBody()",translateDelay);
            if( targetEncoding == 1 )
                translateButtonObject.innerHTML = msgToSimplifiedChinese;
            else
                translateButtonObject.innerHTML = msgToTraditionalChinese;
        }
    }
}
handbike 換成你的首頁網址
5
ECShop 模板修改、調整 / ECSHOP 讓手機也能顯示首頁主廣告
« 最新文章 由 andy 七月 13, 2019, 03:55:51 下午 »

    很多人仍在使用非響應式的模板,但是非響應式模板中的首頁主廣告使用FLSH的,在行動設備都無法顯示的,有人乾脆使用GIF代替,可是這樣會使圖片體積過大,而且不易維護,使用 OwlCarousel2 不但能解決這些問題,縮小圖片體積進而加快載入度,還支援手指拖動、多圖滾動、響應式等功能...


    首先到 下載 OwlCarousel2,解壓縮之後如圖:



    在 demos 資料夾內有著各種展示頁面,可自行根據需要配置,以 responsive.html(響應式) 為例 必須加入的檔案有四個,如圖:



    這個插件可以用在任何形式的網頁,也不限定使用HTML5 在 docs 資料夾內也有相關的事件、選項等的說明,自行參考 當你完成後,應該類似下圖:





    如果你是本站 VIP,可以至 VIP 室 下載 OwlCarousel2 插件

    OwlCarousel2 DEMO

6
ECShop 模板修改、調整 / 讓 ECSHOP 對話框更漂亮
« 最新文章 由 andy 七月 13, 2019, 03:36:36 下午 »

    你還在使用傳統的對框嗎?是不是覺得有點醜了,用 sweetaler 來美化一下即可,在 ECSHOP 中對話框還真不少,你可以針對長使用的頁面修改即可(如商品詳情頁的加入購物車與收藏最愛),使用方法極為簡單,由於不依賴 jquery 因此不必擔心衝突問題...




    請先https://github.com/t4t5/sweetalert/archive/master.zip 下載 sweetaler,解壓縮之後將 dist 目錄上傳至 ECSHOP 根目錄,然後編輯麼目錄的 library/page_header.lbi,在最前面加入:

    接著只需將彈出框的 alert 改為 swal 即可 這是最簡單的修改,如果你希望有更多的呈現方式,請參考 這個頁面 的語法修改


    對話框的語法多數藏在 JS 檔中,例如商品詳情頁的加入購物車與收藏最愛都是調用 common.js,因此你可以該檔中找到修改的地方:
代碼: [選擇]
switch(result.confirm_type)
      {
        case '1' :
                  swal({
  title: "下一步?",
  text: result.message,
  type: "warning",
  showCancelButton: true,
  confirmButtonColor: "#DD6B55",
  closeOnConfirm: false
},
function(){
  location.href = cart_url;
});

          break;
        case '2' :
                  swal({
  title: "下一步?",
  text: result.message,
  type: "info",
  showCancelButton: true,
  confirmButtonColor: "#DD6B55",
 closeOnConfirm: true,
},
function(isConfirm){
  if (!isConfirm) {
         location.href = cart_url;
  }
});
          break;
        case '3' :
          location.href = cart_url;
          break;
        default :
          break;
      }
........

 swal(result.message);
   


7
ECShop 安裝、設定、使用 / 虛擬主機安裝 ECSHOP
« 最新文章 由 andy 七月 13, 2019, 03:01:08 下午 »
如果你有按照前面的步驟,那麼安裝過程應該會很順利才對,ECSHOP的安裝其實很簡單

    首先打開瀏覽器,在網址列輸入根目錄網址+資料夾名稱,本例為/ecshop,如果你把檔案直接上傳至根目錄,而不是用子資料夾裝著,那只需輸入首頁網址,如 即可,按下「Enter」開始安裝:



    點選你要安裝的語言,仔細閱讀版權聲明。
勾選「我已仔細閱讀,並同意上述條款中的所有內容」,按「下一步:配置安裝環境」:



    &gt;
若有出現紅字,表示該資料夾權限錯誤,請至FTP檢查
全部綠色,表示權限設定正確,按「下一步:配置系統」:



    A、資料庫主機:通常是「localhost]。如果你使用外部資料庫,請輸入外部資料庫位址或IP,端口號:保持預設即可
B、會員名、密碼: 資料庫帳號及密碼
C、資料庫名:按右側的「搜」從下拉方塊中選擇要使用的資料庫名稱
D、表前綴:會在每個資料表前面加上此字串,預設為ecs_,為了安全起見,建議更改,另外,若要安裝多套ECSHOP於同一個資料庫時,只要將表前綴設成不同即可。
E、管理員姓名、登入密碼:管理員登入後台用的帳號密碼。
F、設定時區:選擇你所在地區時差
G、禁用驗證碼:管理員登入後台用是否使用驗證碼,勾選為不使用。
H、安裝測試資料:如果不是測試用,可以不用裝。
I、都設定好後,按下「立即安裝」:



    莫名其妙就裝好了,簡單吧!
先登入後台設定系統與新增商品去:
8
ECShop 模板修改、調整 / ecshop留言或評論自動換行
« 最新文章 由 andy 七月 09, 2019, 03:21:09 下午 »
當訪客留言或評論輸入多行內容時
在ECSHOP仍然顯示成同一行
這樣容易造成閱讀障礙,如圖:


此時可以使用smarty的變數節器nl2br
使內容依消費者輸入方式換行
留言板在message_list.lbi 的
{$msg.msg_content} 改成  {$msg.msg_content|nl2br}

評論在comments_list.lbi 的
 {$comment.content} 改成 {$comment.content|nl2br}

結果如圖:
9
we-shop.net 訊息 / WAMP安裝圖文教學(本機伺服器安裝)
« 最新文章 由 andy 七月 09, 2019, 03:00:36 下午 »
由於AppServ到PHP5.2就停住了不再更新,而PHP5.3以後以捨去部分函數,因此PHP5.2的程式如果執行在PHP5.3以上的伺服器環境就會出現警告或錯誤,特別是ECSHOP,一直停留在PHP5.2以下沒有更新,如果主機商突然升級PHP版本,勢必出現許多錯誤甚至影響正常運作,如果你在本機安裝PHP5.3以上的伺服器環境,就可以測試你的網站可能會出現哪些問題,盡早做出準備,將出錯檔案修正,如果你是本站2014/10月以後安裝的ECSHOP,已經修正支援PHP5.4以上版本了。

如果你之前安裝過 AppServ 請先解除安裝(解除安裝 AppServ 並不會刪除原有的網站程式和資料庫),然後到http://www.wampserver.com官網按照你的作業系統下載最新版的WAMP(如圖):




也可以點擊這裡直接下載http://sourceforge.net/projects/wampserver/files/WampServer%202/Wampserver%202.5/wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-32b.exe/downloadwampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-32b.exe



下載完成後如下圖,執行安裝程式開始進行安裝。如果你之前安裝過 AppServ 或其他的伺服器程式請先解除安裝:





安裝過程中,程式的安裝路徑建議改為D槽,勾選建立桌面圖示,如果資料夾已存在請選擇覆蓋:






安裝完成後直接按 Finsh 執行








正常執行後的WAMP應該是綠色圖示(桌面右下角),如果是紅色表示停止使用,黃色表示正在啟動中,在圖示上按滑鼠右鍵可將語言改為繁體中文,在圖示上按滑鼠左鍵可開啟選單,執行各項功能,例如停止、啟動、重新啟動、開啟首頁、開啟phpMyAdmin、Apache、PHP、MySql等,請先進入phpMyAdmin新增資料庫使用者帳號,第一次使用 root 登入不需密碼,切換到使用者頁纖並點擊新增使用者:






輸入帳號和兩次密碼,這個帳號和密碼就是安裝網站用的資料庫帳號和密碼,必須牢記,回到使用者列表中(如圖)勾選要刪除的帳號,執行後應該剩下兩個了,請先關閉瀏覽器:





如圖開啟 httpd.conf,搜尋 rewrite,找到之後刪除前面的#號,繼續搜尋&nbsp; AllowOverride ,將 none 改為 All,這樣便可支援URL重寫:





如圖開啟 curl 動態函數庫:
10
ECShop 模板修改、調整 / 如何讓ECSHOP模板執行PHP
« 最新文章 由 andy 七月 09, 2019, 02:16:39 下午 »
20121106的補釘限制了ECSHOP模板執行PHP
這樣做有點因噎廢食
smarty模板引擎本來就可以執行PHP
ECSHOP卻為了不讓駭客入侵後將程式碼植入模板中
而限制了這麼方便的功能
如此治標不治本的方法真讓人頭大

在打補釘時需要注意
如果你的模板中有使用PHP語法
打補釘時不要動到 cls_template.php
否則模板中所有PHP功能都會失效
輕微的會出現錯誤訊息
嚴重的會導致整個網站無法運作

ECSHOP模板中很多進階功能需要PHP來達成
若要修改PHP檔案日後將造成升級困擾
因此只能以最少的修改方式
配合插件的方式來完成
舉例來說:
很多模板都會用 themes/'.$GLOBALS['_CFG']['template'] 來取得模板路徑
補釘之後會變成空的因此有些檔案會找不到
你可以在 includes/init.php 最後加上 @include(ROOT_PATH . 'plugins/freecolor.php');

然後在 plugins 資料夾內新增 freecolor.php 內容為
代碼: [選擇]
<?php
    $themes_path
'themes/'.$GLOBALS['_CFG']['template'].'/';
    
$GLOBALS['smarty']->assign('template_dir'$template_dir);
?>

這樣就可以在模板中使用 {$template_dir} 取得模板路徑
模板中用到的PHP程式可以放在此檔內
日後若有升級只需重新在 includes/init.php 最後加上
@include(ROOT_PATH . 'plugins/freecolor.php'); 即可
freecolor 可以自行更改名稱
如果你是VIP,請至http://we-shop.net/bbs/index.php?topic=1127.0 VIP室下載
頁: 1 2 3 4 5 6 7 8 9 10