drsrq26482 2013-12-06 19:31
浏览 31
已采纳

当我注册该帐户能够登录数据库时,如何实现这一点

So I am a newbie, to php/mysql and I would likeyou to see some code before I ask

Here is my two tables in by database

websiteusers(for my sign-up page)

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)
);

and username (mysql for login page)

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

here is my two php scripts

connectivity.php (for login page)

<?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();
}

?>

and connectivity-sign-up.php (for sign-up page)

<?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();
}
?>

So my question is is how could I make it so when a user signs-up, he/she is automatically inserted into my username database?

EDIT no I have it connected to one table, and have changed it to mysqli but keep getting this error..

Notice: Undefined variable: con in C:\xampp\htdocs\test2\Sign-in\connectivity.php on line 12

Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\test2\Sign-in\connectivity.php on line 12

Notice: Undefined variable: con in C:\xampp\htdocs\test2\Sign-in\connectivity.php on line 12

Warning: mysqli_error() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\test2\Sign-in\connectivity.php on line 12

  • 写回答

2条回答 默认 最新

  • dousi2029 2013-12-06 19:46
    关注

    EDITED SO THAT IT USES 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);
            }
    
        ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图