2015-06-20 78 views
-2

我不斷收到這些錯誤:雙mysqli_query()預計參數1是mysqli的,空給予警告

警告:mysqli_query()預計參數1是mysqli的,空給出 /家庭/ u590953899 /的public_html /應用程序/註冊上線/ index.php的95

警告:mysqli_error()期望的是1個參數,0在 /home/u590953899/public_html/app/signup/index.php給出上線95

Line 95:

$result1 = mysqli_query($mysqli,$sql1) or die(mysqli_error()); 

整個代碼:

<?php 
session_start(); 
$mysqli1=mysqli_connect('localhost','u590953899_staff','DCr102404$','u590953899_dev') or die("Database Error"); 
if(isset($_POST['submit'])) 
{ 
//whether the username is blank 
if($_POST['username'] == '') 
{ 
    $_SESSION['error']['username'] = "User Name is required."; 
} 
else 
{ 
    //if it has the correct format whether the email has already exist 
    $username= $_POST['username']; 
    $sql1 = "SELECT * FROM user WHERE username = '$username'"; 
    $result1 = mysqli_query($mysqli,$sql1) or die(mysqli_error()); 
    if (mysqli_num_rows($result1) > 0) 
      { 
    $_SESSION['error']['username'] = "This username is already taken."; 
    } 
} 
//whether the email is blank 
if($_POST['email'] == '') 
{ 
    $_SESSION['error']['email'] = "E-mail is required."; 
} 
else 
{ 
    if(preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9._-]+)+$/", $_POST['email'])) 
    { 
    //if it has the correct format whether the email has already exist 
    $email= $_POST['email']; 
    $sql1 = "SELECT * FROM user WHERE email = '$email'"; 
    $result1 = mysqli_query($mysqli,$sql1) or die(mysqli_error()); 
    if (mysqli_num_rows($result1) > 0) 
      { 
    $_SESSION['error']['email'] = "This Email is already used."; 
    } 
    } 
    else 
    { 
    //this error will set if the email format is not correct 
    $_SESSION['error']['email'] = "Your email is not valid."; 
    } 
} 
//whether the password is blank 
if($_POST['password'] == '') 
{ 
    $_SESSION['error']['password'] = "Password is required."; 
} 
//if the error exist, we will go to registration form 
if(isset($_SESSION['error'])) 
{ 
    header("Location: http://app.bithumor.co/signup/"); 
    exit; 
} 
else 
{ 
    $username = $_POST['username']; 
    $email = $_POST['email']; 
    $password = $_POST['password']; 
    $com_code = md5(uniqid(rand())); 
$ip = $_SERVER['REMOTE_ADDR']; 

    $sql2 = "INSERT INTO user (username, email, password, com_code) VALUES ('$username', '$email', '$password', '$com_code')"; 
    $result2 = mysqli_query($mysqli1,$sql2) or die(mysqli_error()); 

我到處去尋找解釋/解決方案,但沒有什麼工作。

回答

0

我想通了....

上線即說:

$result1 = mysqli_query($mysqli,$sql1) or die(mysqli_error());

應該$mysqli1而不是$mysqli因爲$mysqli連接不存在

0

看起來您在提交的代碼中將第3行的MySQLi連接命名爲「$ mysqli1」,但您使用的是名爲「$ mysqli」的變量作爲mysqli_query函數中的第一個參數。

+0

我固定的但它仍然不起作用 –

+0

你仍然得到相同的錯誤?錯誤說$ mysqli爲null,這意味着你必須確保mysqli_connect是正確的。 –

相關問題