我的php代码正在连接到我的mysql数据库,但不会添加或访问任何数据


My php code is connecting to my mysql database but will not add or access any data

这是代码:

<?php
$con=mysql_connect('localhost', 'itorras', 'passwordhere');
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db( "my_db" ) or die( 'Error'. mysql_error() );
$sql="INSERT INTO Brackets(have things here)
VALUES(and here)";
if (!mysqli_query($con,$sql))
  {
  die('Error with adding row: ' . mysqli_error($con));
  }
echo "Thank you, your bracket has been submited.";
echo "<a href='index.html'>Click here to go back to home page</a>";
 ?>

我正在使用有权弄乱数据库的用户名和密码。因此,当我尝试将某些内容提交到文件中时,没有运行顶部错误,但底部错误会打印添加行的错误,仅此而已。此文件在我的本地服务器上工作正常,但在网络主机上不起作用。我正在使用godaddyweb托管,所以phpmyadmin和cpanelx。如果您需要更多信息,请告诉我。已经在这里呆了几个小时。

您正在使用mysql_connectmysqli_query .您正在混合mysqlmysqli.仅使用mysqli_* .

您似乎同时使用两个不同的库

由于各种原因,原始的mysql API已被弃用,您不应在新代码中使用它

相反,请使用PDO或mysqli

在您的代码中,您使用原始 mysql 进行数据库连接,然后使用 mysqli 进行查询。相反,你应该只使用 mysqli

替换以下代码:

$con=mysql_connect('localhost', 'itorras', 'passwordhere');
if (!$con)
{
    die('Could not connect: ' . mysql_error());
}

跟:

$db = new mysqli('localhost', 'user', 'pass', 'demo');
if($db->connect_errno > 0){
    die('Unable to connect to database [' . $db->connect_error . ']');
}

然后,您可以使用类似内容查询数据库:

$sql = <<<SQL
    SELECT *
    FROM `users`
    WHERE `live` = 1 
SQL;
if(!$result = $db->query($sql)){
     die('There was an error running the query [' . $db->error . ']');
 }

有关完整的概述,您可以查看文档

http://ca2.php.net/mysqli