php登陆注册数据库 php登录注册数据库

PHP登陆注册页在本地测试时,出现连接数据库失败的情况怎么办?

1、检查环境正常

创新新互联,凭借十多年的成都网站制作、成都网站设计经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有成百上千案例。做网站建设,选创新互联建站

使用mysql -u root -p 可以进入MySQL操作界面

直接使用/usr/local/php5/bin/php /web/test.php执行可以连上数据库

2、打开hosts加入

复制代码代码如下:127.0.0.1 qttc

使用qttc当主机连接也正常,唯独就不认localhost。

3、localhost连接方式不同导致

为了了解PHP连接数据库时,主机填写localhost与其它的区别阅读了大量资料,最后得知:

当主机填写为localhost时mysql会采用 unix domain socket连接

当主机填写为127.0.0.1时mysql会采用tcp方式连接

这是linux套接字网络的特性,win平台不会有这个问题

4、解决方法

在my.cnf的[mysql]区段里添加

复制代码代码如下:

protocol=tcp

保存重启MySQL,问题解决!

php注册和登录用的是一个数据库吗

是的,注册和登陆用的是一个数据库。相当于你在一个保险柜放一个东西,在别的保险柜是拿不到的。(中大型项目除外)

php+mysql怎么做登录注册

首先得到提交的数据

链接数据库,查询数据库,查询username 和pwd

提交的username 和 pwd  跟数据库查询的username 和pwd做对比,

都相等那就是登陆成功

?php

mysql_connect('localhost','root','123');

mysql_select_db('lx');

mysql_query("SET CHARACTER SET utf8");

mysql_query("SET NAMES utf8");

//数据库lx 表user  字段id username  pwd

//用md5加密,可以自己试试    

if(isset($_POST['user'])$_POST['tijiao'] == 'success'){

$query = mysql_query("select pwd from user where username = '".$_POST['user']."'");

$num = mysql_num_rows($query);

if($num  0 ){

while($info = mysql_fetch_array($query)){

if($info['pwd'] == md5($_POST['pwd'])){

echo '登陆成功';

}else{

echo '登陆失败';    

}

}

}else{

echo '登陆失败';

}

}

?

form action="" method="get"/

table border="0" cellspacing="0" cellpadding="0" 

tr

td class="fieldKey" width="30%"用户名:/td

td class="fieldValue" width="100%"input type="text" name="user" //td

/tr

trtd height="10"/td/tr

tr

td class="fieldKey"密码:/td

td class="fieldValue"input type="password" name="pwd" //td

/tr

/table

input type="hidden" name="tijiao" value="success" /

input type="submit" value="登陆"/

/form

php登录页面完整代码连接数据库

创建conn.php,连接数据库。

$dns = 'mysql:host=127.0.0.1;dbname=test';

$username = 'root';

$password = 'root';

// 1.连接数据库,创建PDO对象

$pdo = new PDO($dns,$username,$password);

创建login.html,登陆页面。

用户名

密 码

创建login.php,验证账号密码。

header("Content-Type: text/html; charset=utf8");

if(!isset($_POST["submit"])){

exit("错误执行");

}//检测是否有submit操作

include('conn.php');//链接数据库

$name = $_POST['name'];//post获得用户名表单值

$pwd = sha1($_POST['password']);//post获得用户密码单值

if ($name $pwd){//如果用户名和密码都不为空

$sql = "select * from user where username = '$name' and password='$pwd'";//检测数据库是否有对应的username和password的sql

$stmt = $pdo-prepare($sql);

$stmt-execute();

if($stmt-fetch(PDO::FETCH_BOUND)){//0 false 1 true

header("refresh:0;url=welcome.html");//如果成功跳转至welcome.html页面

exit;

}else{

echo "用户名或密码错误";

echo "

setTimeout(function(){window.location.href='login.html';},1000);

";//如果错误使用js 1秒后跳转到登录页面重试;

}

}else{//如果用户名或密码有空

echo "表单填写不完整";

echo "

setTimeout(function(){window.location.href='login.html';},1000);

";

//如果错误使用js 1秒后跳转到登录页面重试;

}

$pdo = null;

创建signup.html,注册页面

用户名:

密 码:

创建signup.php

header("Content-Type: text/html; charset=utf8");

if(!isset($_POST['submit'])){

exit("错误执行");

}//判断是否有submit操作

$name=$_POST['name'];//post获取表单里的name

$pwd = sha1($_POST['password']);//post获取表单里的password

include('conn.php');//链接数据库

$sql="insert into user(id,username,password) values (null,'$name','$pwd')";//向数据库插入表单传来的值的sql

$stmt = $pdo-prepare($sql);

$stmt-execute();

$stmt-fetch(PDO::FETCH_BOUND);

if (!$stmt){

die('Error: ' . $stmt-getMessage());//如果sql执行失败输出错误

}else{

echo "注册成功";//成功输出注册成功

}

$pdo = null;//关闭数据库


新闻标题:php登陆注册数据库 php登录注册数据库
分享地址:http://scjbc.cn/article/doesccp.html

其他资讯