php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 2 Stimmen, 5,00 durchschnittlich.
  #16 (permalink)  
Alt 07-02-2008, 21:49
belanglos
 Newbie
Links : Onlinestatus : belanglos ist offline
Registriert seit: Feb 2008
Beiträge: 13
belanglos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Der nachfolgende Code scheint zu funktionieren. Ich habe jetzt nur folgenden Probleme:
1. Wie bekomme ich es hin, dass ich bei <pubDate>".$dbRow->date."</pubDate> das Datum als "RFC-822 date-time" formatiert wird_

2. Ich habe ein Problem mit dem Link. Im Link zur News kommt bspw. "&" vor. Und laut XML-Spezifikation ist dies nicht erlaubt. Wie kann ich jetzt noch die News verlinken?

PHP-Code:
<?php
define
("ABSPATH""http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']));

$dbLink mysql_connect("***""***""***") or die(mysql_error());
if( 
$dbLink ) {
    
mysql_select_db("***") or die(mysql_error());
}

header("Content-type: text/xml; charset=iso-8859-1");
echo 
"<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";

?>
<rss version="2.0">
    <channel>
        <title>TITEL</title>
        <link>[url]http://www.test.de[/url]</link>
        <description>Feed</description>
        <language>de-de</language>
        <?php
        $sqlQuery 
"SELECT titel, id, head, date FROM _news ORDER BY id DESC LIMIT 0, 20";
        
$dbRes mysql_query($sqlQuery)
            or die(
mysql_error());
        while( 
$dbRow mysql_fetch_object($dbRes) ) {
            echo 
"<item>\n";
            echo 
"<title>".$dbRow->titel."</title>\n";
            echo 
"<link>".ABSPATH."</link>\n";
            echo 
"<description><![CDATA[".$dbRow->head."]]></description>\n";
            echo 
"<pubDate>".$dbRow->date."</pubDate>\n";
            echo 
"</item>\n";
        }
        
?>
    </channel>
</rss>
Mit Zitat antworten
  #17 (permalink)  
Alt 08-02-2008, 10:50
arkos
 PHP Senior
Links : Onlinestatus : arkos ist offline
Registriert seit: Feb 2003
Ort: hamburg
Beiträge: 1.015
arkos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

1. würde ich direkt in mysql machen...
Code:
SELECT DATE_FORMAT(date, %a, %d %b %Y %H:%i:%s GMT) AS datum
(btw. is "date" nicht reserviert? schau besser noch mal nach)!

2. das & habe ich seinerzeit (lange nicht gexmlt ) immer ganz flauschig mit CDATA ausgegeben.... gibt aber vielleicht noch bessere wege
__________________
**********
arkos
**********
Mit Zitat antworten
  #18 (permalink)  
Alt 08-02-2008, 14:19
belanglos
 Newbie
Links : Onlinestatus : belanglos ist offline
Registriert seit: Feb 2008
Beiträge: 13
belanglos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn ich daraus

Code:
 $sqlQuery = "SELECT titel, id, head, date DATE_FORMAT(date, %a, %d %b %Y %H:%i:%s GMT) AS date FROM
 dfc_news ORDER BY id DESC LIMIT 0, 20";
mache, bekomme ich die Fehlermeldung:

Zitat:
# You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near 'DATE_FORMAT(date, %a, %d %b %Y %H:%i:%s
GMT) AS date FROM dfc_news ORDER BY id D' at line 1
Und wenn ich zwei Abfragen erstelle, wie z.B.:
Code:
$sqlQuery = "SELECT titel, id, head, date FROM dfc_news 
ORDER BY id DESC LIMIT 0, 20";
$sqlQuery = "SELECT DATE_FORMAT(date, %a, %d %b %Y 
%H:%i:%s GMT) AS date";
erhalte ich die Fehlermeldung:
Zitat:
# You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near '%a, %d %b %Y %H:%i:%s GMT) AS date' at line
1
Also irgendwie scheint was mit dem Datum nicht zu passen. Nur was?
Mit Zitat antworten
  #19 (permalink)  
Alt 08-02-2008, 14:32
arkos
 PHP Senior
Links : Onlinestatus : arkos ist offline
Registriert seit: Feb 2003
Ort: hamburg
Beiträge: 1.015
arkos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sorry, kleiner faux pas (oder wie dat heißt) bei mir

hochkommata rein, komma raus:
Code:
SELECT DATE_FORMAT(date, '%a %d %b %Y %H:%i:%s GMT') AS datum
und fehler bei dir:
nimm das erste unterstrichene date weg
Code:
SELECT date DATE_FORMAT(date, '%a %d %b %Y %H:%i:%s GMT') AS datum
       ----
__________________
**********
arkos
**********
Mit Zitat antworten
  #20 (permalink)  
Alt 08-02-2008, 15:51
belanglos
 Newbie
Links : Onlinestatus : belanglos ist offline
Registriert seit: Feb 2008
Beiträge: 13
belanglos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Fauxpas war schon richtig

Muss ich daraus dann eine Abfrage machen oder in zwei packen? Wenn ich daraus:

