In PHP Tabelle aus Daten erstellen?


In PHP Tabelle aus Daten erstellen?

von Jac » Fr 22. Feb 2013, 18:06
Hallo,
aus meine Web Site habe ich eine Tabelle meiner Release mit Infos wie Datum, Name, Link, Bild usw.
Das wir langsam unübersichtlich. Hat jemand eine möglichst einfache Variante wie ich hier CSV oder XML direkt nach HTML rendern kann? Microdata wollte ich bei der Gelegenheit auf dazupacken.

Viele Grüße, Peter.

Re: In PHP Tabelle aus Daten erstellen?

von HiassofT » Fr 22. Feb 2013, 18:17
Jac hat geschrieben:Hat jemand eine möglichst einfache Variante wie ich hier CSV oder XML direkt nach HTML rendern kann?

Schau Dir mal die fgetcsv() Funktion in PHP an http://php.net/manual/en/function.fgetcsv.php

Das liest eine Zeile von einer CSV Datei ein und liefert sie als Array (1 Element pro Spalte) zurück.

Du musst dann nurmehr über alle Zeilen drüberiterieren und ein wenig HTML Code zur Formatierung dazwischen setzen.

so long,

Hias

Re: In PHP Tabelle aus Daten erstellen?

von skriegel » Fr 22. Feb 2013, 18:18

Re: In PHP Tabelle aus Daten erstellen?

von Jac » Fr 22. Feb 2013, 20:39
Super, Danke! Hat nach einigem hin und her mit Umbrüchen und Escaping geklappt.
So macht das Ändern der Website wieder Spass.

Code: Alles auswählen
<?php
if (($handle = fopen("content-productions-atari800.csv", "r")) !== FALSE) {
   while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
        $num = count($data);
      $entry_release_date = $data[0];
      $entry_id = $data[1];
      $entry_title = $data[2];
      $entry_type = $data[3];
      $entry_binary_download_path = $data[4];
      $entry_source_download_path = $data[5];
      $entry_image_path = $data[6];
      $entry_pouet_prod_id = $data[7];
      $entry_note = $data[8];

      echo "<tr itemscope itemtype=\"http://schema.org/SoftwareApplication\">";
      echo "<td><table>";
      echo "<tr>";
      echo "<meta itemprop=\"operatingSystems\" content=\"Atari 8-bit\"/>";
      echo "<meta itemprop=\"softwareApplicationCategory\" content=\"EntertainmentApplication\"/>";
      echo "<th class=\"productions_table_key\">Title</th><th itemprop=\"name\">$entry_title</th>";
      echo "</tr>";
      echo "<tr><td>Date of release</td><td itemprop=\"datePublished\">$entry_release_date</td></tr>";
      echo "<tr><td>Type of release</td><td itemprop=\"description\">$entry_type</td></tr>";
      echo "<tr><td>Download from</td><td>";
      echo "<a itemprop=\"downloadURL\" href=\"$entry_binary_download_path\" target=\"_blank\">WUDSN</a>&nbsp;,";
      echo "<a href=\"$entry_source_download_path\" target=\"_blank\">WUDSN</a> &nbsp;(sources)";
      echo "</td></tr>";
      echo "<tr><td>Rate and comment on</td><td><a href=\"http://pouet.net/prod.php?which=$entry_pouet_prod_id\" target=\"_blank\">Pouet</a>";
      echo "- Please click to increase the popularity</td></tr>";
      echo "<tr><td>Note</td><td>$entry_note</td></tr>";
      echo "</table></td>";
      echo "<td><img itemprop=\"image\" alt=\"$entry_title\" src=\"$entry_image_path\"/>";
      echo "</td>";
      echo "</tr>";

    }
    fclose($handle);
}

Re: In PHP Tabelle aus Daten erstellen?

von Jac » Fr 22. Feb 2013, 22:43
So, nun geht fast alles, inkl. das Google die Semantischen Infos zu den einzelnen Programmen herausparsen kann.
http://www.google.com/webmasters/tools/richsnippets?url=www.wudsn.com%2Fcontent.php&html=

Das Letzte woran ich hänge ist das Datumsformat. Mit Excel & CSB kenn ich mich gut genug aus, um zu wissen dass die einzig stabile Variant drei Spalten (Jahr/Monat/Tag) sind. In PHP kriege ich das auch wieder zusammen, allerdings ohne die führenden Nullen. Auch kein Problem, da gibt's doch betimmt so Formatfunktionen....

Leider laufen die bei mir immer auf "Funktion create_date/data_format" gibts nicht.
1&1, PHP 5.2 soweit ich sehen kann. So was elementares muss da doch gehen, oder?


$date = date_create( $entry_release_year . '-' .$entry_release_month . '-' . $entry_release_day );
$entry_release_date = date_format($date, 'Y-m-d');

Re: In PHP Tabelle aus Daten erstellen?

von des-or-mad » Fr 22. Feb 2013, 23:05
Jac hat geschrieben:Leider laufen die bei mir immer auf "Funktion create_date/data_format" gibts nicht.
1&1, PHP 5.2 soweit ich sehen kann. So was elementares muss da doch gehen, oder?


$date = date_create( $entry_release_year . '-' .$entry_release_month . '-' . $entry_release_day );
$entry_release_date = date_format($date, 'Y-m-d');



create_date und data_format wurden mit PHP 5.2 eingeführt. Wenn die Funktionen bei dir bzw. 1&1 nicht so recht wollen, könnte da evtl. auch noch eine alte Version laufen. Für deinen Fall bitten sich aber auch die Funktionen mktime und date an.

http://www.php.net/manual/en/function.mktime.php

Re: In PHP Tabelle aus Daten erstellen?

von Jac » So 24. Feb 2013, 17:44
Hatte ja vorher nix mit PHP gemacht... also nochmal geschaut und tatsächlich: Version stand auf 4.x, nach ändern auf 5.2. geht's nun, danke!

Bleibt nur noch das "Rausschmeissen" des alten Framesets, denn dass versteht Google auch nicht. Inzwischen haben ich gelernt, dass wenn "index.html" nicht da ist, "index.php" versucht wird. Soweit so gut.

Habt ihr evtl. noch einen Tipp, wie ich am besten die Einstellung für Größe,Position, Scrolling konvertiere?

http://www.wudsn.com/index.html vs.
http://www.wudsn.com/index.php

Code: Alles auswählen
   <frameset id="main_body" rows="130,*,29" border="0">
      <frame id="header_frame" src="header.html" scrolling="no"/>
      <frame id="content_frame" src="content-bak.php" scrolling="no"/>
      <frame id="footer_frame" src="footer.html" scrolling="no"/>
   </frameset>

==>

  <div id="header"   >
      <?php include 'content.php'; ?>
  <div id="footer"   >