2016-09-02 3 views
-2

Ich möchte eine Tabelle in einer MySQL-Datenbank mit PHP erstellen. Dies ist mein Versuch:Wie erstellt man eine Tabelle in MySQL mit PHP?

$dbhost = 'rdbms.strato.de'; 
$dbusername = 'Userxxx'; 
$dbuserpass = 'Passwordxxx'; 
$dbname = 'DBxxx'; 

$link_id = mysql_connect ($dbhost, $dbusername, $dbuserpass); 
echo "success in database connection."; 

if (!mysql_select_db($dbname)) die(mysql_error()); 
echo "success in database selection."; 

$result = "CREATE TABLE address_book (first_name VARCHAR(25), last_name VARCHAR(25), phone_number VARCHAR(15))"; 

if (mysql_query($result)){ 
echo "TABLE created."; 
} 

else { 
echo "Error in CREATE TABLE."; 
} 

Aber das gibt mir den Fehler

success in database connection.Access denied for user XXX to database XXX 

ich viel suchen, aber keine erfolgreiche Lösung finden. Hat jemand eine Idee?

+0

Hat Ihr MySQL-Benutzer Schreibzugriff auf diese Datenbank? Wenn nicht, sieh dir folgenden Link an: http://dev.mysql.com/doc/refman/5.7/en/grant.html – FragBis

+0

Scheint so, als ob du nicht DBxxx auswählen kannst. Hat Ihr Benutzer die richtigen Berechtigungen? – Iain

+0

Ihr aktueller Benutzer '$ dbusername' für die Verbindung hat nicht die Rechte, eine Tabelle' address_book' im ausgewählten DB '$ dbname' anzulegen. – JustOnUnderMillions

Antwort

0

Versuchen ohne Beteiligung PHP verbinden:

mysql -u Userxxx -h rdbms.strato.de -pPasswordxxx 

Wenn dies nicht funktioniert, und ich vermute, es wird der Datenbankadministrator nicht, kontaktieren Sie Ihr Passwort zurücksetzen können.

Wenn das Kennwort nicht das Problem ist, ist der Remote-Computer möglicherweise nicht bereit, Ihre Verbindung zu akzeptieren. Weitere Informationen hierzu finden Sie unter Access remote database from command line.

Wenn Sie bekommen in, dann versuchen, die Datenbank zugreifen, die Sie wollen:

USE DBxxx; 
SHOW TABLES; 

Das Ding ist, ist PHP nicht Ihr Problem hier; Es ist die Verbindung. Das ist also zu untersuchen.

... und wenn Sie das eingerichtet haben, können Sie Ihren Code aktualisieren; mysql_connect und mysql_select_db sind veraltet.

0

Ich brauche eine Klarstellung über Ihren Hostnamen, Benutzernamen, Passwort, Datenbankname. Wie auch immer folgender Code in meinem lokalen Server funktioniert. Wenn Sie irgendwelche Zweifel über meinen Code haben, teilen Sie bitte Ihren Hostnamen, Passwort, DBName, etc.

$dbhost = 'localhost'; 
$dbusername = 'root'; 
$dbuserpass = ''; 
$dbname = 'test'; 

    $link_id = mysqli_connect ($dbhost, $dbusername, $dbuserpass,$dbname); 
echo "success in database connection."; 



$result = "CREATE TABLE address_book (first_name VARCHAR(25), last_name VARCHAR(25), phone_number VARCHAR(15))"; 

if (mysqli_query($link_id,$result)){ 
echo "TABLE created."; 
} 

else { 
echo "Error in CREATE TABLE."; 
} 
Verwandte Themen