Code:
        $sqlQuery = "SELECT titel, id, head, DATE_FORMAT(date, 
'%a %d %b %Y %H:%i:%s GMT') AS datum FROM dfc_news ORDER BY 
id DESC LIMIT 0, 20";
mache, bekomme ich immer die Fehlermeldung:

Zitat:
line 15, column 9: pubDate must be an RFC-822 date-time: (6 occurrences) [help]

<pubDate></pubDate>
Mit Zitat antworten
  #21 (permalink)  
Alt 08-02-2008, 16:12
arkos
 PHP Senior
Links : Onlinestatus : arkos ist offline
Registriert seit: Feb 2003
Ort: hamburg
Beiträge: 1.015
arkos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sollte nu schon richtig sein (wenn ich das rcc-format richtig verstanden habe)

du musst allerdings bedenken, dass in der jetzigen version das formatierte datum in 'datum' steht und nicht mehr in 'date'

also NICHT:
PHP-Code:
echo "<pubDate>".$dbRow->date."</pubDate>\n"
sondern:
PHP-Code:
echo "<pubDate>".$dbRow->datum."</pubDate>\n"
__________________
**********
arkos
**********
Mit Zitat antworten
  #22 (permalink)  
Alt 08-02-2008, 17:11
belanglos
 Newbie
Links : Onlinestatus : belanglos ist offline
Registriert seit: Feb 2008
Beiträge: 13
belanglos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hast recht Hat geklapppt.

Nur jetzt sehe ich noch ein kleines Problem. In der News selber werden gewisse Sachen mit zum Beispiel BBCode formatiert. Diese werden jetzt auch mit angezeigt. Beispielsweise sieht man im RSS Feed [b] [url] oder ähnliches BBCode typische Zeichen. Habe ich ein Möglichkeit, diese Zeichen noch auszufiltern?

Und ich habe noch eine Frage: Gibt es eine Möglichkeit, alles in eine Datei wie zum Beispiel test.xml auszugeben. Denn ich habe sonst die Befürchtung, dass das zu viele Zugriffe auf die Datenbank sein werden.
Mit Zitat antworten
  #23 (permalink)  
Alt 08-02-2008, 17:23
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Beispielsweise sieht man im RSS Feed [b] [url] oder ähnliches BBCode typische Zeichen
Mit RegExp kein Problem
Code:
$pattern = '/\[.*\]/isU';
und preg_replace(). Als Ersatzstring gibst du '' (Leerstring) an

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #24 (permalink)  
Alt 08-02-2008, 17:48
tontechniker
 PHP Senior
Links : Onlinestatus : tontechniker ist offline
Registriert seit: Jul 2005
Beiträge: 1.972
tontechniker ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Und ich habe noch eine Frage: Gibt es eine Möglichkeit, alles in eine Datei wie zum Beispiel test.xml auszugeben. Denn ich habe sonst die Befürchtung, dass das zu viele Zugriffe auf die Datenbank sein werden.
file_put_contents - wieviele Zugriff sollens denn werden?
__________________
Die Regeln | rtfm | register_globals | strings | SQL-Injections | []
Mit Zitat antworten
  #25 (permalink)  
Alt 08-02-2008, 17:57
belanglos
 Newbie
Links : Onlinestatus : belanglos ist offline
Registriert seit: Feb 2008
Beiträge: 13
belanglos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Schon mal einen fetten Dank an euch.

Zitat:
Original geschrieben von jahlives
Mit RegExp kein Problem
Code:
$pattern = '/\[.*\]/isU';
und preg_replace(). Als Ersatzstring gibst du '' (Leerstring) an

Gruss

tobi
Wie binde ich das denn am besten mit ein? Bin da gerade etwas ratlos wie ich das an welcher Stelle einbinde.


Zitat:
Original geschrieben von tontechniker
file_put_contents - wieviele Zugriff sollens denn werden?
An dieser Geschichte bastel ich später. Danke
Mit Zitat antworten
  #26 (permalink)  
Alt 08-02-2008, 18:36
tontechniker
 PHP Senior
Links : Onlinestatus : tontechniker ist offline
Registriert seit: Jul 2005
Beiträge: 1.972
tontechniker ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Wie binde ich das denn am besten mit ein? Bin da gerade etwas ratlos wie ich das an welcher Stelle einbinde.
An dieser Stelle:
PHP-Code:
echo "<description><![CDATA[".$dbRow->head."]]></description>\n"
__________________
Die Regeln | rtfm | register_globals | strings | SQL-Injections | []
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

jqPlot jQuery Plotting Plugin ansehen jqPlot jQuery Plotting Plugin

jqPlot ist ein plotting und charting plugin für das jQuery Javascript framework

06.11.2019 Berni | Kategorie: AJAX/ Framework
WYSIWYG Editor

WYSIWYG Editor zum Einbinden in PHP Scripte.

21.10.2019 Stephan_1972 | Kategorie: PHP/ WYSIWYG
Modelmanager

Der Modelmanager ist ein Webtool für Fotografen, kann als komplette Homepage oder als Webtool installiert werden.

10.10.2019 Stephan_1972 | Kategorie: PHP/ Bilder
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:58 Uhr.