编辑:我已经在谷歌上搜索过了,阅读了他们的文档。甚至和他们聊天。聊天可以帮助我。这就是我联系你的原因。
我是一个完全的初学者,在开始使用hostgator上的数据库时遇到了一些困难。我想我的问题在使用其他主机时也是有效的。
我通过hostgator中的cpanel创建了一个数据库,并添加了一个用户
我将这个脚本复制到/public_html/文件夹中的test.php中,并在我的网站上运行它。
在脚本中,我使用了数据库中的名称、用户和密码,以及我之前在cpanel中创建的用户。我可以使用phpMyAdmin看到这个数据库。
<?php
try
{
//open the database
$db = new PDO('sqlite:localhost;dbname=user_db', 'user_username', 'password');
//create the database
$db->exec("CREATE TABLE Dogs (Id INTEGER PRIMARY KEY, Breed TEXT, Name TEXT, Age INTEGER)");
//insert some data...
$db->exec("INSERT INTO Dogs (Breed, Name, Age) VALUES ('Labrador', 'Tank', 2);".
"INSERT INTO Dogs (Breed, Name, Age) VALUES ('Husky', 'Glacier', 7); " .
"INSERT INTO Dogs (Breed, Name, Age) VALUES ('Golden-Doodle', 'Ellie', 4);");
//now output the data to a simple html table...
print "<table border=1>";
print "<tr><td>Id</td><td>Breed</td><td>Name</td><td>Age</td></tr>";
$result = $db->query('SELECT * FROM Dogs');
foreach($result as $row)
{
print "<tr><td>".$row['Id']."</td>";
print "<td>".$row['Breed']."</td>";
print "<td>".$row['Name']."</td>";
print "<td>".$row['Age']."</td></tr>";
}
print "</table>";
// close the database connection
$db = NULL;
}
catch(PDOException $e)
{
print 'Exception : '.$e->getMessage();
}
?>
这很好,但它在我的/public_html/文件夹中创建了一个名为'localhost;dbname=user_db'
我的问题是,我以为我正在连接到使用cpanel创建的数据库,但当我打开phpMyAdmin时,该数据库是空的。
如何更改该脚本以与我使用cpanel创建的数据库对话,以便使用phpMyAdmin访问它?
编辑2:所以我了解到我需要使用mysql,而不是sqlite,因为phpMyAdmin是基于mysql的。
此外,使用中的脚本http://www.w3schools.com/php/php_mysql_create_table.asp我能够连接!所以,成功!感谢@mituw16和@Fred-i-对我的帮助!:D
我假设您创建了一个MySQL数据库,如果您使用PHPMyAdmin,甚至认为标签上写的是SQLLite
看起来您正在尝试创建一个SQLLite数据库,而不是打开与MySQL数据库的连接。
将此行更改为以下
//open the database
$db = new PDO('mysql:localhost;dbname=user_db', 'user_username', 'password');