php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 29-12-2012, 22:40
newbie1955
 Registrierter Benutzer
Links : Onlinestatus : newbie1955 ist offline
Registriert seit: Dec 2012
Beiträge: 241
newbie1955 befindet sich auf einem aufstrebenden Ast
Standard Sonderzeichen-Probleme

Hallo, ich lese auf meiner Seite einige rss-feeds mit dem magpie-parser ein. Bisher ohne Probleme. Zu Beginn der Funktion "feedholen" definiere ich:
PHP-Code:
define('MAGPIE_INPUT_ENCODING''UTF-8');
define('MAGPIE_OUTPUT_ENCODING''UTF-8'); 
Und das klappt auch, nur jetzt habe ich einen rssfeed hinzugefügt, der utf-8 als charset festlegt und hier kommen mir alle Sonderzeichen kryptisch zerschossen auf meiner Seite raus. Hat jemand eine Idee?

Gruß
newbie 1955
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 30-12-2012, 11:09
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

Zitat:
Zitat von newbie1955 Beitrag anzeigen
jetzt habe ich einen rssfeed hinzugefügt, der utf-8 als charset festlegt und hier kommen mir alle Sonderzeichen kryptisch zerschossen auf meiner Seite raus. Hat jemand eine Idee?
Da gibt es viele Möglichkeiten, einige davon betreffen dich, aber es kann auch sein, dass der Feed auf den du zugreifen willst selbst schon fehlerhaft ist. Bitte gib mal genauere Infos, wie die Sonderzeichen zerschossen werden und wie der Originalfeed aussieht.

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 30-12-2012, 12:10
newbie1955
 Registrierter Benutzer
Links : Onlinestatus : newbie1955 ist offline
Registriert seit: Dec 2012
Beiträge: 241
newbie1955 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Hallo,



Da gibt es viele Möglichkeiten, einige davon betreffen dich, aber es kann auch sein, dass der Feed auf den du zugreifen willst selbst schon fehlerhaft ist. Bitte gib mal genauere Infos, wie die Sonderzeichen zerschossen werden und wie der Originalfeed aussieht.

Gruß,

Amica
Hallo, Amica, Danke schon mal für die Antwort. Hier mein charset metatag und mein PHP:
HTML-Code:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
PHP-Code:
<?php
function feedholen ($url)

define('MAGPIE_INPUT_ENCODING''UTF-8');
define('MAGPIE_OUTPUT_ENCODING''UTF-8');
define('MAGPIE_CACHE_ON'false);
define('MAGPIE_CACHE_AGE'0);
require_once(
'rss_fetch.inc');
$zaehl 0;
$alttitle "";

if ( 
$url ) {
$num_items 13;
$rss fetch_rss$url );
$items array_slice($rss->items0,$num_items);
}

echo 
"<ul id='feed'>";
foreach (
$items as $item) {
$href $item['link'];
$title $item['title'];
$desc $item['description']; 

$title trim($title);
if ((
$title !== '') && ($title !== NULL)&& ($title !== $alttitle)) {
echo 
"<li><a href=$href target='_blank'>$title</a></li>";
$alttitle $title;
$zaehl++;
}
}
if (
$zaehl == 0) {
echo 
$url;
echo 
" ist leider nicht erreichbar";}
else
echo 
"</ul>";
}
?>

<div class="border">

    
   <a href="http://www.cnonline.de/" target='_blank'> 
<img src="logos/cuxh.jpg" alt="Cuxhavener Nachrichten" width="135" height="28" style=" margin:3px 0px 0px -45px ; padding:0px;"/></a>

<?php

feedholen 
('http://www.cn-online.de/?type=221');

?> 
     

    </div>
Hier der feed der einzulesenden Seite:
CN-online: Nachrichten fur Cuxhaven

Und so sieht er bei mir aus:
Zitat:
Echte Camper frieren nicht
Schnäpschen auf halber Strecke
Mini-Flitzer gehen auf die Piste
Günstige Arztbesuche, teure Hunde
Böller und Raketen ab sofort zu haben
Als Sternsinger durch die Ferien
Budenzauber in Lamstedt
Drogenring aufgeflogen
22-Jährige schwer verletzt
83-Jähriger schleudert gegen Baum
Zehn Leser beim Rothenbaum
Rot-Weiss steigt auf
Ehemalige trafen sich Heiligabend
ich habe noch zahlreiche andere feeds, aber die kommen alle ordentlich an.

Gruß newbie1955
Mit Zitat antworten
  #4 (permalink)  
