Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „Problem mit Ausgabe der '<' und '>' Zeichen“

netbandit

Aktives Mitglied

AW: Problem mit Ausgabe der '<' und '>' Zeichen

Was heißt denn die ,1 ????? Das habe ich übernommen und nun klappt es so halb ^^ Danke, aber warum geht es jetzt???
Im Quellcode sieht man das < und > also man sieht diesen code:

Code:
<style type="text/css"><br />
<!--<br />
CODE HIER<br />
//--><br />
</style
Aber auf der seite sieht man nix^^ XD
Das ist ja mal echt krass; schon mal was von Kommentaren innerhalb von Html gehört und was haben die br innerhalb des Styles zu suchen? :lol:
 
Zuletzt bearbeitet:

saila

Moderatorle

AW: Problem mit Ausgabe der '<' und '>' Zeichen

@netbandit,

die erzwungenen Zeilenumbrüche entstehen, weil $br true erhält und Mew mein Beispiel genommen hat. Dies wäre ja noch leicht abzustellen (zumindest für den Quellcode - nicht jedoch für Textdarstellung).
 

netbandit

Aktives Mitglied

AW: Problem mit Ausgabe der '<' und '>' Zeichen

Ist trotzdem erstaunlich, dass Html-Kommentare nur im Quelltext sichtbar sind jedoch der Browser ein Problem hat diese und alles dazwischen zu zeigen :rolleyes:

Edit: Selbst das was innerhalb der style-Tags steht, sollte im Browserfenster nicht sichtbar sein;
 
Zuletzt bearbeitet:

Mew

Aktives Mitglied

AW: Problem mit Ausgabe der '<' und '>' Zeichen

hmm es klappt leider immer noch nicht... hier mehr Infos...

hmm also die function ist nun so:

PHP:
<?


function parse($str, $html = 0, $bbcode = 1, $url = 1, $email = 1, $img = 1, $br = 1, $uml = 1) {
        $str = trim($str);
        $str = preg_replace('/\S{60}/', '\0 ', $str);
        
if ($html == 0) {
        $str = htmlspecialchars($str);
	    $str = htmlentities($str);
}

if ($bbcode == 1) {
        $str = preg_replace('=\[b\](.*)\[/b\]=Uis',
                            '<span style="font-weight:bold;">\\1</span>',
                            $str);
        $str = preg_replace('=\[i\](.*)\[/i\]=Uis',
                            '<span style="font-style:italic;">\\1</span>',
                            $str);
        $str = preg_replace('=\[u\](.*)\[/u\]=Uis',
                            '<span style="text-decoration:underline;">\\1</span>',
                            $str);

    		# Smilies
    		$str = str_replace(':cool:', '<img src="images/smilies/cool.gif" />', $str);
    		$str = str_replace(':freu:', '<img src="images/smilies/freu.gif" />', $str);
    		$str = str_replace(':woow:', '<img src="images/smilies/woow.gif" />', $str);
    		
    		# Zitate
     		$str = preg_replace('=\[quote\](.*)\[/quote\]=Uis','<p>Zitat:</p><div class="zitat"><pre>\\1</pre></div>',$str);
    
    		# Code
     		$str = preg_replace('=\[code\](.*)\[/code\]=Uis','<p>Code:</p><div class="code"><pre>\\1</pre></div>', $str);
                  
        # PHP Code
     		$str = preg_replace('=\[php\](.*)\[/php\]=Uis','<p>PHP Code:</p><div class="code"><pre>\\1</pre></div>',$str);
}
			
			
if ($url == 1) {
	//Aus http://url wird 
	$urlsuch[]="/([^]_a-z0-9-=\"'\/])((https?|ftp):\/\/|www\.)([^ \r\n\(\)\^\$!`\"'\|\[\]\{\}<>]*)/si";
	$urlsuch[]="/^((https?|ftp):\/\/|www\.)([^ \r\n\(\)\^\$!`\"'\|\[\]\{\}<>]*)/si";

	$urlreplace[]="\\1[url]\\2\\4[/url]";
	$urlreplace[]="[url]\\1\\3[/url]";
}
if ($email == 1) {
	//Aus [email]klaus@mustermann.de[/email] wird [email]klaus@mustermann.de [/email]
	$emailsuch[]="/([\s])([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,}))/si";
	$emailsuch[]="/^([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,}))/si";

	$emailreplace[]="\\1[email]\\2[/email]";

	$emailreplace[]="[email]\\0[/email]";

	$str = preg_replace($urlsuch, $urlreplace, $str);
	if (strpos($str, "@"))
 	   {
 	   $str = preg_replace($emailsuch, $emailreplace, $str);
 	   }
}
if ($url == 1) {
	//Die url's werden zu Links
	$str = preg_replace("/\[url\]www.(.*?)\[\/url\]/si", "<a target=\"_blank\" href=\"http://www.\\1\">www.\\1</a>", $str);

	$str = preg_replace("/\[url\](.*?)\[\/url\]/si", "<a target=\"_blank\" href=\"\\1\">\\1</a>", $str);

	$str = preg_replace("/\[url=www.(.*?)\](.*?)\[\/url\]/si", "<a target=\"_blank\" href=\"http://www.\\1\">\\2</a>", $str);

	$str = preg_replace("/\[url=(.*?)\](.*?)\[\/url\]/si", "<a target=\"_blank\" href=\"\\1\">\\2</a>", $str);
}
if ($email == 1) {
	//E-Mail Adressen werden zu links
	$str = preg_replace("/\[email\](.*?)\[\/email\]/si", "<a href=\"mailto:\\1\">\\1</a>", $str);

	$str = preg_replace("/\[email=(.*?)\](.*?)\[\/email\]/si", "<a href=\"mailto:\\1\">\\2</a>", $str);
}
if ($img == 1) {
	// wird als Bild angezeigt
	$str = preg_replace( '#\[img\](.*?)\[/img\]#sie', "'<img src=\"'.str_replace(' ', '', '\\1').'\" border=\"0\" alt=\"\" />'" , $str );  
}
if ($br == 1) {
        $str = nl2br($str);
}
if ($uml == 1) {
		   $str = str_replace( "[ä]" , "&auml;" , $str );
		   $str = str_replace( "[ü]" , "&uuml;" , $str );
		   $str = str_replace( "[ö]" , "&ouml;" , $str );
		   $str = str_replace( "[Ä]" , "&Auml;" , $str );
		   $str = str_replace( "[Ü]" , "&Uuml;" , $str );
		   $str = str_replace( "[Ö]" , "&Ouml;" , $str );
		   $str = str_replace( "[ß]" , "&szlig;" , $str );



}

return $str;

}

