-2

我可以通过转到 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

4 回答 4

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');
于 2014-12-20T12:57:08.517 回答
1

在共享主机上,您将无权通过 PHP 创建数据库,因为它们规定了您可以拥有的数据库数量。您需要通过他们的控制面板进行操作。在旁注中,您可能应该为新的 web 应用程序使用 PDO(或者如果应用程序允许,则使用更强大的抽象层)。php_mysql 已弃用。此外,w3schools 是一个糟糕的、非权威的资源

于 2012-06-25T23:07:51.867 回答
0

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

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

这是手册PDO MANUAL

于 2012-06-25T06:09:41.530 回答
-1

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

工作台是一个非常容易使用的工具!

于 2015-08-11T11:40:32.900 回答