Alt 30-12-2012, 12:33
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Der Feed liegt als Latin-1 vor, du gibst jedoch als MAGPIE_INPUT_ENCODING UTF-8 an, was offensichtlich nicht zusammen passt. Versuch doch mal, das MAGPIE_INPUT_ENCODING gar nicht anzugeben und dafür MAGPIE_DETECT_ENCODING auf true zu setzen.

Übrigens hat das Encoding welches du im Meta-Tag angibst nur bedingt Wirkung. Viel wichtiger ist das HTTP-Header-Field Content-Type und die Zeichencodierung, die dort als charset-Parameter angegeben ist. Wenn dein Server also im Header
Code:
Content-Type: text/plain; charset=iso-8859-1
schickt, kannst du in deinem Meta-Tag alles mögliche drin stehen haben, es wird ignoriert, da dem HTTP-Header eine höhere Aussagekraft zugeschrieben wird. (Eigentlich ist es noch viel verwirrender: When specifications collide und dann kommt noch dazu, dass verschiedene Browser verschieden damit umgehen).

Lass also am besten das blöde meta-Element weg und benutze stattdessen die header()-Funktion, um den Content-Type und dessen charset zu setzen.

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #5 (permalink)  
Alt 30-12-2012, 12:40
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Ach noch etwas, was sogar auf der Magpie-Seite verlinkt ist: PHP, XML, and Character Encodings: a tale of sadness, rage, and (data-)loss Steve Minutillo :: messy-78

Du bist nicht allein
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #6 (permalink)  
Alt 31-12-2012, 01:15
newbie1955
 Registrierter Benutzer
Links : Onlinestatus : newbie1955 ist offline
Registriert seit: Dec 2012
Beiträge: 241
newbie1955 befindet sich auf einem aufstrebenden Ast
Standard Danke

erstmal für die Nachrichten! Da werde ich mich wohl mal wieder ein bisschen eingraben müssen.

Aber selbst wenn ich bei MAGPIE_INPUT_ENCODING "iso-8859-1" eingebe statt utf-8, ändert das nichts. Wenn ich Deiner Empfehlung folge und die Input und Output-Encoding - Angabe weglasse, dass kommt es bei dem entsprechenden feed richtig, aber bei allen anderen kommen falsche Sonderzeichen. Wenn ich nur für diesen feed das encoding weglasse, hat er sich das UTF-8 von den anderen vorher offenbar gemerkt und registriert nicht, dass ich es beim letzten (cn-online.de) weglasse. Gibt es so etwas wie ein Aufheben des vorherigen Encodings in magpie?

Insgesamt kenne ich mich halt in Magpie bisher auch nur soweit aus, wie ich es bisher gebraucht habe. ANgeblich soll ja simple pie sowieso besser sein, aber jetzt wieder umsteigen?

Gruß
newbie1955
Mit Zitat antworten
  #7 (permalink)  
Alt 31-12-2012, 01:56
newbie1955
 Registrierter Benutzer
Links : Onlinestatus : newbie1955 ist offline
Registriert seit: Dec 2012
Beiträge: 241
newbie1955 befindet sich auf einem aufstrebenden Ast
Standard Utf-8_decode

..hat es auch gebracht und war am einfachsten. Danke für die Mühe.

Gruß
newbie1955
Mit Zitat antworten
Antwort

Lesezeichen


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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
RewriteRule und Sonderzeichen - Probleme mit % Zeichen BananaJo PHP Developer Forum 7 22-12-2012 15:14
Probleme mit Sonderzeichen bweichel Archiv / Trash 1 20-06-2006 14:07
Probleme mit Sonderzeichen Baumschule1234 SQL / Datenbanken 13 14-06-2004 13:26
Probleme mit Sonderzeichen! Lukaso014 SQL / Datenbanken 2 12-03-2004 16:34
Deutsche Sonderzeichen machen Probleme... otto-mueller PHP Developer Forum 10 26-05-2003 11:56

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

Microweber CMS

Open source, drag and drop website builder

13.01.2020 Berni | Kategorie: HTML5/ EDITOR
PhoneGap Apps mit JS, CSS3 und HTML5 erstellen ansehen PhoneGap Apps mit JS, CSS3 und HTML5 erstellen

PhoneGap, Framework zur Erstellung hybrider Applikationen für mobile Endgeräte.

13.01.2020 Berni | Kategorie: App-Entwicklung
Bo)Tickets

Bo)Tickets bietet Ihnen eine Schnittstelle für Kundenanfragen an. In dem Script definieren Sie Supportbereiche, also zum Beispiel „Technik, Buchhaltung, Support“. Ihre Kunden können dann über ein Formular eine Anfrage abschicken.

31.12.2019 bocombo | Kategorie: PHP/ Ticketsystem
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:08 Uhr.