Hi Leute
Möchte mir gerne so einen Datenbankmanager schreiben (kleines projekt) und brauche dazu die genauen Daten einer Tabelle.
Das heißt ich möchte wissen welche Felder da drinnen sind und mit welchen Eigenschaften.
Hab mich ein wenig umgeschaut und bin dann draufgekommen dass es fix fertige Funktionen in PHP gibt die man anwenden kann. Auch im SelfPHP Skriptum habe ich eni Beispiel gefunden.
Allerdings funktioniert dies nicht so ganz wie es sollte.
Mit folgendem Code habe ich dies getestet
Diese Fehlermeldung bringt mir der Parser zurück!
Was kann da sein?
Ich habe probiert die Tabellen und Datenbanken mittels SQL Query auszugeben allerdings weiß ich nicht wie man dann auf die array felder zugreifen kann.
dh wenn ich einen SQL Befehl schicke SHOW DATABASES; und mir das ganze dann mit mysql_fetch_array in ein Array lad dann kann ich mit current($db_abfrage); den Namen auslesen.
Wenn ich dies in einem Array hab (also mit mysql_fetch_array($db_abfrage)) dann muss ich ja mit einem Namen draufzugreifen wie zb $databases['name'] ! Wie heißen diese Feldnamen?
Grüße Posseidon
Möchte mir gerne so einen Datenbankmanager schreiben (kleines projekt) und brauche dazu die genauen Daten einer Tabelle.
Das heißt ich möchte wissen welche Felder da drinnen sind und mit welchen Eigenschaften.
Hab mich ein wenig umgeschaut und bin dann draufgekommen dass es fix fertige Funktionen in PHP gibt die man anwenden kann. Auch im SelfPHP Skriptum habe ich eni Beispiel gefunden.
Allerdings funktioniert dies nicht so ganz wie es sollte.
Mit folgendem Code habe ich dies getestet
PHP:
$verbindung=@MYSQL_CONNECT($db_host,$db_username,$db_passwort);
$tableabfrage=mysql_list_fields($db_databasename,$db_tablename,$verbindung);
$tableeintraege=mysql_num_fields($tableabfrage);
if ($tableeintraege==0)
{
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" style=\"height:50px;\">\n";
echo "<tr><td>\n";
echo "<font class=\"fonth1\">\n";
echo $error_noenteredtables[$lang];
echo "</font>";
echo "</td></tr></table>";
}
else
{
echo "<table border=\"0\" cellpadding=\"2\" cellspacing=\"2\" style=\"height:50px;\">\n";
echo "<tr><td class=\"fonth2_b\">\n";
echo $showtabelle_hl_tabellefield[$lang];
echo "</td><td class=\"fonth2_b\">\n";
echo $showtabelle_hl_tabelletype[$lang];
echo "</td><td class=\"fonth2_b\">\n";
echo $showtabelle_hl_tabelleextra[$lang];
echo "</td></tr>\n";
for ($i=1;$i<=$tableeintraege;$i++)
{
$type = mysql_field_type($tableabfrage,$i);
$name = mysql_field_name($tableabfrage,$i);
$len = mysql_field_len($tableabfrage,$i);
$flags = mysql_field_flags($tableabfrage,$i);
echo "<tr><td class=\"fonth1\">\n";
echo $name;
echo "</td><td class=\"fonth1\">\n";
echo $type[$len];
echo "</td><td class=\"fonth1\">\n";
echo $flags;
echo "</tr>\n";
}
}
Diese Fehlermeldung bringt mir der Parser zurück!
Code:
Warning: mysql_field_type(): Field 9 is invalid for MySQL result index 7 in D:\web\htdocs\server\manager\index.php on line 183
Warning: mysql_field_name(): Field 9 is invalid for MySQL result index 7 in D:\web\htdocs\server\manager\index.php on line 184
Warning: mysql_field_len(): Field 9 is invalid for MySQL result index 7 in D:\web\htdocs\server\manager\index.php on line 185
Warning: mysql_field_flags(): Field 9 is invalid for MySQL result index 7 in D:\web\htdocs\server\manager\index.php on line 186
Was kann da sein?
Ich habe probiert die Tabellen und Datenbanken mittels SQL Query auszugeben allerdings weiß ich nicht wie man dann auf die array felder zugreifen kann.
dh wenn ich einen SQL Befehl schicke SHOW DATABASES; und mir das ganze dann mit mysql_fetch_array in ein Array lad dann kann ich mit current($db_abfrage); den Namen auslesen.
Wenn ich dies in einem Array hab (also mit mysql_fetch_array($db_abfrage)) dann muss ich ja mit einem Namen draufzugreifen wie zb $databases['name'] ! Wie heißen diese Feldnamen?
Grüße Posseidon