針對類似淘寶商戶註冊時用模板生成自己商鋪網頁的操作

很多人對商戶通點擊過商戶開店模板點擊提交後就生成相對應的自己商鋪界面 

那該怎麼辦呢?

首先糾正一個誤區,,,就是你在商鋪模板上設置的信息不是直接保存在當前頁面上,其實那就相當於一個表單框界面,只是引導商家填寫正確的信息。

其內置原理就是將商戶填寫的信息按【確認】提交後寫進數據庫,而在此時後臺通常也會對商鋪模板文件進行復制操作,(會生成對應的example.html)生成的文件供你瀏覽,

而商鋪中需要填寫信息的部分可以先用特殊字符串代替,

例如下方簡單的代碼:

addinfo.html(填寫類似消息)

<html>
<head>
	<title>註冊頁面</title>
	<meta charset="utf-8">
</head>
<body>
	<h1>用戶註冊</h1>
	<form action="./add.php" method="post">
		<table>
			<tr><td>你的名字:</td><td><input type="text" name="name"/></td></tr>
			<tr><td>你的性別:</td><td><input type="text" name="sex"/></td></tr>
			<tr><td>文章標題:</td><td><input type="text" name="title" /></td></tr>
			<tr><td>文章內容:</td><td><textarea  name="article" style="width:300px;height:300px"></textarea> </td></tr>
			<tr><td colspan="2"><input type="submit" value="提交"></td></tr>
		</table>
	</form>
</body>
</html>
example.html (這個就是將上述填寫的信息生成到模板中,產生類似商鋪界面的界面)

<html>
<head>
	<title>--title--</title>
	<meta charset="utf-8">
</head>
<body>
	<h1></h1>
	What's your name?<p>--name-- </p><br />
	What's your sex?<p>--sex--</p><br />
	News title <p>--title--</p><br />
	article neirong<p>--neirong--</P>
</body>
</html>
通過後臺文件操作進行復制、替換並生成

add.php(實質是文件的複製及字符串的替換,類似smarty的功能,由於我的例子比較小,就沒用到數據庫,採納思路就好)

<?php
	$name=$_POST['name'];
	$sex=$_POST['sex'];
	$title=$_POST['title'];
	$article=$_POST['article'];
	$count = fopen('user.txt','r+');
	$users = intval(fgets($count));
	$users++;
	$moban=array();
	$html = $users.".html";
	rewind($count);
	fwrite($count,$users);
	fclose($count);
	copy('show.html',$html);
	$file = file_get_contents($html);
	$pre=array('--name--','--sex--','--title--','--neirong--');
	$after = array($name,$sex,$title,$article);
	$file=str_replace($pre,$after,$file);
	$htmlarr = fopen($html,'w');
	fwrite($htmlarr,$file);
	fclose($htmlarr);
	include ($html);
?>

我在這裏建立的是用user.txt中的內容數字來記錄商鋪的數量,並把他們當作商鋪頁面的名字(如果想設置自己喜歡的商鋪名字,可以在填寫信息的模板處添加商鋪代碼名稱,生成相應的文件即可)

我在這裏說的只是思路,上述代碼並不是完美的,註冊商鋪應該適當的增加以下細節:

1.註冊後防止用戶因刷新而生成一個相同的文件或者文件夾(加一段防止刷新代碼:將一個bool屬性的值以session的形式保存起來,當註冊後對其進行更改,以免刷新產生錯誤)

2.對用戶的個人信息進行加密保存到數據庫中,不要以明文進行保存

3.界面間傳遞參數時應該用base64等雙向加密算法進行加密,以免對用戶信息產生泄露,也可以通過session進行保存(建議後者)。


以上只是本人的一點點小建議,如果有什麼糾正的或則補充的地方還希望指出,謝謝



發佈了12 篇原創文章 · 獲贊 7 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章