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

php登录页面完整代码连接数据库,第1张

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

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

$username = 'root'

$password = 'root'

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

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

创建login.html,登陆页面。

用户名

密 码

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

header("Content-Type: text/htmlcharset=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:0url=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/htmlcharset=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//关闭数据库

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,问题解决!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6680593.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存