1. 程式人生 > >如何做寫一套圖書館管理系統(二)讀者管理模組

如何做寫一套圖書館管理系統(二)讀者管理模組

現在開始我們的第二個模組:讀者管理模組。

同樣按照圖書管理模組的思路。

讀者管理主要用來統計多少名、什麼型別的讀者,也就是說要維護一個專門儲存讀者檔案的資料表。

而對讀者檔案表的增、刪、改、查,分別形成了新增讀者檔案、刪除讀者檔案、修改讀者資訊、查詢讀者資訊的四個功能模組。

有了上一次的經驗,我們可以知道。讀者模組的首頁,應該與查詢讀者資訊是一起的 => readers.php;

刪除讀者檔案,可以直接實現=>readers_delete.php;

修改讀者檔案,可以在新頁面裡實現=>readers_modify.php ->reader_modify_ok.php;

增加讀者檔案,同樣在新增頁面裡實現=>readers_add.php->readers_add_ok.php;

接下來,同樣我們要確定表結構了。

那麼如何確定哪些關鍵字需要儲存呢?

當然是需要被使用到的欄位。

書是被使用的物件,我們可以根據使用者使用時的情況確定書目需要的資訊。

而讀者是去使用書的主體。

首先,我們能確定到每一位唯一的使用者。姓名、證據型別、證件號碼、註冊時間。

這次同樣得到的讀者基數會很大,但是這並不是我們對其分類的目的。

分類是為了更好的對讀者的許可權進行管理。讀者型別

同樣,我們要先確定一個主鍵KEY。

主鍵KEY的要求是:唯一。專門設定一個讀者編號就挺好的

好的,暫且確定下來的基本表結構為:

readername paperstype papernumber signtime readertype readernumber
varchar(100) varchar(100) int(30) datetime varchar(100) int(30)
(資料型別是瞎定的,有待優化。)
create table readers(
	readername varchar(100),
	paperstype varchar(100),
	papersnumber int(30),
	signtime datetime,
	readertype varchar(100),
	readernumber int(30) auto_increment primary key
)


第一個頁面:readers.php

<html>
	<head>
		<title>讀者檔案管理</title>
	</head>
	<body>
		<form method = "POST" action = "">
		<select name = "searchtype">
			<option value = "readername">姓名</option>
			<option value = "paperstype">證件型別</option>
			<option value = "papersnumber">證件號碼</option>
			<option value = "signtime">註冊時間</option>
			<option value = "readertype">讀者型別</option>
			<option value = "readernumber">讀者編號</option>
		</select>
		<input name = "key" type = "text"></input>
		<button type = "submit">提交</button>
		<a href = "readers_add.php">新增讀者</a>
		</form>
		<table>
			<tr>
				<th>姓名</th>
				<th>證件型別</th>
				<th>證件號碼</th>
				<th>註冊時間</th>
				<th>讀者型別</th>
				<th>讀者編號</th>
				<th>操作</th>
			</tr>
			<?php
				include "conn/conn.php";
				@$f = $_POST['searchtype'];
				@$key = $_POST['key'];
				$sql = mysql_query("select * from readers;");
				$info = mysql_fetch_array($sql);
				if($info == false)
					echo "No Readers!";
				else if($info == true){
					if($key ==""){
				do{
			?>
			<tr>
				<td><?php echo $info['readername'];?></td>
				<td><?php echo $info['paperstype'];?></td>
				<td><?php echo $info['papersnumber'];?></td>
				<td><?php echo $info['signtime'];?></td>
				<td><?php echo $info['readertype'];?></td>
				<td><?php echo $info['readernumber'];?></td>
				<td><a href = "readers_modify.php?barcode=<?php echo $info['readernumber']?>">
				修改</a></td>
				<td><a href = "readers_delete.php?barcode=<?php echo $info['readernumber']?>">刪除</a></td>
			</tr>
			<?php
				}while($info = mysql_fetch_array($sql)); 
				}else{
					echo $f,$key;
					$sql = mysql_query("select * from books where $f like '%$key%';"); //記住,列名是不需要加引號的。
					$info = mysql_fetch_array($sql);
					if($info == false)
						echo "沒有找到相關記錄!";
					else{
				do{
			?>
			<tr>
				<td><?php echo $info['readername'];?></td>
				<td><?php echo $info['paperstype'];?></td>
				<td><?php echo $info['papersnumber'];?></td>
				<td><?php echo $info['signtime'];?></td>
				<td><?php echo $info['readertype'];?></td>
				<td><?php echo $info['readernumber'];?></td>
				<td><a href = "readers_modify.php?barcode=<?php echo $info['readernumber']?>">
				修改</a></td>
				<td><a href = "readers_delete.php?barcode=<?php echo $info['readernumber']?>">刪除</a></td>
			</tr>
			<?php	
				}while($info = mysql_fetch_array($sql));
				}
				}
				}
			?>
		</table>
	</body>
</html>
第二個頁面做新增吧。readers_add.php
<html>
	<head>
		<title>新增讀者檔案</title>
	</head>
	<body>
		<form action = "readers_add_ok.php" method = "POST">
		<label>姓名</label>
		<input type = "text" name = "readername"></input></br>
		<label>證件型別</label>
		<input type = "text" name = "paperstype"></input></br>
		<label>證件號碼</label>
		<input type = "text" name = "papersnumber"></input></br>
		<label>註冊時間</label>
		<input type = "text" name = "signtime"></input></br>
		<label>讀者型別</label>
		<input type = "text" name = "readertype"></input></br>
		<button type = "submit" >提交</button>
		<input name="Submit2" type="button" value="返回" onClick="history.back();">
	</body>
</html>
第三個.readers_add_ok.php
<?php
	include "conn/conn.php";
	$readername = $_POST['readername'];
	$paperstype = $_POST['paperstype'];
	$papersnumber = $_POST['papersnumber'];
	$signtime = $_POST['signtime'];
	$readertype = $_POST['readertype'];
	mysql_query("insert into readers (readername,paperstype,papersnumber,signtime,readertype)values('$readername','$paperstype','$papersnumber','$signtime','$readertype')");
	echo "<script language='javascript'>alert('讀者檔案新增成功!');history.back();</script>";
?>
第四個,readers_modify.php

<html>
	<head>
		<title>修改讀者資訊</title>
	</head>
	<body>	
		<?php
			include "conn/conn.php";
			$readernumber = $_GET['readernumber'];
			$sql = mysql_query("select * from readers where readernumber = '$readernumber';");
			$info = mysql_fetch_array($sql)//即便我只查一條,我也用這個方法了。
		?>
		<form action = "readers_modify_ok.php?readernumber=<?php echo $readernumber?>" method = "POST">
		<label>姓名</label>
		<input type ="text" name ="readername" value = "<?php echo $info['readername'];?>"></input></br>
		<label>證件型別</label>
		<input type = "text" name = "paperstype" value = "<?php echo $info['paperstype'];?>"></input></br>
		<label>證件號碼</label>
		<input type = "text" name = "papersnumber" value = "<?php echo $info['papersnumber'];?>"></input></br>
		<label>註冊時間<?php echo $info['signtime'];?></input></label></br>
		<label>讀者型別</label>
		<input type = "text" name = "readertype" value = <?php echo $info['readertype'];?>></input></br>
		<button type = "submit" >提交</button>
		<input name="Submit2" type="button" value="返回" onClick="history.back();">
		</form>
	</body>
</html>
第五個.readers_modify_ok.php
<?php
	include "conn/conn.php";
	$readernumber = $_GET['readernumber'];
	$readername = $_POST['readername'];
	$paperstype = $_POST['paperstype'];
	$papersnumber = $_POST['papersnumber'];
	//$signtime = $_POST['signtime'];
	$sql = mysql_query("update readers set readername = '$readername',paperstype = '$paperstype',papersnumber = '$papersnumber' where readernumber = '$readernumber';");
	echo "<script language='javascript'>alert('讀者資訊修改成功!');history.back();</script>";
?>
第六個.readers_delete.php
<?php
	$readernumber = $_GET['readernumber'];
	include "conn/conn.php";
	$sql = mysql_query("delete from readers where readernumber = '$readernumber';");
	echo "<script language='javascript'>alert('讀者資訊刪除成功!');history.back();</script>";
?>
Over.完成了所有基本功能,基本就是把圖書管理的程式碼複製過來改一下欄位名字。

今天到此為止。睡覺。