Autor |
Nachricht |
TOMillr
Threadersteller
Dabei seit: 21.03.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 13.07.2008 13:50
Titel Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen lass |
|
|
Um mehr Kontrolle über die Formatierung von Titelzeilen einiger Artikel zu haben, möchte ich im CMS in das entsprechende Eingabefeld auch HTML Tags mit verwenden. Also z.B. bei langen Titeln sowas wie:
Code: | Hier steht die erste Zeile der ganz langen Überschrift<br>In der Zeiten dann noch was anderes. |
Die funktioinert bei der Ausgabe auf der Seite dann auch wie gewünscht. Allerdings erscheinen die HTML Tags dann auch an anderer Stelle, wenn die Titelzeile (z.B. bei einer Suchanfrage oder der Liste der letzten Artikel) irgendwo aufgelistet wird. Gibt es irgendeine Möglichkeit, diese Zeichen nach der Abfrage der Datenbank automatisch noch vor der Ausgabe entfernen zu lassen?
Eine beispielhafte Anfrage sieht auf der Seite z.B. so aus:
Code: | <?
$latestnews = mysql_query("SELECT * from ccms_news order by timestamp desc limit 5");
while ($row = mysql_fetch_assoc($latestnews)) {
$gamet = preg_replace('/[^a-zA-Z0-9 *]/', '', $row[title]);
$gameturl = str_replace(' ', '-', $gamet);
?> |
Kann man dort den preg_replace nicht irgendwie entsprechend anpassen, um vorher definierte HTML Tags entfernen zu lassen?
|
|
|
|
|
zweitaccount
Dabei seit: 25.01.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 13.07.2008 14:30
Titel Re: Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen |
|
|
CrazyLexx hat geschrieben: | Allerdings erscheinen die HTML Tags dann auch an anderer Stelle, wenn die Titelzeile (z.B. bei einer Suchanfrage oder der Liste der letzten Artikel) irgendwo aufgelistet wird. Gibt es irgendeine Möglichkeit, diese Zeichen nach der Abfrage der Datenbank automatisch noch vor der Ausgabe entfernen zu lassen? |
strip_tags suchst Du wahrscheinlich?
|
|
|
|
|
Anzeige
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 13.07.2008 14:40
Titel
|
|
|
Wenn du alle Zeichen bis auf A-Z,0-9 entfernen möchtest:
Code: | $str = preg_replace('/[^a-z0-9]/i', '', $str); |
edit: das willst du anscheinend nicht..
Zuletzt bearbeitet von m am So 13.07.2008 14:49, insgesamt 1-mal bearbeitet
|
|
|
|
|
TOMillr
Threadersteller
Dabei seit: 21.03.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 13.07.2008 14:44
Titel Re: Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen |
|
|
zweitaccount hat geschrieben: |
strip_tags suchst Du wahrscheinlich? |
Klingt, als würde mit dem Befehl genau mein Problem gelöst. Aber die Tags werden dann auch nur bei der Ausgabe entfernt? Kann ich den Code irgendwie in das oben angeführte Beispiel integrieren?
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 13.07.2008 14:48
Titel Re: Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen |
|
|
CrazyLexx hat geschrieben: | Aber die Tags werden dann auch nur bei der Ausgabe entfernt? Kann ich den Code irgendwie in das oben angeführte Beispiel integrieren? |
Du machst Witze?
Code: | strip_tags($row[title]) |
Und klar, wenn du den mit strip_tags behandelten String nun nicht in der Datenbank speicherst,
so hat strip_tags natürlich nur Einfluss auf die aktuelle Ausgabe.
Zuletzt bearbeitet von m am So 13.07.2008 14:51, insgesamt 1-mal bearbeitet
|
|
|
|
|
TOMillr
Threadersteller
Dabei seit: 21.03.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 13.07.2008 15:37
Titel Re: Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen |
|
|
m hat geschrieben: |
Code: | strip_tags($row[title]) |
Du machst Witze?
|
Nicht wirklich! Habe es nämlich vorher schon genau mit der Codezeile versucht und wenn dann später mit
Code: | <a class="rating" href="<?echo "article-$row[id]-$title_seo.html"?>"><?
$MAX_LENGTH = 30;
$str = strlen($row[title]);
if ($str <= $MAX_LENGTH) {
echo "$row[title]";
} else {
$s2 = substr($row[title], 0, $MAX_LENGTH - 3);
echo "$s2";
echo "...";
}
?> |
die Artikel augelistet werden, bekomme ich trotzdem noch die HTML Tags mit ausgegeben...
|
|
|
|
|
Smooth-Graphics
Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 13.07.2008 15:48
Titel Re: Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen |
|
|
Und wo ist die Funktion?
Ich seh sie nicht.
Code: | <a class="rating" href="<?echo "article-$row[id]-$title_seo.html"?>"> |
Wo ist da $title definiert? und aus $row['id'] kommt natürlich auch nur der normale reine output der DB.
Außerdem sind Shorttags mist. Verwende immer <?php ?> oder gleich <?= ?>
Code: | $title = strip_tags($row["title"]); |
Dann liefert $title den String ohne HTML-Codes aus
Zuletzt bearbeitet von Smooth-Graphics am So 13.07.2008 15:49, insgesamt 1-mal bearbeitet
|
|
|
|
|
TOMillr
Threadersteller
Dabei seit: 21.03.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst So 13.07.2008 17:31
Titel Re: Rewrite Rules & PHP Anfrage: HTML Zeichen entfernen |
|
|
Smooth-Graphics hat geschrieben: | Und wo ist die Funktion?
Ich seh sie nicht.
|
Achso, der gehört zu dem anderen Code-Schnipsel, den ich vorher gepostet habe.
|
|
|
|
|
|
|
|
Ähnliche Themen |
HTML font Tags entfernen
[html] Scrollbalken wirklich entfernen
HTML anfänger scrollbalken entfernen
Html -> seltsame Zeichen im Pfad
RegExp String zwischen 2 Zeichen in einem String entfernen
Nicht-benötigte Scripte in HTML entfernen lassen...
|
|