dani
Goto Top

php - Spaltennamen einer MySQL Tabelle auslesen

Hallo miteinander,

ich möchte gerne die Namen der Spalten aus einer Tabelle auslesen. Aber irgendwie bekomm ich nur auf die Werte der Spalten Zugriff.
Hat jemand eine Idee, wie ich an die Namen ran komme. Sollte mit php realisiert sein!! Danke...


Gruß
Dani

Content-Key: 31240

Url: https://administrator.de/contentid/31240

Ausgedruckt am: 19.03.2024 um 10:03 Uhr

Mitglied: pi314
pi314 26.04.2006 um 18:15:33 Uhr
Goto Top
hi,

schau mal unter
http://de.php.net/mysql_field_name

sind auch nette Beispiele drin..

oder suchst du was anderes?
Mitglied: Dani
Dani 26.04.2006 um 19:03:26 Uhr
Goto Top
Hi,
es gibt nur ein Beispiel das auf mein Problem passen könnte. Geht wunderbar!!! Danke..


Gruß
Dani
Mitglied: dsmcg
dsmcg 09.06.2006 um 01:06:22 Uhr
Goto Top
Sollte man so etwas nicht direkt von MySQL lösen lassen?

Beispiel:

SHOW COLUMNS FROM tabellenname;
Mitglied: Dani
Dani 09.06.2006 um 09:22:47 Uhr
Goto Top
Hi,
ich brauche die Namen dann sowieso in PHP!!
Mit diesem Script suche ich nach den falsch dargestellen Zeichen (ä,ü,ö,ß) und ersetze diese.
<?php

include ('inc/header.php');  

//Dekl. von Variablen
$anzahl=0;

//Makiert alle Tabellen in der Datenbank
$sql="SHOW TABLE STATUS FROM tennis;";  
$result=mysql_query($sql);
while($tabelle=mysql_fetch_object($result))
 {
  //Makiert alle Spaltennamen in der Tabelle
  $sql2="SHOW COLUMNS FROM $tabelle->Name;";  
  $result2=mysql_query($sql2);
  while($spalten=mysql_fetch_object($result2))
   {
    //Makiert alle Datensaätze in der Tabelle
  	$sql3="SELECT * FROM $tabelle->Name;";  
	$result3=mysql_query($sql3);
	while($zelle=mysql_fetch_object($result3))
	 {
	  //Erzeugt ein Objekt auf den Spaltennamen
  	  $spalte="$spalten->Field";  
	
	  //Ersetzt alle ä,ö,ü,ß
	  $new=str_replace("ö","ö",$zelle->$spalte);  
	  $new=str_replace("ä","ä",$new);  
	  $new=str_replace("ü","ü",$new);  
	  $new=str_replace("Ã?","ß",$new);  
	
	  //Schreibt den neuen Wert in die gleiche Zelle
	  $sql4="UPDATE $tabelle->Name SET $spalten->Field='$new' WHERE $spalten->Field='".$zelle->$spalte."';";  
	  mysql_query($sql4);
	
	  //Ausgabe
	  echo "Tabellenname: $tabelle->Name";  
	  echo "Spaltenname:$spalten->Field";  
	  echo "Text: $new";  
      echo "";  
	  
     }
	 //Um 1 erhöhen
	 $anzahl++;
   }
 }
//Ausgabe der Anzahl
echo "Einträge: $anzahl";  
?>


Gruß
Dani
Mitglied: dsmcg
dsmcg 10.06.2006 um 13:58:31 Uhr
Goto Top
Es gilt, was man mit MySQL lösen kann, sollte man auch mit MySQL lösen, Resourcen sparen ;)