Profil | Mitglieder | Registrieren | Start | Suche


PHP-Support.de » Programmierung » PHP & MySQL » Tabelle auf mysqli_Datenbank    » Hallo Gast [Login | Registrieren]

Neues Thema | Antworten   

Autor Beitrag
tomcoat20
Mitglied
Neuling


Dabei seit: 18.03.2018
Herkunft: keine Angabe
Posts: 1
     Tabelle auf mysqli_Datenbank Zitat | Bearbeiten

Guten Tag,

ich habe ich bereits durch diverse Forenseiten geklickt, jedoch konnte bis jetzt kein Tipp mein Problem wirklich lösen:

Ich möchte über PHP auf meine Datenbank zugreifen und dort eine Tabelle erstellen. Die Verbindung mit der Datenbank kann zwar hergestellt werden (ich kann auch zuvor erstellte Tabellen von dort abrufen) jedoch hakt es bei der Erstellung der Tabelle.
Dazu benutze ich folgenden Code:

 PHP 
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:


<?php

// Verbindungs-Objekt samt Zugangsdaten festlegen
@$stat = new mysqli('db727850181.db.1and1.com''*********''***''db7278*****');

// Verbindung ├╝berpr├╝fen
if (mysqli_connect_errno()) {
  
printf("Verbindung fehlgeschlagen: %s\n"mysqli_connect_error());
  exit();
}

// SQL-Befehl
$sql_befehl "CREATE TABLE data2";

if (
$stat->query($sql_befehl)) {
  
// Meldung bei erfolgreicher Erstellung der Datenbank
  
echo "Tabelle erfolgreich angelegt."

else {
  
// Meldung bei Fehlschlag
  
echo "Tabelle konnte nicht angelegt werden!";
}

// Verbindung zum Datenbankserver beenden
$stat->close();

?>


Leider bekomme ich nur die Meldung "Tabelle konnte nicht angelegt werden!".




Post wurde schon 2x editiert, das letzte mal am 18.03.2018 um 12:07 von tomcoat20
18.03.2018, 12:01 Profil | PM | E-Mail  
DingsDaBums
Mitglied
Exzellenter User


Dabei seit: 12.09.2010
Herkunft: keine Angabe
Posts: 2384
      Zitat | Bearbeiten

So weit ich weiß, braucht eine Tabelle mindestens eine Spalte. Du musst entsprechend die Spalten/Attribute angeben, die diese Tabelle haben soll.

Ansonsten ein genereller Tipp für solche Probleme:
Am besten die Abfrage mit PHPMyAdmin ausprobieren oder mit einer Sandbox Seite wie beispielsweise SQL Fiddle. Die Fehlermeldung sollte dann meist auch entsprechend erklären, wieso die Abfrage nicht funktioniert.

Oder du lässt dir von PDO die Fehlermeldung ausgeben. Das sollte aber dann nur während der Entwicklung des Skriptes der Fall sein und nicht später online.


Schau mal bei meinem Projekt vorbei. Vielleicht ist das ja was für dich MyStartPanel - Deine persönliche Startseite mit deinen Favoriten
Auf der Suche nach einem guten Vokabeltrainer? Vokabeltrainer Cramfire - Schnell und effektiv Vokabeln lernen
18.03.2018, 23:26 Profil | PM | E-Mail  
manu54
Mitglied
Neuling


Dabei seit: 08.04.2018
Herkunft: Bayern
Posts: 3
      Zitat | Bearbeiten

Es fehlt zumindest eine Spalte, damit eine Tabelle angelegt werden kann.
Dazu einfach den $sql_befehl z.B. so abändern:

 PHP 
1:
2:
3:
4:
5:
6:
<?php
$sql_befehl 

   
'CREATE TABLE IF NOT EXISTS `data2` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;'
;
der Rest sollte eigentlich soweit passen.

Als Charset ist auf jeden Fall utf8 oder utf8mb4 zu empfehlen, da die neueren PHP-Versionen ebenfalls per default mit utf8 arbeiten.
Note: Auch PHP-7.0 erreicht bereits in 8 Monaten sein EndOfLife!!



"You have to take the men as they are ... but you can not leave them like that !!"
"Wer schweigt, stimmt nicht immer zu. Er hat manchmal nur keine Lust, mit Idioten zu diskutieren" (Albert Einstein)
09.04.2018, 00:02 Profil | PM | E-Mail  
Seiten (1):  1 
PHP-Support.de » Programmierung » PHP & MySQL » Tabelle auf mysqli_Datenbank   

Neues Thema | Antworten   


Powered by Command Board 1.0 - Beta 2.0 © 2004-08 PHP-Einfach | Impressum | Datenschutz