本文目錄一覽:
如何將phpwind8.7程序網站升級9.0方法
一、phpwind環境要求
php版本 5.2.x 建議5.3
pdo_mysql 安裝擴展
mysql版本(client) 5.x.x
附件上傳 2M
二、升級前的準備
1、進行資料庫備份
備份資料庫的方式有多種,無憂主機小編只介紹三種
第一種是直接在空間的後台phpmyadmin進行備份,登陸您的phpmyadmin把您網站的資料庫導入到本地,保存。
第二種是使用帝國備份王工具把您的資料庫備份到空間中,詳細備份教程請參考:Mysql資料庫管理利器:帝國備份王安裝使用圖文安裝
第三種是使用phpwind自帶的備份工具進行備份。登陸您php虛擬主機網站的後台依次點擊數據—資料庫—數據維護
phpwind後台
2、關閉您的網站,防止網站遷移過程中有新的數據進來,以免丟失數據。登陸您網站後台站點—站點設置—站點狀態—完全關閉。
3、把您網站備份的數據通過ft工具的方式下載到您的本地。
三、程序上傳和目錄的處理
註:附件和頭像目前只支持本地和FTP遠程附件,如果之前使用了雲存儲,請先將頭像下載到本地,升級後再上傳。無憂主機用戶可以通過壓縮包的方式上傳這些文件,這樣可以節省許多不必要的上傳時間
1、 將phpwind9.0安裝包上傳到php虛擬主機中並解壓,將upload目錄下的文件上傳至安裝目錄。注意,不能直接覆蓋原來8.7的環境。虛擬主機,建議先將原8.7環境除attachment目錄外,移動到backup下,這樣即時出現問題後可以通過移動目錄恢復8.7的環境。
2、 文件轉移:
a、頭像圖片轉移:將原8.7環境下的attachment/upload文件夾,複製到9.0環境的attachment下。(如果之前使用遠程附件,頭像需要單獨升級,見後面說明)
b、表情圖片轉移:將原8.7目錄下images/post/smile/下的所有目錄拷貝到網站根目錄的res/images/emotion/下。
C、勳章圖片轉移:將原8.7目錄下images/medal/下的所有目錄拷貝到網站根目錄的res/images/medal/下(如果下載的nextwind包是含有www目錄的,則將attachment包括在內的以上目錄移到www目錄下,比如res/images/emotion/ 則為www/res/images/emotion/)。
舉例說明:
文件類型
8.7環境目錄
9.0環境目錄
頭像
attachment/upload
attachment/upload
表情
images/post/smile/
res/images/emotion/
勳章
images/medal/
res/images/medal/
3、登陸phpwind官方下載8.7升級到9.0的升級包up87to90.php文件。
4、 確定以下目錄的可寫許可權:
attachment/
conf/database.php
conf/founder.php
conf/windidconfig.php
data/
data/cache/
data/compile/
data/design/
data/log/
data/tmp/
html/
src/extensions/
themes/
themes/extres/
themes/forum/
themes/portal/
themes/site/
themes/space/
四、開始升級
1、執行您剛剛上傳到php虛擬主機的升級程序地址是51php.com(註:域名)/up87to90.php
2、填寫完整的資料庫信息及創始人信息。
3、然後遞交執行基本信息轉換
4、主數據的升級,商家方式有兩種
一種選擇步驟升級,步驟如下:
a、用戶基本數據轉換(pw_members表)
b、用戶基本數據轉換(pw_memberdata表)
c、其它用戶數據轉換,用戶信息表數據同步(pw_user_info)和用戶數據表數據同步(pw_user_data)
d、用戶教育/工作經歷/標籤數據轉換
e、板塊數據轉換
另外一種是一鍵自動升級,您只需要一鍵升級就可以了,無憂主機小編推薦您使用這種升級方式
5、 關於頭像的轉換:
如果之前頭像是本地存儲,則可以直接進行一鍵自動升級。如果是遠程附件存儲,請先在分進程手動升級中,執行用戶頭像轉移。
6、升級完成後會自動進入站點的首頁
五、升級完成後的確認操作。
1、刪除升級程序的文件up87to90.php。
2、將老程序環境attachment文件保存到附近遷移環境的attachment下
3、登陸您php虛擬主機網站的後台選擇 工具—緩存管理 更新站點的緩存
4、把站點各個功能都測試一遍,發布一個測試文章等等,確認網站沒有任何問題
php一個在線升級的功能,新的文件不能覆蓋原來的文件呢,有沒有會的?
我建議你的升級腳本按照這種思路做:
1. 先把重要的文件移動到別的目錄(比如配置文件等,這些升級後肯定還需要恢復。 然後把不重要的刪除掉,你可以用php自帶的函數,或者直接用php system 或 exec 調用系統命令完成)
2. 把升級包解壓縮/複製到項目目錄,然後恢復之前配置的重要配置文件
3.system 和 exex 函數都有返回值,你判斷返回值成功後,返回客戶端成功即可。
需要注意:腳本運行時間超時,php執行系統命令是否有許可權。
上面的這些代碼,如果是在linux下,可以寫一個shell腳本,然後php調用即可。
php如何用update更新多條數據
樓主貼出的代碼是主要代碼不是完整代碼,以下是對你貼出代碼的修改,接收數組並批量更新
接收數據格式形如:
array(
0=array(
‘id’ = 1,
‘title’= ‘標題1’
‘url’= ‘…’
),
1=array(
‘id’ = 1,
‘title’= ‘標題1’
‘url’= ‘…’
),
)
注意在原來的基礎上加了更新條件id,不加的話是會更新全部的。
A頁面代碼:
?php
$exec=”select * from focusimg”;
$result = mysql_query($exec,$link);
$i=0;
while($pt=mysql_fetch_array($result)){
?
tr onmouseover=”this.className=’admTr'” onmouseout=”this.className=””
td width=”17%” align=”right”標題?php echo $pt[‘id’]; ?:input name=”?php echo “focusimg[$i][id]”; ?” value=”?php echo $pt[‘id’]; ?” type=”hidden”//td
tdinput name=”?php echo “focusimg[$i][title]”; ?” type=”text” id=”textfield” value=”?php echo $pt[‘title’];?” size=”30″ //td
td width=”17%” align=”right”鏈接?php echo $pt[‘id’]; ?:/td
tdinput name=”?php echo “focusimg[$i][url]”; ?” type=”text” id=”textfield” value=”?php echo $pt[‘url’];?” size=”30″ / /td
/tr
?php
$i++;
};
?
B頁面代碼:
?php
include ‘conn.php’;
$focusimg=$_POST[‘focusimg’];
foreach($focusimg as $k=$v) {
$exec=”update chips set title='{$v[title]}’,url='{$v[url]}’ where id='{$v[id]}'”;
mysql_query($exec, $link);
}
mysql_close($link);
echo “edit OK!”;
?
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/254744.html