gpt4 book ai didi

php - 如何才能让我注册时该帐户能够登录数据库

转载 作者:行者123 更新时间:2023-11-30 00:57:26 25 4
gpt4 key购买 nike

所以我是 php/mysql 的新手,我希望你在我提问之前先看看一些代码

这是我的数据库中的两个表

网站用户(我的注册页面)

CREATE TABLE WebsiteUsers
(
userID int(9) NOT NULL auto_increment,
fullname VARCHAR(50) NOT NULL,
userName VARCHAR(40) NOT NULL,
email VARCHAR(40) NOT NULL,
pass VARCHAR(40) NOT NULL,
PRIMARY KEY(userID)
);

和用户名(mysql用于登录页面)

CREATE TABLE UserName
(
UserNameID int(9) NOT NULL auto_increment,
userName VARCHAR(40) NOT NULL,
pass VARCHAR(40) NOT NULL,
PRIMARY KEY(UserNameID)
);

这是我的两个 php 脚本

connectivity.php(用于登录页面)

<?php
define('DB_HOST', 'localhost');
define('DB_NAME', 'hhh');
define('DB_USER','root');
define('DB_PASSWORD','');

$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error());
/*
$ID = $_POST['user'];
$Password = $_POST['pass'];
*/
function SignIn()
{
session_start(); //starting the session for user profile page
if(!empty($_POST['user'])) //checking the 'user' name which is from Sign-In.html, is it empty or have some text
{
$query = mysql_query("SELECT * FROM UserName where userName = '$_POST[user]' AND pass = '$_POST[pass]'") or die(mysql_error());
$row = mysql_fetch_array($query) or die(mysql_error());
if(!empty($row['userName']) AND !empty($row['pass']))
{
$_SESSION['userName'] = $row['pass'];
echo "SUCCESSFULLY LOGIN TO USER PROFILE PAGE...";

}
else
{
echo "SORRY... YOU ENTERD WRONG ID AND PASSWORD... PLEASE RETRY...";
}
}
}
if(isset($_POST['submit']))
{
SignIn();
}

?>

和connectivity-sign-up.php(用于注册页面)

<?php

define('DB_HOST', 'localhost');
define('DB_NAME', 'hhh');
define('DB_USER','root');
define('DB_PASSWORD','');

$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error());


function NewUser()
{
$fullname = $_POST['name'];
$userName = $_POST['user'];
$email = $_POST['email'];
$password = $_POST['pass'];
$query = "INSERT INTO websiteusers (fullname,userName,email,pass) VALUES ('$fullname','$userName','$email','$password')";
$data = mysql_query ($query)or die(mysql_error());
if($data)
{
echo "YOUR REGISTRATION IS COMPLETED...";
}
}

function SignUp()
{
if(!empty($_POST['user'])) //checking the 'user' name which is from Sign-Up.html, is it empty or have some text
{
$query = mysql_query("SELECT * FROM websiteusers WHERE userName = '$_POST[user]' AND pass = '$_POST[pass]'") or die(mysql_error());

if(!$row = mysql_fetch_array($query) or die(mysql_error()))
{
newuser();
}
else
{
echo "SORRY...YOU ARE ALREADY REGISTERED USER...";
}
}
}
if(isset($_POST['submit']))
{
SignUp();
}
?>

所以我的问题是,当用户注册时,如何才能将他/她自动插入到我的用户名数据库中?

编辑不,我已将其连接到一张表,并将其更改为 mysqli,但不断收到此错误..

注意: undefined variable :第 12 行 C:\xampp\htdocs\test2\Sign-in\connectivity.php 中的 con

警告:mysqli_query() 期望参数 1 为 mysqli,第 12 行 C:\xampp\htdocs\test2\Sign-in\connectivity.php 中给出的 null

注意: undefined variable :第 12 行 C:\xampp\htdocs\test2\Sign-in\connectivity.php 中的 con

警告:mysqli_error() 期望参数 1 为 mysqli,第 12 行 C:\xampp\htdocs\test2\Sign-in\connectivity.php 中给出的 null

最佳答案

已编辑,因此使用 mysqli_:

<?php
$DB_HOST= "localhost";
$DB_NAME = "hhh";
$DB_USER = "root";
$DB_PASSWORD= "";

$con= mysqli_connect($DB_HOST,$DB_USER,$DB_PASSWORD,$DB_NAME) or die("Failed to connect to MySQL");
function SignIn($con)
{
session_start();
if(!empty($_POST['user'])){
$query = mysqli_query($con,"SELECT * FROM websiteusers WHERE userName = '$_POST[user]' AND pass = '$_POST[pass]'") or die(mysqli_error($con)); //changed
$row = mysqli_fetch_array($query) or die(mysqli_error($con));
if(!empty($row['userName']) && !empty($row['pass'])) //changed to a more modern operator
{
$_SESSION['userName'] = $row['pass'];
echo "SUCCESSFULLY LOGIN TO USER PROFILE PAGE...";

}
else
{
echo "SORRY... YOU ENTERD WRONG ID AND PASSWORD... PLEASE RETRY...";
}
}
}
if(isset($_POST['submit']))
{
SignIn($con);
}

?>

关于php - 如何才能让我注册时该帐户能够登录数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20432061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com