十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶(hù) + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂(yōu)售后,網(wǎng)站問(wèn)題一站解決
可以參看discuz數(shù)據(jù)庫(kù)表帖子,和帖子附件的設(shè)計(jì),我的大概思路是這樣的:

成都創(chuàng)新互聯(lián)是一家專(zhuān)注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃、重慶小程序開(kāi)發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開(kāi)發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十年以來(lái),已經(jīng)為上1000家除甲醛各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的上1000家客戶(hù)與我們一路同行,見(jiàn)證我們的成長(zhǎng);未來(lái),我們一起分享成功的喜悅。
首先建立一個(gè)數(shù)據(jù)表"film"用來(lái)保存簡(jiǎn)短文字信息,其中包含:電影發(fā)布時(shí)有名字,主演,簡(jiǎn)介,歸屬欄目,發(fā)布電影的URL鏈接。在創(chuàng)建一個(gè)表(考慮到是小型網(wǎng)站,如果中型的話,可以選擇10個(gè),像discuz一樣)"attachement",用來(lái)保存,上傳截圖,上傳視頻。這個(gè)表用一個(gè)外鍵與film表連接。中間在外鍵上加索引。
希望我的回答對(duì)你有幫助!
新手的話直接下載php100網(wǎng)站上的WampServer。集成安裝。一鍵搞定...裝好,直接能瀏覽使用
下面是地址.集成包包含:
PHP 5.3.3
Mysql 5.5.8
Apache 2.2.17
PHPMyAdmin 3.2.0.1
SQL Buddy 1.3.2
啥都有了..等熟悉了環(huán)境再自己配置吧
1.首先要全面分析一下你的系統(tǒng)涉及到哪些事物對(duì)象,一般來(lái)說(shuō)是為每種對(duì)象建立一張表。
2.然后是分析每個(gè)事物都有哪些屬性,每個(gè)屬性是什么特點(diǎn),反映在數(shù)據(jù)庫(kù)中這個(gè)字段是什么類(lèi)型。
2.然后分析各個(gè)事物之間的關(guān)系,哪個(gè)是“一”,哪個(gè)是“多”。如班級(jí)是“一”,學(xué)生是“多”,則要在學(xué)生表中添加一個(gè)字段來(lái)保存他所屬的班級(jí)。
最基本的就是這樣,其他就是一些優(yōu)化的問(wèn)題。
建議你在網(wǎng)上找一些相關(guān)電子書(shū)進(jìn)行系統(tǒng)的學(xué)些;然后就是可以下載一些程序,想dz,ecshop之類(lèi),如果讓你自己來(lái)設(shè)計(jì)數(shù)據(jù)庫(kù)你會(huì)怎樣做,然后打開(kāi)程序看別人是怎么設(shè)計(jì)的;看多了就熟悉了。
不管是幾級(jí)城市分站 記住php是動(dòng)態(tài)語(yǔ)言。你把所有的數(shù)據(jù)都加上城市id就可以了
比方說(shuō)
北京 對(duì)應(yīng)的id是1
上海對(duì)應(yīng)的id是2
一個(gè)新聞表
news
id title content city_id
1 測(cè)試北京新聞 測(cè)試新聞內(nèi)容 1
1 測(cè)試上海新聞 測(cè)試新聞內(nèi)容 2
總站只要
select id,title,content from news //所有
分站就是
select id,title,content from news where city_id=1 //北京
select id,title,content from news where city_id=2 //上海
這樣頁(yè)面的數(shù)據(jù)就自動(dòng)轉(zhuǎn)換了我要提問(wèn)!
你理解的差不多,這種一般用不低于三個(gè)表實(shí)現(xiàn)。
城市表:城市信息
新聞表:應(yīng)該有一個(gè)字段for_all_city,默認(rèn)值0,可設(shè)為1,當(dāng)為1的時(shí)候這個(gè)新聞需要檢查表三,保證它不會(huì)在表三中再次出現(xiàn)
新聞城市從屬關(guān)系表:新聞編號(hào),城市編號(hào)
以上設(shè)計(jì)是因?yàn)榭紤]有時(shí)候新聞可能同時(shí)發(fā)布到多個(gè)城市考慮的,當(dāng)根據(jù)城市選擇新聞時(shí),應(yīng)選擇城市編號(hào)對(duì)應(yīng)或者新聞的for_all_city為1的新聞。
前邊介紹了負(fù)載均衡,mysql同步,接下來(lái)介紹tp6分布式部署多個(gè)數(shù)據(jù)庫(kù),實(shí)現(xiàn)讀寫(xiě)分離。
tp6的分布式部署讀和寫(xiě)仍然是一個(gè)系統(tǒng),這里我們分開(kāi)操作,給用戶(hù)展示的就是從數(shù)據(jù)庫(kù),后端添加文章就是主庫(kù),然后同步到從庫(kù)。
1、配置數(shù)據(jù)庫(kù)鏈接參數(shù)
目標(biāo):實(shí)現(xiàn)隨機(jī)使用數(shù)據(jù)庫(kù)展示信息,只是讀操作。
測(cè)試:前臺(tái)可以讀取表中內(nèi)容(存放的不一致),查看是否是隨機(jī)顯示的。
打開(kāi).env文件進(jìn)行編輯
說(shuō)明:
2、編輯database.php
找到deploy設(shè)置為1分布式部署,下邊不要改,都是讀,寫(xiě)入的也就是后端的我們單獨(dú)建站連接主庫(kù)。
配置完成,tp6使用的是mt_rand取隨機(jī)數(shù)判斷使用哪個(gè)數(shù)據(jù)庫(kù)。
3、數(shù)據(jù)庫(kù)交互寫(xiě)操作
比如瀏覽量沒(méi)必要每次都去更新數(shù)據(jù)庫(kù),可以先使用redis緩存,存夠1000的整數(shù)倍,再去更新數(shù)據(jù)庫(kù)。
4、后臺(tái)獨(dú)立,也就是寫(xiě)
可以前后端分離,單獨(dú)做一個(gè)網(wǎng)站(沒(méi)有前端)使用ip訪問(wèn)或者獨(dú)立的域名連接后臺(tái)。
5、上傳附件(jquery ajax跨域上傳)
使用了nginx負(fù)載均衡,肯定是多個(gè)一樣的網(wǎng)站,如果圖片存放到一個(gè)站,別的就不能訪問(wèn)了,可以單獨(dú)設(shè)置一個(gè)附件(壓縮包,圖片等)服務(wù)器,可以使用二級(jí)域名連接,這就要求我們上傳附件的時(shí)候,是上傳到附件服務(wù)器。
jqueryURL
API控制器apdpic方法
說(shuō)明:
也可以先傳到后臺(tái)服務(wù)器然后使用(php)ftp上傳,或者是通過(guò)curl上傳到附件服務(wù)器,感覺(jué)那樣畢竟麻煩,直接設(shè)置跨域會(huì)比較簡(jiǎn)單。
也測(cè)試了使用jsonp跨域,但是不能上傳附件。
6、thinkphp6實(shí)現(xiàn)讀寫(xiě)分離(在一個(gè)站點(diǎn))
我個(gè)人是不喜歡這樣的,負(fù)載均衡應(yīng)該是均衡地讀,也就是前臺(tái)單獨(dú)一個(gè)站點(diǎn),后端的寫(xiě)是另一個(gè)獨(dú)立的站點(diǎn),看個(gè)人喜好吧。
獨(dú)立后臺(tái)的優(yōu)點(diǎn):可以提升安全性,因?yàn)槲覀兊暮笈_(tái)網(wǎng)址是不公開(kāi)的,避免用戶(hù)猜測(cè)一些后臺(tái)的信息。
.env配置按照1所述編輯,默認(rèn)第一個(gè)是主庫(kù)。
database.php
愿大家在新的一年心想事成,萬(wàn)事如意?。?!