Zero: Problem mit der array ausgabe

HI

ich habe ein problem mit der Ausgabe meiner Tabelle,
und da ich´s so garnicht drauf hab php zu programieren find ich auch keine lösung und bitte daher euch um hilfe
der code ist:

<html>
<head>
<title>Working Papers - Ausgabe</title>
</head>
<body>
<?php

$DatabaseHost = "mysql.rz.uni-karlsruhe.de";
$DatabaseUser = "local";
$DatabasePassword = "test";
$Database = "test";

$DatabasePointer=mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword);
mysql_select_db($Database, $DatabasePointer);

mySql >  "select Jahr, from paper_tabelle

GROUP BY Jahr
           ORDER BY anzahl ASC";

$query="SELECT * FROM paper_tabelle";
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();

echo "<b><center>Working Paper Series, FBV (since 2005)</center></b><br>";
echo "<table border=0>";
 echo " <colgroup>
         <col width='1000'>
         <col width='100'>
      </colgroup>";

echo"<tr><b>Series</b>:
<td>• Finance and Banking / Finanzwirtschaft und Banken (FUB)</td>
<tr><td>• Financial Engineering and Derivatives / Financial Engineering und Derivate (FED)</td></tr>
<tr><td>• Insurance / Versicherungen (LVW)</td></tr>
<tr><td>• Financial Markets and Information / Finanzmärkte und Informationen (FMI)</td></tr>
<tr></tr>
 <tr></tr>
  <tr></tr>
<td>It is noted in italics if Working Papers have been published elsewhere.</td>
</tr>";
 echo" <tr></tr>
    <tr></tr>";
echo "<table border=1>";
 echo " <colgroup>
         <col width='100'>
         <col width='100'>
      </colgroup>";

echo "<tr> <td align='left' valign='top'><b>No.</b>  </td> <td><b>Author(s) <td> <b>Titel</b> <td> <b>Series</b> </tr>";

$i=0;

$a=2004;
$b=$num;
$t=0;

while ($i <= $num-1) {

$ID=mysql_result($result,$i,"ID");
  $titel=mysql_result($result,$i,"Titel");
  $autor=mysql_result($result,$i,"Autor");
  $jahr=mysql_result($result,$i,"Jahr");
  $dateiname=mysql_result($result,$i,"Dateiname");

if ($jahr == $a ){

$arr[$t]= array($t=>"<tr> <td align='left' valign='top'>$b-$jahr <br>Eintrag Nr.$x </td> <td>$autor <td> <b><a href="datei-anzeigen.php?ID=",$ID,"" target="_blank">$titel</a></b><td> <b>$num</b> </tr>");

$i++;

$b++;
  $t++;
  }

else  {
     $b=1;
     $a++;
     }

}
$anzahl = count($arr);

while ($anzahl >= 0 ){
 print($arr[$anzahl]);

$anzahl--; }

?>

</body>
</html>

so wir dann immer nur ArrayArrayArrayArray...usw ausgegeben
aber wenn ich dass Array mit print_r aus gebe
bekomme ich meine Tabelle, aber dann steht dieser Schlüsselmist noch davor
Kann mir also jemand sagen warum mein Array seinen inhalt nich ausgibt???????????????????????????????

  1. Moin,

    ich glaub dein Problem liegt in dieser Zeile:

    $arr[$t]= array($t=>"<tr> <td align='left' valign='top'>$b-$jahr <br>Eintrag Nr.$x </td> <td>$autor <td> <b><a href="datei-anzeigen.php?ID=",$ID,"" target="_blank">$titel</a></b><td> <b>$num</b> </tr>");

    So wie es aussieht schreibst du in $arr[$t] ein neues Array mit dem Schlüssel $t und dem HTML-Kram als Inhalt.
    Schreib doch den HTML-Kram direkt in $arr[$t], also ohne das array dazwischen...

    MfG,
      Juan

  2. Hallo,

    grausiger Code.
    Daran wirst Du npch etwas arbeiten müssen.
    Insbesondere Fehlerbehandlung fehlt.

    Aber zur Frage, wie ein Array ausgegeben werden kann:

    foreach($_datensatz as $feldname => $datenwert)
    {
      echo '<td class="liste">'.htmlentities($datenwert,ENT_QUOTES)."</td>\n";
    }

    Mit einer weiteren Schleife drum herum kannst Du dann die einzelnen Datensätze aus dem Resultset holen und die übrigen Tabellen-tags (<tr>) hinzufügen.

    LG
    Chris