0

A link to the server could not be established in /var/www/Test.php on line 25当我尝试在已创建的数据库中mysql_select_db(): Access denied for user 'pass'@'localhost' (using password: NO) in /var/www/Test.php on line 25创建表时出现错误。

我的代码:

  <?php
    $con = mysqli_connect("localhost","root","pass");
    connection to mysql server
    //checking the connection
     if(mysqli_connect_errno($con))
      {
        echo "Sorry!Failed to connect Mysql" . mysqli_connect_error();
      }
      $sql = "CREATE DATABASE viral_coff";
     if(mysqli_query($con,$sql))
     echo "database Created Successfully!";
     else
     echo "error in creating the database" . mysqli_error($con);
     mysql_select_db('viral_coff') or die(mysql_error());;
     $tab = ' CREATE TABLE retention( '.
            ' playing-date DATE ,' .
            ' that-day INT ,' .
            ' 1_day INT ,' .
            ' 3_days INT ,' .
            ' 7_days INT ,' .
            ' 31_days INT ,)' ; 
     if(mysqli_query($con,$tab))
     echo "Created Tables";
     else
     echo "Error creating table" . mysqli_error($con); 
     mysqli_close($con)
    ?>

我究竟做错了什么?

4

3 回答 3

0

您将mysql_*功能与mysqli_*功能混合在一起。你当然不能!

您需要使用mysqli_select_db()而不是mysql_select_db()

还要学会在你的 if 语句上放一些括号,这样你就可以 100% 确定语句内部和外部的内容。

于 2013-10-24T10:41:34.593 回答
0

您正在删除密码。

<?php
define('Hostname','localhost');
define('Username','root');
define('Password','');
define('DB_Name','viral_coff');

$con=mysqli_connect(Hostname,Username,Password);
// Check connection
if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

// Create database
$sql="CREATE DATABASE ".DB_Name;
if (mysqli_query($con,$sql))
{
    echo "Database ".DB_Name." created successfully";
}
else
{
    echo "Error creating database: " . mysqli_error($con);
}

$con = mysqli_connect(Hostname,Username,Password,DB_Name);
// Check connection
if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

// Create table
$sql = "CREATE TABLE retention(playing_date DATE, that_day INT, 1_day INT , 3_days INT ,7_days INT , 31_days INT)";

// Execute query
if (mysqli_query($con,$sql))
{
    echo "Table retention created successfully";
}
else
{
    echo "Error creating table: " . mysqli_error($con);
}
?> 
于 2013-10-24T11:04:45.573 回答
0

mysql_ 和 mysqli_ 函数不能很好地协同工作。选择其中之一并与他们合作,而不是两者兼而有之。

于 2013-10-24T10:44:19.307 回答