Text ohne Formatierung auslesen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
angeben
auslese
auswahl
begrenzung
bild
bleiben
break
code
datei
datenbank
erhalten bleiben
funktion
http
jemand
limit
string
strip
text
url
verschwinden
-
Hallo Leute, mit folgendem Code Lese ich einen Text aus der Mysql Datenbank aus, wenn dieser zu Lang ist wird er gekürzt und automatisch ein Link zur Datei erstellt:
include '/includes/config.php'; $connection = mysql_connect("$host" , "$user" , "$pass") OR DIE ("Keine Verbindung zu der Datenbank moeglich."); $db = mysql_select_db($dbase , $connection) or die ("Auswahl der Datenbank nicht moeglich."); // Datenbankabfrage $query = "SELECT * FROM posts ORDER BY createt DESC LIMIT 5"; $result = mysql_query($query, $connection) or die (mysql_error()); // Ausgabe der Daten while ($row = mysql_fetch_array($result)){ $id = $row['id']; $title = $row['title']; $autor = $row['autor']; $createt = $row['createt']; $text = $row['text']; $dot = '...'; echo '<div class="post_box">'; echo nl2br(substr($text,0,700)); echo '<div>'; echo '<a href="'.$title.'" class="more float_r">Mehr</a>'; echo '</div>'; echo '</div>'; }
Funktioniert auch alles.. Eigentlich...
Ich hab auf einer anderen Seite ein Script gebastelt, welches per Button eine neue Datei erstellt und zusätzlich dazu den Titel usw. in die Datenbank einträgt, damit ich es wieder auslesen kann.. Das coole (oder auch nicht?) Dabei ist allerdings, dass man auch Schriftgröße usw. ändern kann... Wenn ich jetzt den Text von der Datenbank auslese ist er allerdings arg riesig (zumindest mein Test Text mit Schriftgröße 24), er nimmt also trotzdem viel Platz ein... Ich möchte aber auch nicht, dass die Bilder welche per <img> Tag eingebunden werden verloren gehen...
hat jemand eine Ahnung, wie ich nun nur den Text ohne Formatierung auslesen kann? Die Bilder sollten bestehen bleiben.... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Die PHP-Funktion strip_tags entfernt HTML-Tags. Dabei kann man angeben, ob bestimme Tags erhalten bleiben.
Bsp.:
Hier werden alle Tags außer Bildern entfernt:
<?php $string = '<p><strong>Dies</strong> ist ein <span style="font-size:24pt">Teststring</span> mit Bild:<br><img src="test.gif"></p>'; echo(strip_tags($string,"<img>")); ?>
Beitrag zuletzt geändert: 29.11.2011 13:57:10 von thomasba -
thomasba schrieb:
Die PHP-Funktion strip_tags entfernt HTML-Tags. Dabei kann man angeben, ob bestimme Tags erhalten bleiben.
Danke, funzt Prima :)
Für meine Nachfolger:
Um trotzdem die Funktion mit der Zeichen Begrenzung zu haben, hab ich mir die Begrenzung als Variable definiert:
$break = nl2br(substr($text,0,700));
Und danach erst das echo mit den strip_tags ausgegeben:
echo(strip_tags($break,"<img>"));
Kann geschlossen werden.
Beitrag zuletzt geändert: 29.11.2011 15:27:04 von kill-a-teddy -
nl2br ist an der stelle falsch, denn es wird wieder durch strip_tags entfernt
Eine bessere Lösung wäre:
Da hier die entfernten HTML-Tags nicht mehr mitgezählt werden und die Zeilenumbrüche nicht verschwinden.// Zuerst werden die Tags entfernt. // Danach wird der String dann auf die 700 gekürtzt // Und am schluss kommen die Zeilenumbrüche dazu $break = nl2br( substr( strip_tags( $text , "<img>" ) , 0, 700) ); // Und nun ausgeben: echo($break);
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage