基于MySQL的简单管理系统(PHP)
环境 : 因为并不是真实搭建服务器,所以我偷懒用了phpstudy,集成了轻量版的apache,mysql和php. IDE采用Eclipse PHP Studio,毕竟用惯了Eclipse.
设置好apache本机目录(与EPS工程目录一致),使用phpMyAdmin添加测试用数据库fansdb,并建立新表test(含两个字段:user和password)
各网页源码:
//index.php后台管理登陆:<br><form action="login.php" method="post">姓名:<input type="text" name="name" /> 密码:<input type="text" name="password" /><input type="submit" name="submit" value="提交" /></form>
//login.php<?phprequire_once 'connectdb.php';$name = $_POST['name'];$passowrd = $_POST['password'];$passowrd = md5($passowrd);if ($name && $passowrd){$sql = "SELECT * FROM test WHERE user = '$name' and password='$passowrd'";$res = mysql_query($sql);$rs=mysql_num_rows($res);if($rs){header("refresh:0;url=userui.php");exit;}elseecho "<script language=javascript>alert('用户名密码错误');history.back();</script>";}else {echo "<script language=javascript>alert('用户名密码不能为空');history.back();</script>";}?>
//userui.php<form action="" method="post"><input type="submit" name="btn" value="列出所有"/><input type="submit" name="btn" value="增加"/><input type="submit" name="btn" value="删除"/><input type="submit" name="btn" value="修改"/><input type="submit" name="btn" value="查找"/></form><?phprequire_once 'controldb.php';$action = $HTTP_POST_VARS["btn"];switch($action){case "列出所有":listuser();break;case "增加":echo "<form action=\"\" method=\"post\">姓名:<input type=\"text\" name=\"name\" />密码:<input type=\"text\" name=\"password\" /><input type=\"submit\" name=\"btn\" value=\"确定添加\"/><br>";break;case "删除":echo "<form action=\"\" method=\"post\">查找姓名:<input type=\"text\" name=\"name\" /><input type=\"submit\" name=\"btn\" value=\"确定删除\"/><br>";break;case "修改":echo "<form action=\"\" method=\"post\">查找姓名:<input type=\"text\" name=\"name\" />修改后姓名:<input type=\"text\" name=\"dest_name\" />修改后密码:<input type=\"text\" name=\"dest_password\" /><input type=\"submit\" name=\"btn\" value=\"确定修改\"/><br>";break;case "查找":echo "<form action=\"\" method=\"post\">查找姓名:<input type=\"text\" name=\"name\" /><input type=\"submit\" name=\"btn\" value=\"确定查找\"/><br>";break;case "确定添加":if(add($_POST['name'],$_POST['password']))echo "添加成功";elseecho "添加失败";break;case "确定删除":if(del($_POST['name']))echo "删除成功";elseecho "删除失败,可能不存在此人";break;case "确定修改":if(change($_POST['name'],$_POST['dest_name'],$_POST['dest_password']))echo "修改成功";elseecho "修改失败,可能不存在此人";break;case "确定查找":$rs = search($_POST['name']);if($rs)echo "用户名:".$rs->user."<br>用户密码(after md5):".$rs->password;elseecho "查找失败,可能不存在此人";break;}?>
//conectdb.php<?php$mysql_servername = "localhost"; //主机地址$mysql_username = "root"; //数据库用户名$mysql_password ="root"; //数据库密码$mysql_database ="fansdb"; //数据库mysql_connect($mysql_servername , $mysql_username , $mysql_password);mysql_select_db($mysql_database); ?>
//controldb.php<?phprequire_once 'connectdb.php';function add($name,$password){$password = md5($password);$sql = "INSERT INTO test(user, password) VALUE('$name', '$password')";$rlt = mysql_query($sql);return $rlt;}function del($name){$sql = "DELETE FROM test WHERE user='$name'";$rlt = mysql_query($sql);return $rlt;}function change($name,$dest_name,$dest_password){$dest_password = md5($dest_password);$sql = "UPDATE test SET user='$dest_name',password='$dest_password' WHERE user = '$name'";$rlt = mysql_query($sql);return $rlt;}function search($name){$sql = "SELECT * FROM test WHERE user='$name'";$rlt = mysql_query($sql);$rs=mysql_fetch_object($rlt);return $rs;}function listuser(){$sql="SELECT * FROM test"; $rlt=mysql_query($sql);while($rs=mysql_fetch_object($rlt)) {echo "用户名:".$rs->user."<br>用户密码(after md5):".$rs->password."<br>"; }}?>
登陆页面:
操作页面:
注意:一次debug时手动用add函数为数据库添加密码和用户名都为root的item.
总结:其实这次题目并不是太难,主要还是考察sql语言?基本上第一次接触web开发,对html完全摸不着头脑,所以ui方面也就那个鸟样了.至于代码里面各种不规范和偷懒,额,也就那个样了,php为web而生,我还是玩我的lua比较贴心一点.都是基于弱类型但lua相对安全多了,大概. php里的系统全局变量应该都是基于hash表的伪数组?每次post动作将静态网页中name,value等值push进表中,然后用于与php交互? 嘛,标记一下,以后有时间,或者说有兴趣再学习下web和php吧.
至于创新班的事,暂时不做评论,老金的培训方法大概是很有道理的,但是时间固定的太死了,将所有时间放在web上而放弃自己感兴趣的东西,感觉我自己是做不来.总之,这件事也就这样了.