2013-08-14 分類(lèi): 網(wǎng)站建設(shè)
使用php語(yǔ)言進(jìn)行網(wǎng)站建設(shè)會(huì)有哪些常見(jiàn)問(wèn)題?伴隨著世界互聯(lián)網(wǎng)技術(shù)的快速發(fā)展以及電子設(shè)備的高速普及,網(wǎng)絡(luò)伴隨著電腦、手機(jī)等設(shè)備進(jìn)入到人們的生活之中。當(dāng)前我國(guó)卻在校園網(wǎng)站的建設(shè)與應(yīng)用中出現(xiàn)大量交互不方便信息可信度低技術(shù)功能不夠完善需求與技術(shù)不平等的問(wèn)題。因此,我們的首要問(wèn)題就是如何建立一個(gè)操作簡(jiǎn)便且界面整潔的網(wǎng)站。PHP網(wǎng)站建設(shè)有什么好處和優(yōu)勢(shì)?需要注意什么?
一、開(kāi)發(fā)環(huán)境分析和問(wèn)題
1.軟件語(yǔ)言的選擇和問(wèn)題分析?,F(xiàn)在網(wǎng)絡(luò)開(kāi)發(fā)的三種主流語(yǔ)言: ASP. NET、PHP、JSP,它們都存在自身的獨(dú)特性和優(yōu)缺點(diǎn)。JSP兼容性好、安全性最好、標(biāo)簽可以擴(kuò)充、支持跨平臺(tái)使用,但是熟練使用有一定難度,并且可移植性較差:PHP兼容性好、安全性較好、性能強(qiáng)、配合簡(jiǎn)單、容易學(xué)習(xí),但是卻存在本身是單線程的問(wèn)題; ASP. NET開(kāi)發(fā)快、易被熟練掌握,但蒹容性較差,只適用 Microsoft服務(wù)器,安全性一般、漏洞過(guò)多,實(shí)現(xiàn)某些特定需求時(shí)比較麻煩。本項(xiàng)目使用PHP作為開(kāi)發(fā)語(yǔ)言,PHP作為一種類(lèi)C語(yǔ)言在使用上具有較快的上手性,且php語(yǔ)言支持跨平臺(tái)服務(wù)、性能優(yōu)越、語(yǔ)法簡(jiǎn)單,目前的主流技術(shù)大多支持。PHP作為種開(kāi)源的源代碼,使得它具有極大的通用性,有多種框架可以使用;作為一個(gè)使用較多的網(wǎng)站建設(shè)語(yǔ)言,安全性得到了大多數(shù)人的認(rèn)可。
2.編程軟件的選擇。目前市場(chǎng)上的網(wǎng)頁(yè)編程軟件
也是玲瑯滿目,如 Sublime、 Editplus、 Dreamweaver、Zend Studio等,綜合分析各方面的因素,選用了Zend Studio作為編程軟件。 Zend Studio是一款專門(mén)為PHP網(wǎng)站開(kāi)發(fā)而設(shè)計(jì)的軟件,函數(shù)高亮、自動(dòng)糾錯(cuò)、函數(shù)提醒,最為特殊的在于它的函數(shù)尋找。函數(shù)尋找不僅局限于PHP與MSQL自身的函數(shù),還有編程人員自己創(chuàng)建的函數(shù),Crl+鼠標(biāo)左鍵單擊函數(shù)后,軟件自動(dòng)跳轉(zhuǎn)到函數(shù)下,這極大地方便了編程中的各頁(yè)面跳轉(zhuǎn)和函數(shù)錯(cuò)誤檢驗(yàn)分析。
3.環(huán)境搭建軟件及問(wèn)題分析。PHP網(wǎng)站開(kāi)發(fā)最常用的軟件組合為WAMP( Windows+ Apache+ MYSQL+PHB。 Apache是一款開(kāi)源的Web服務(wù)器,具有較好的應(yīng)用性和安全性。
在選用集成安裝環(huán)境上,網(wǎng)絡(luò)上提供了很多平臺(tái)( Appserv, phpstudy,wamp等,使用前參考很多網(wǎng)上評(píng)論,最后先選擇安裝了 Appserv。多次安裝發(fā)現(xiàn) Appserv在安裝8.0版本中出現(xiàn)較大問(wèn)題在安裝中設(shè)置好登入數(shù)據(jù)庫(kù)的用戶名和密碼,但是完成后在訪問(wèn) localhost i網(wǎng)頁(yè)過(guò)程中出現(xiàn)登錄錯(cuò)誤并出現(xiàn)錯(cuò)誤字樣如下: Access denied for user root'localhost (using password:YEs。問(wèn)題說(shuō)的是無(wú)法訪問(wèn)root用戶,且使用的密碼正確。查看 MYSQL中的用戶登錄文件,發(fā)現(xiàn)用戶和密碼字段沒(méi)有寫(xiě)入到基本文件中。發(fā)現(xiàn)是基本文件錯(cuò)誤后,進(jìn)行了多次重裝軟件但是都出現(xiàn)上述問(wèn)題,最后設(shè)置 MYSQL不檢查用戶密碼進(jìn)行登錄。在多電腦的驗(yàn)證普遍性上,MySL設(shè)置不檢查用戶密碼進(jìn)行登錄這個(gè)方法在部分電腦上出現(xiàn)只能登入一次,之后再要登入則出現(xiàn)登錄失敗、root用戶不允許的字樣。并且這種方法極大的降低了數(shù)據(jù)庫(kù)的安全性,對(duì)后續(xù)的開(kāi)發(fā)可能會(huì)造成難以估量的損失,項(xiàng)目最后放棄使用Apsr的集成環(huán)境。在多個(gè)集成環(huán)境安裝對(duì)比后,最終我們選擇 phpstudy作為開(kāi)發(fā)的環(huán)境,它安裝簡(jiǎn)單、軟件不收費(fèi)、節(jié)約可開(kāi)發(fā)成本多次安裝都是一次成功和數(shù)據(jù)庫(kù)連接正常。在不使用本地?cái)?shù)據(jù)庫(kù)時(shí)還可以將整個(gè)集成環(huán)境關(guān)閉節(jié)約電腦本身的后臺(tái)資源。數(shù)據(jù)庫(kù)密碼和用戶名在基礎(chǔ)文件中直接被設(shè)置,雖然缺乏人性化但是這樣避免出現(xiàn)Appservi中出現(xiàn)的無(wú)法登入數(shù)據(jù)庫(kù)的問(wèn)題。
PHP網(wǎng)站建設(shè)有什么好處和優(yōu)勢(shì)?需要注意什么?
二、功能模塊設(shè)計(jì)及問(wèn)題分析
本網(wǎng)站最主要的功能是信息的發(fā)布和交流。所以主要實(shí)現(xiàn)的功能模塊有:登入模塊、信息發(fā)布及處理模塊、貼吧式交流模塊等。
1.在每個(gè)模塊的實(shí)現(xiàn)中盡可能的實(shí)現(xiàn)代碼的簡(jiǎn)單化,所以我們使用到了很多函數(shù)來(lái)實(shí)現(xiàn),這樣在不同網(wǎng)頁(yè)實(shí)現(xiàn)同一功能上可以簡(jiǎn)化代碼和后臺(tái)編譯時(shí)間。例如 addinfo被設(shè)定為添加信息的函數(shù),管理員和普通用戶都有權(quán)限進(jìn)行信息的發(fā)布,我們?cè)?info. inc,php中寫(xiě)好 adolfo的具體實(shí)現(xiàn)步驟,在具體實(shí)現(xiàn)的網(wǎng)頁(yè)中直接調(diào)用函數(shù)即可實(shí)現(xiàn)信息在數(shù)據(jù)庫(kù)的插入。
2.考慮到信息發(fā)布平臺(tái)的倍息發(fā)布涉及到很多項(xiàng),其中包括圖片及文件等信息的共享,而每一個(gè)的實(shí)現(xiàn)都需要一定的時(shí)間周期,所以我們采用 Kindeditor集成環(huán)境。 Kiindeditor靈活的使用標(biāo)簽
4.貼吧式交流模塊也是網(wǎng)站一個(gè)較為新穎的地方。這一個(gè)模塊我們首先結(jié)合了信息發(fā)布模塊的功能,用戶在查看主題帖的同時(shí)可以寫(xiě)上自己的相關(guān)認(rèn)識(shí)。我們?cè)跀?shù)據(jù)庫(kù)中創(chuàng)建了一張表( tb note用來(lái)收入這些回復(fù)貼的內(nèi)容。 content]記錄回復(fù)信息的具體內(nèi)容,name記錄回復(fù)信息的用戶名稱,scnd記錄回復(fù)消息的時(shí)間,pidi記錄回復(fù)貼屬于哪個(gè)主貼的內(nèi)容。pid的使用使所有關(guān)于這條主貼信息的回復(fù)全部被取出。
三、信息同步及問(wèn)題分析
PHP在前端網(wǎng)頁(yè)大多是使用form標(biāo)簽進(jìn)行數(shù)據(jù)提交,調(diào)用 insert函數(shù)完成數(shù)據(jù)的寫(xiě)入。在前端提交的信息一般都是一個(gè)數(shù)組以post的形式進(jìn)行傳值。以注冊(cè)用戶為例,沒(méi)有賬戶的用戶可以通過(guò)注冊(cè)用戶來(lái)實(shí)現(xiàn)網(wǎng)站提供的更多功能。注冊(cè)中需要提交的信息有用戶名、密碼、專業(yè)、班級(jí)等信息。我們將提交的信息以個(gè)數(shù)組的形式傳入數(shù)據(jù)庫(kù)。這其中極易出現(xiàn)一些問(wèn)題。
1.數(shù)組中各個(gè)數(shù)據(jù)名不對(duì)應(yīng)。在前端的網(wǎng)頁(yè)我們需要給每一個(gè)傳入的數(shù)據(jù)有一個(gè)相應(yīng)的name,必須嚴(yán)格和數(shù)據(jù)庫(kù)中的字段完全一致。其中一個(gè)數(shù)據(jù)的name對(duì)應(yīng)不上整個(gè)數(shù)組就無(wú)法完成寫(xiě)入。出現(xiàn)問(wèn)題要多進(jìn)行調(diào)試工作,一步一步驗(yàn)證是在哪里出的錯(cuò)誤。例如,使用 print r進(jìn)行數(shù)組的打印顯示傳入數(shù)組的名字即對(duì)應(yīng)的數(shù)值,使用f函數(shù)判斷函數(shù)在執(zhí)行過(guò)程中哪一步出現(xiàn)了空值。
2.數(shù)組無(wú)法一一對(duì)應(yīng)。在傳輸數(shù)組中要求前端傳輸數(shù)組的各字段與數(shù)據(jù)庫(kù)表的字段完全對(duì)應(yīng),在注冊(cè)網(wǎng)頁(yè)中需要兩次重復(fù)輸入密碼,傳輸?shù)臄?shù)組多了一個(gè)驗(yàn)證的密碼的值,沒(méi)有清理數(shù)組的數(shù)組密碼驗(yàn)證值,數(shù)據(jù)無(wú)法插入到表中。在reg注冊(cè)函數(shù)中設(shè)置調(diào)試點(diǎn)進(jìn)行調(diào)試。調(diào)試過(guò)程發(fā)現(xiàn),將密碼驗(yàn)證值設(shè)為空值和0都無(wú)法提交信息,最后借用PHP中的 unseti函數(shù)進(jìn)行數(shù)據(jù)的清除。
當(dāng)前文章:使用php語(yǔ)言進(jìn)行網(wǎng)站建設(shè)會(huì)有哪些常見(jiàn)問(wèn)題?需要注意哪些?
文章轉(zhuǎn)載:http://m.rwnh.cn/news7/7557.html
網(wǎng)站建設(shè)、網(wǎng)絡(luò)推廣公司-創(chuàng)新互聯(lián),是專注品牌與效果的網(wǎng)站制作,網(wǎng)絡(luò)營(yíng)銷(xiāo)seo公司;服務(wù)項(xiàng)目有網(wǎng)站建設(shè)等
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容