?>

da müsste alles laufen oder?

Die daten hole ich mir so aus der DB:

PHP:
$schritte = parse(mysql_result($res, 0, "schritte"), 0);

so gebe ich es aus:


PHP:
echo "<table class='downloads'><tr><td><p>$schritte</p></td></tr></table>";

und dann kommt das raus: http://webmaster-treffpunkt.de/showtutorial.php?action=3

und in der DB steht das:

Code:
[ CODE ]<style type="text/css">
<!--
a:link {
	color: #FF0000; //Farbe für den Link
 	text-decoration: none;
}
a:visited {
	color: #00FF00; //Farbe für gesehenen Link
 	text-decoration: none;
}
a:hover {
	color: #FFFFFF; //Farbe für mouserover
 	text-decoration: none;
}
a:active {
	text-decoration: none; //nicht unterstreichen
}
--!>
</style>[/ CODE ]
( [ CODE ] ist in der DB zusammengeschrieben, nur hier zum Anschauen auseinander)
Das ist doch alles richtig oder?
 

saila

Moderatorle

AW: Problem mit Ausgabe der '<' und '>' Zeichen

Ahhh. Also dann mal folgendes zum besseren Verstehen:

Mach mal bevor du etwas in die Funktion parse() gibst eine Ausgabe zu
PHP:
<?php
echo mysql_result($res, 0, "schritte");
/* erhälst du hier ohne die parse-Funktion ein Ergebnis in Form des DB-Inhaltes? */
?>
;)

In deiner Funktion im Bereich $bbcode == 1 findest du die Zeile 31. In dieser Zeile mach innerhalb der Klammer (.*) daraus (.*?) - was du auch bei quote und php tun solltest ;)
 
Zuletzt bearbeitet:

netbandit

Aktives Mitglied

AW: Problem mit Ausgabe der '<' und '>' Zeichen

Statt
PHP:
if ($html == 0) {
  $str = htmlspecialchars($str);
    $str = htmlentities($str);
}
Nur
PHP:
if ($html == 0) {
    $str = htmlentities($str);
}
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
175.158
Beiträge
2.581.880
Mitglieder
67.226
Neuestes Mitglied
Alec168
Oben