Hallo,
Ich habe mir mit Hilfe von Tutorials ein PHP Script erstellt. Nur habe ich einige Probleme mit der Ausgabe von bestimmten Datenbankfelder mit der korrekten Reihenfolge.
Der RSS Feed soll die letzten Einträge der 7 Tage mit der höchsten ID (kArtikel) abwärts lesen und diese dann ausgeben.
Bei der Ausgabe muss ich 2 Tabellen ansprechen "tartikel" und "tartikelpic". In der Tabelle "tartikelpic" sind die jeweiligen Bilder je Artikel gespeichert.
Damit ich aber nur 1 Bild anzeigen möchte muss ich aus der Tabelle "tartikelpic" die Spalte "nNr" ansprechen und die niedrigste Zahl nehmen.
Von der niedrigsten Zahl soll der "cPfad" angesprochen werden und diese dann auch darstellen.
Meine Datenbanken
Mein PHP Code
Der Script hier läuft jedoch ist die Auflistung der Bilder nicht korrekt.
Die Ausgabe
Der Code greift nicht den mindesten Zahl der Spalte $nNr und auch nicht der $cPath.
Würde mich über unterstützung sehr freuen. Danke
Ich habe mir mit Hilfe von Tutorials ein PHP Script erstellt. Nur habe ich einige Probleme mit der Ausgabe von bestimmten Datenbankfelder mit der korrekten Reihenfolge.
Der RSS Feed soll die letzten Einträge der 7 Tage mit der höchsten ID (kArtikel) abwärts lesen und diese dann ausgeben.
Bei der Ausgabe muss ich 2 Tabellen ansprechen "tartikel" und "tartikelpic". In der Tabelle "tartikelpic" sind die jeweiligen Bilder je Artikel gespeichert.
Damit ich aber nur 1 Bild anzeigen möchte muss ich aus der Tabelle "tartikelpic" die Spalte "nNr" ansprechen und die niedrigste Zahl nehmen.
Von der niedrigsten Zahl soll der "cPfad" angesprochen werden und diese dann auch darstellen.
Meine Datenbanken
Code:
tartikelpict +--------------+-----------------+-------+ | kartikelpict | cPfad | nNr | +--------------+-----------------+-------+ | 560 | 560picture4.jpg | 4 | | 560 | 560picture3.jpg | 3 | | 560 | 560picture2.jpg | 2 | | 560 | 560picture.jpg | 1 | +--------------+-----------------+-------+ | 561 | 561picture4.jpg | 4 | | 561 | 561picture3.jpg | 3 | | 561 | 561picture2.jpg | 2 | | 561 | 561picture.jpg | 1 | +--------------+-----------------+-------+ tartikel +----------+-------+---------------------+------------+-------+ | kArtikel | cName | cKurzBeschreibung | dErstellt | cSeo | +----------+-------+---------------------+------------+-------+ | 560 | 12345 | Short Description | 2014-03-25 | 12345 | +----------+-------+---------------------+------------+-------+ | 561 | ABCDE | Short Description | 2014-03-25 | abcde | +----------+-------+---------------------+------------+-------+
PHP-Code:
<?php
# Header
$ausgabe1 ="<?xml version='1.0' encoding='ISO-8859-1'?>
<rss version='2.0'>
<channel>
<title>RSS</title>
# Verbinduungseinstellungen
$db = mysql_connect ("localhost", "", "");
$datenbank = "";
# Datum der Erstellung (Heute..)
$date = date(r);
# Datensatz-Ausgabe festlegen
$sql = "SELECT
p1.kArtikel,
p1.cName,
p1.cKurzBeschreibung,
p1.dLetzteAktualisierung,
p1.dErstellt,
p1.cSeo,
p2.kartikelpict,
p2.nNr,
p2.cPfad
FROM tartikel AS p1
JOIN tartikelpict AS p2
ON (p1.kArtikel = p2.kartikelpict)
JOIN (SELECT kartikelpict, MIN(nNr) min_nNr FROM tartikelpict GROUP BY kartikelpict) p3
ON (p2.kartikelpict = p3.kartikelpict AND p2.nNr = p3.min_nNr)
ORDER BY p1.kArtikel
DESC LIMIT 10";
# Sämtliche Datensatz-Ausgabe durchführen
$resultat = mysql_db_query($datenbank, $sql);
while ($row = mysql_fetch_array($resultat)) {
extract($row);
$x=0;
$x++;
$text1 = str_replace( "href=\"/", "href=\"http://www.domain.de/", $text );
$ausgabetext = str_replace( "src=\"/", "src=\"http://www.domain.de/", $text1 );
$ausgabe2[$x] .= "
<item>
<title>$cName</title>
<link>http://electronics.semaf.at/$cSeo</link>
<description><![CDATA[ <img src='http://www.domain.at/bilder/produkte/normal/$nNr' height='144' width='144' /> $cKurzBeschreibung ]]> </description>
<guid isPermaLink='false'>http://www.domain.at/$cSeo</guid>
<pubDate>$dErstellt</pubDate>
<enclosure url='http://www.domain.at/bilder/produkte/normal/$cPfad' type='image/jpeg' />
</item>";
}
mysql_close($db);
$ausgabe3 = "</channel></rss>";
# XML Datei erstellen (CHMOD muss natürlich dementsprechend angepasst sein..)
# ---------------------------------------------------------------------------
$Datei = "rss.xml"; // Dateiname
$Text .= "$ausgabe1 $ausgabe2[$x] $ausgabe3";
$FilePointer = fopen($Datei, "w");
fwrite($FilePointer, $Text);
fclose($FilePointer);
?>
Die Ausgabe
Code:
<item> <title>Title 1</title> <link>http://www.domain.de/title1</link> <guid isPermaLink="false">http://www.domain.de/title1</guid> <pubDate>Thu, 12 Jun 2014 00:00:00 +0200</pubDate> <description><![CDATA[ <img src="http://www.domain.de/bilder/produkte/normal/560picture4.jpg" height="144" width="144" />Short Description</p> ]]></description> <enclosure url="http://www.domain.de/bilder/produkte/normal/560picture4.jpg" type="image/jpeg" /> </item> <item> <title>Title 2</title> <link>http://www.domain.de/title1</link> <guid isPermaLink="false">http://www.domain.de/title1</guid> <pubDate>Thu, 12 Jun 2014 00:00:00 +0200</pubDate> <description><![CDATA[ <img src="http://www.domain.de/bilder/produkte/normal/560picture3.jpg" height="144" width="144" />Short Description</p> ]]></description> <enclosure url="http://www.domain.de/bilder/produkte/normal/560picture3.jpg" type="image/jpeg" /> </item> <item> <title>Title 3</title> <link>http://www.domain.de/title1</link> <guid isPermaLink="false">http://www.domain.de/title1</guid> <pubDate>Thu, 12 Jun 2014 00:00:00 +0200</pubDate> <description><![CDATA[ <img src="http://www.domain.de/bilder/produkte/normal/560picture2.jpg" height="144" width="144" />Short Description</p> ]]></description> <enclosure url="http://www.domain.de/bilder/produkte/normal/560picture3.jpg" type="image/jpeg" /> </item>
Würde mich über unterstützung sehr freuen. Danke
Kommentar