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

时间:2014-03-31 16:29:29

标签: php mysql phpmyadmin

以下是代码:

<?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>";

 ?>

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

2 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:0)

您似乎同时使用两个不同的图书馆

由于各种原因,不推荐使用原始mysql API,因此不应在新代码中使用它

相反,请使用PDO或mysqli

在您的代码中,您使用原始mysql进行db connect,然后使用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