2015-03-27 2 views
0

Редактировать: У меня есть поиск в googled и поиск, прочитайте, что я могу найти из их документации. Даже беседовал с ними. Эта болтовня могла мне помочь. Вот почему я добираюсь до вас.Как подключиться к базе данных, которую я создал в HostGator?

Я полный новичок, и у меня возникают проблемы с базами данных на хостинге. Я думаю, мой вопрос также действителен с использованием других хостов.

Я создал db через cpanel в hostgator и добавил пользователя к нему.

Я скопировал этот скрипт в файл test.php в папке my/public_html/и запустил его на своем сайте.

В сценарии я использовал имя, пользователь и пароль из базы данных и пользователя, которого я ранее создал в 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/папке под названием «локальной; имя_бд = user_db»

Моя проблема заключается в том, что я думал, что подключение к базе данных I созданный с помощью cpanel, но когда я открываю phpMyAdmin, эта база данных пуста.

Как мне изменить этот сценарий, чтобы поговорить с базой данных, которую я создал с помощью cpanel, чтобы я мог достичь ее с помощью phpMyAdmin?

Редактировать 2: Итак, я узнал, что мне нужно использовать mysql, а не sqlite, потому что phpMyAdmin основан на MySQL.

Кроме того, используя скрипт от http://www.w3schools.com/php/php_mysql_create_table.asp Мне удалось подключиться! Итак, успех! Спасибо @ mituw16 и @Fred -ii- за то, что помогли мне! : D

+0

* «Как подключиться к базе данных я создал в HostGator?» * - прочитать их документацию. –

+0

@Fred -ii- Да, я редактировал свой пост. Я пробовал это. Даже беседовал с ними. – ToreS

+0

Добавьте '$ db-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION);' сразу после открытия соединения, посмотрите, не вернули ли он какие-либо ошибки. –

ответ

0

I am assuming you created a MySQL database if you used PHPMyAdmin even thought the tags say SQL Lite.

Похоже, вы пытаетесь создать базу данных SQL Lite вместо того, чтобы открывать соединение с вашей базой данных MySQL.

Изменить эту строку следующим

//open the database 
$db = new PDO('mysql:localhost;dbname=user_db', 'user_username', 'password'); 
+0

Здравствуйте! Причина, по которой я не отвечал раньше, - это то, что я получаю сообщение: «Исключение: не удалось найти драйвер». И мне было интересно, может ли синтаксис скрипта работать только для SQLite? – ToreS

+0

Глядя на документы Host Gator, похоже, что они поддерживают PDO, есть ли у вас пользовательский 'php.ini' на вашем веб-сайте, который может мешать этому? – mituw16

+0

Я ничего не сделал. Кроме того, когда я просматриваю свои файлы, он не может найти их. Тем не менее, я вижу, что на моей cpanel я могу создать собственный файл php.ini. Есть ли определенное поле, которое я должен включить?PS: Я очень благодарен за то, что вы мне помогли :) – ToreS

Смежные вопросы