Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi,

ich moechte dynamische tabellen erzeugen, d.h. dynamisch in der anzahl der zeilen und spalten.

das ganze soll dann mit daten aus der datenbank gefuellt werden, und die tabelle anhand des sql statements angepasst ...

z.b.

select feld1, feld2, feld3 from tabelle;

daraus soll eine tabelle mit 3 spalten und x zeilen erzeugt werden, die mit den daten gefuellt werden ...

das mit den x zeilen ist ja kein problem ... aber das mit den spalten ... :confused:

kann mir da jemand nen anreiz geben, wie ich das realisieren koennte? also das mit der anzahl spalten und dem fuellen ...

thanks

Geschrieben

ich hab 20 verschiedene reports und moechte nicht fuer jeden die tabellen schreiben muessen. es gibt keine bestimmte anzahl an spalten, darum auch dynamisch.

db ist oracle 8i.

so long

Geschrieben

Hallo,


<?php

    mysql_connect("localhost", "mysql_user", "mysql_password") or

        die("could not connect");

    mysql_select_db("mydb");

    $result = mysql_query("SELECT id, name FROM mytable");

    $columns = mysql_num_fields($result);

    echo "<table>";

    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {

     echo "<tr>";

       for($i=0;$i<$columns;$i++){

        echo "<td>".$row[i]."</td>";

      }

     echo "</tr>";

    }

    echo "</table>";

    mysql_free_result($result);

?>


Das ganze ist ungetestet, da kein PHP zur Hand.

Die Spaltennamen kannst du noch mit mysql_fetch_field rauskriegen.

Gruß Jaraz

Geschrieben

mit mysql waer das einfach, ja. :D

aber ich hab auch schon was anderes gefunden ... in der chm hilfe, nachdem du mich auf columnames aufmerksam gemacht hast. :)


<?php
print "<HTML><PRE>\n";
$conn = OCILogon("scott", "tiger");
$stmt = OCIParse($conn,"select * from emp");
OCIExecute($stmt);
print "<TABLE BORDER=\"1\">";
print "<TR>";
print "<TH>Name</TH>";
print "<TH>Type</TH>";
print "<TH>Length</TH>";
print "</TR>";
$ncols = OCINumCols($stmt);
for ( $i = 1; $i <= $ncols; $i++ ) {
$column_name = OCIColumnName($stmt,$i);
$column_type = OCIColumnType($stmt,$i);
$column_size = OCIColumnSize($stmt,$i);
print "<TR>";
print "<TD>$column_name</TD>";
print "<TD>$column_type</TD>";
print "<TD>$column_size</TD>";
print "</TR>";
}
print "</TABLE>\n";
OCIFreeStatement($stmt);
OCILogoff($conn);
print "</PRE>";
print "</HTML>\n";
?>
[/php]

damit sollte das gehen ... :)

Geschrieben
Original geschrieben von -silencer-

mit mysql waer das einfach, ja. :D

Jau lesen müsste man können. Sorry! :rolleyes:

Aber ohne testen zu können, sind die Oracle Funktionen nicht so einfach anzuwenden. :D Obwohl das Prinzip ja das gleiche ist, wie du erkannt hast. Hauptsache es klappt.

Gruß Jaraz

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...