如何在hostgator共享主机帐户中使用php创建数据库?

时间:2012-06-25 05:45:00

标签: php cpanel

我可以通过转到cpanel手动创建数据库。但我想用php创建数据库。我尝试过使用w#school.com的代码,但它不起作用。我如何使用PHP创建数据库?

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

if (mysql_query("CREATE DATABASE " . cpName_NewDbName,$con))
  {
  echo "Database created";
  }
else
  {
  echo "Error creating database: " . mysql_error();
  }

mysql_close($con);
?> 

上面的代码给我错误:( 顺便说一句,我试图在hostgator sup [端口论坛上询问,但我不能在他们的论坛中制造新的威胁:(

4 个答案:

答案 0 :(得分:2)

function create_db($cPanelUser,$cPanelPass,$dbName) {

$buildRequest = "/frontend/x3/sql/addb.html?db=".$dbName;

$openSocket = fsockopen('localhost',2082);
if(!$openSocket) {
    return "Socket error";
    exit();
}

$authString = $cPanelUser . ":" . $cPanelPass;
$authPass = base64_encode($authString);
$buildHeaders  = "GET " . $buildRequest ."\r\n";
$buildHeaders .= "HTTP/1.0\r\n";
$buildHeaders .= "Host:localhost\r\n";
$buildHeaders .= "Authorization: Basic " . $authPass . "\r\n";
$buildHeaders .= "\r\n";

fputs($openSocket, $buildHeaders);
while(!feof($openSocket)) {
    fgets($openSocket,128);
}
fclose($openSocket);


//echo "Created database $dbName";

}
create_db('username','password','dbname');

答案 1 :(得分:1)

在共享主机上,您无权通过PHP创建数据库,因为它们可以控制您可以拥有的数据库数量。你需要通过他们的控制面板来完成它。在旁注中,您应该使用PDO(如果应用程序保证,它可以使用更强大的抽象层)用于新的Web应用程序。不推荐使用php_mysql。此外,w3schools是bad, non-authoritative resource

答案 2 :(得分:0)

首先,检查用户名和密码以及mysql数据库名称是否正确,并具有访问数据库的权限。

然后,尝试使用新方法连接到名为PDO

的数据库

这是手册PDO MANUAL

答案 3 :(得分:-1)

我在CPanel中使用Hostgator创建数据库,我使用MySQL Workbench,这里有一些步骤你必须完成它! Click Here! 从工作台,您可以管理主机中的所有数据库。

Workbench它是一个非常简单的工具!