用户注册 php+mysql

通过这3个晚上的学习,对php有了初步的了解。学习的话,如果有语言基础,只要php参考手册就够了,剩下的就靠自己了,还有强大的网络资源。另外,刚开始可以不用IDE,我第一天装了一个IDE但是可能还需要设置什么其他的吧(到现在还没去搞明白),后来干脆就没用了,直接用txt格式编写,再改成php格式的,然后直接放在apache服务器下访问。

先做一个web的基础,注册功能(登入功能也差不多吧!)

这里写了4个php页面,也小用了面向对象的思想

//form表单一个简单的php

<html>
<title> regiter php</title>
<body>
注册:<br/>
<form action = "registerDeal.php" method="post">
	用户名:<input type="text" name="username"/><br/>
        密码:<input type="password" name="password"/> <br/>
        密码确认:<input type="password" name="passwordConfirm"/> <br/>
        <input type="submit" value="OK"/>
</form>
</body>
</html>

//Entity实体类

user.php

<?php
class User{
	var $username;
	var $password;
        function User($username,$password){
        	         $this->username = $username;
		$this->password = $password;
  	}
}
?>

//表单处理php

registerDeal.php

<?php

//include 'user.php'; //为什么不用添加呢?
include 'user_crud.php';

function  save($username,$password){
	echo "deal save";
	$user = new User($username,$password);	
	$userDao = new UserDao();
	$userDao->save($user);	
}

   

if($_POST['username'] != NULL && $_POST['password'] !=NULL){
   	if($_POST['password'] != $_POST['passwordConfirm']){
		echo "两次密码不一样";
	}else{
		save($_POST['username'] ,$_POST['password'] );
	}
   }else{
   	echo "用户名或密码不能为空";
   }
?>

//最后一个php貌似于DAO对象

user_crud.php

<?php
include 'user.php';
class UserDao{
	//处理数据库连接
	function conn_mysql(){
		mysql_connect("localhost:3306", "root", "root")
        		or die("Could not connect : " . mysql_error()); 
    		print "Connected successfully";
    		mysql_select_db("forest") or die("Could not select database <br/>");
	}
	function UserDao(){
		$this->conn_mysql();
	}
	function save($user){
		echo("<br/> $user->username,$user->password");
		$query = "insert into user(username,password) values ('$user->username','$user->password')";
		mysql_query($query) or die("Could not save user <br/>");
	}
}
?>

总结下错误的地方:

1.include包含文件问题

2.在写sql语句时,要注意要用引号包含起来'$user->username'而不是

$user->username

3.如果提示mysql库函数没有定义,是因为在apache配置中没有指定php.ini的路径

所以加上PHPIniDir"E:/soft_work/PHP"

改进:可以将mysql的连接串配置到另一个php或其他类型的文件中。

相关推荐