Einzelnen Beitrag anzeigen
  #8 (permalink)  
Alt 27.07.2011, 09:15
r4w r4w ist offline
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 13.05.2011
Beiträge: 11
r4w befindet sich auf einem aufstrebenden Ast
Standard

Danke für Eure Antworten!

Zitat:
Zitat von take_a_7 Beitrag anzeigen
Moin,



Eben: 2 Backslashes sind es bei dir. Das ist also kein Zeilenumbruch, sondern die Zeichenfolge Backslash - kleines n (der erste Backslash escaped den zweiten). Du solltest übrigens unbedingt deine Maßnahmen zum Kontextwechsel überarbeiten - die Funktion stripslashes lässt Schlimmes erahnen (Daher wahrscheinlich auch dieser Escape-Wirrwarr).

gruß,
take
In meinem Beispiel sind keine doppelten \ daher ist dies auch nicht das Problem.. Den wiki - Eintrag werde ich mir demnächst mal zu Gemüte führen - Danke!

Zitat:
Zitat von mermshaus Beitrag anzeigen
HTML ist nicht PHP. HTML kennt keine PHP-Escape-Sequenzen. "\n" in HTML ist einfach <Backslash><n>, kein Zeilenumbruch.

Du könntest den Wert des versteckten Felds per PHP einsetzen lassen.

PHP-Code:
<?php

function escape($s)
{
    return 
htmlspecialchars($sENT_QUOTES'UTF-8');
}

$isSent false;

if (isset(
$_POST['nachricht'])) {
    
$isSent true;
}

?><!DOCTYPE html>

<html lang="en">

    <head>
        <meta charset="utf-8" />
        <title>New</title>
    </head>

    <body>

        <?php if ($isSent) : ?>

        <p>Die Eingabe lautet:</p>
        
        <form method="post" action="">
            <textarea cols="80" rows="10"><?php echo escape($_POST['nachricht']); ?></textarea>
        </form>

        <?php endif; ?>

        <form action="" method="post">
            <input type="hidden" name="nachricht" value="<?php echo escape("1<br>2<br>3<br />4<br />5\n6\n"); ?>" />
            <input type="submit" value="absenden" />
        </form>

    </body>

</html>
Für PHP-Code in HTML-Code nutzt man gerne die alternative Syntax:

- PHP: Alternative syntax for control structures - Manual

Falls Magic Quotes Ärger machen:

- Magic Quotes - PHP Forum: phpforum.de
Danke für Deine ausführliche Antwort, allerdings habe ich das nun anders gelöst - vielleicht weniger Elegant aber dafür einfach und es funktioniert:

So werden nun auch die Zeilenumbrüche anständig übernommen, auch wenns schlimm aussieht^^
HTML-Code:
<form action="../kontakt-test" method="post">
<input type="hidden" name="nachricht" value="1
2
3
4
5
6
7
8
9
10" />
<input type="submit" value="absenden" />
</form>
Mit Zitat antworten