2016-05-14 6 views
-1

Ich versuche lernen PHP + MySQL und wenn Daten in meiner Datenbank PHP wird nicht Echo Linien gespeichert, die mit „<“ SymbolPHP wird nicht echo „<“ Symbol aus der Datenbank

mysql im Screenshot, Code unter beginnen

$result2 = mysqli_query($con, "SELECT * FROM ta_pastat pastat left join ta_users tusers on pastat.kirjoittaja_ID = tusers.ID where pastat.kategoria_ID = 1"); 
while($row2 = mysqli_fetch_array($result2)){ 
//$row2 = preg_match('(^|>)(&gt;[^<]*)', "\\1<div class=\"unkfunc\">\\2</div>", $row2); 

$style = ""; 
switch(substr($row2['Teksti'], 0, 1)) { 
    case ">": 
     $style = "style=\"color:#789922\""; 
     break; 
    case "<": 
     $style = "style=\"color:#226199\""; 
     break; 
} 
//echo nl2br("<h4 $style>".$row2['Teksti']."</h4><br>".PHP_EOL); 
echo nl2br("<br><h1>".$row2['Otsikko']."</h1><br><h4 $style>".$row2['Teksti']."</h4><hr>"); 
+2

Überprüfen Sie die Quelle der Ausgabe, vs. was Sie im Browser sehen. – user3791372

+1

'<' ist der Beginn eines HTML-Tags. Wenn das, was dem '<' folgt, wie ein Tag aussieht, der nichts wie ' RiggsFolly

Antwort

3

Sie müssen es in htmlentities wickeln, da der Browser als HTML interpretiert.

echo nl2br("<br><h1>".$row2['Otsikko']."</h1><br><h4 $style>".htmlentities($row2['Teksti'])."</h4><hr>");