Einführungszeichen verschwindet

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Einführungszeichen verschwindet

    Hallo,
    das ist Abschnit von meinem kleinen Script.
    Hier wird von Datenbank Text ausgelesen und in 2 Felder gezeigt.
    Erste Feld ist <textarea> und zweite <input type="text".
    Also bei erste Feld läuft alles reibungsloss und bei zweite verliere ich irgentwo unterwegs Einführungszeichen

    Vorher habe ich (echo $quelle eingesetzt Einführungzeichen waren noch drin und dann weg

    PHP Code:
    $id=$_GET['id'];
                
    $sql=mysql_query("SELECT*FROM motto WHERE id=$id");
                
    $ds=mysql_fetch_object($sql);
                                            
    $motto=$ds->motto;
                                            
    $quelle=$ds->quelle;
                                            
    $id=$ds->id;
                                            echo 
    $quelle;
                
    //Forma für motto editieren
                
    echo "<div align=\"center\">
                <h1>Motto-EDIT</h1>
                <form action=\"auswertung.php\" method=\"post\">
                <strong>MOTTO</strong>
                

    <p><textarea name=\"motto\" style=\"width:400px; height:150px \"> 
    $motto </textarea> </p>
                <strong>QUELLE</strong>
                <p><input name=\"quelle\" type=\"text\" style=\"width:400px\" value=\"
    $quelle\"></p>



                <p><input type=\"submit\" value=\"Motto aktualisieren\" ></p>
                <input name=\"id\" type=\"hidden\" value=\"
    $id\" >
                </form>
                </div>"

    Last edited by werb; 13-08-2006, 21:50.

  • #2
    $quelle=urlencode($ds->quelle); ?

    Comment


    • #3
      $mottoH = htmlspecialchars($motto,ENT_QUOTES);
      $quelleH=htmlspecialchars($quelle,ENT_QUOTES);

      und dann $mottoH und $quelleH im html text verwenden. Das ist alles.

      Grundsätzlich muss jeder Wert, der irgendwie html-Zeichen enthalten kann, das heisst < > " ' & durch htmlspecialchars() "durchgeschlauft "werden (oder transformiert, oder wie sagt man dem? "mit htmlspecialchars() für die Ausgabe konvertiert werden").


      [edit: nein, urlencode() ist es nicht, sondern htmlspecialchars() ist hier gefragt]
      Last edited by jhaase; 13-08-2006, 22:12.

      Comment


      • #4
        Original geschrieben von jhaase

        [edit: nein, urlencode() ist es nicht, sondern htmlspecialchars() ist hier gefragt]
        glaube ich nicht, da sein echo klappert und er nur im form probs hat.

        addslashes() wird automatisch ausgeführt (magic_quotes_gpc per default on), somit denke ich, er gibt html aus.

        Comment


        • #5
          Original geschrieben von 3DMax
          glaube ich nicht, da sein echo klappt und er nur im form probleme hat.

          $quelle='von "bibel"';
          echo $quelle; gibt html: von "bibel"
          echo "<input value=\"$quelle\">"; gibt html: <input value="von "bibel"">

          logisch? die ".." haben innerhalb <...> eine andere Wirkung als im freien html.

          Comment


          • #6
            was möchtest du mir mitteilen?

            fakt ist, dass wenn er html bearbeiten möchte, urlencode() benutzen muss und nicht htmlspecialchars().

            aber der genau zweck wurde vom op noch nicht genau beschrieben.
            er sprach nur von "Einführungszeichen", ich weiß nicht, was seine freundin gerade veranstaltet hat

            Comment


            • #7
              Danke an alle, es läuft mit htmlspecialchars() wie geschmiert.

              Comment

              Working...
              X