tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
12
ZUGRIFFE
574
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Lenox
    Lenox Lenox ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    AP
    Beiträge
    413
    Folgendes Problem:

    Wie bekomm ich es hin in meinem Template zwar HTML auszuführen das beisp.:

    <table><tr><td></td></tr></table>
    geht aber allerding kein SQL-Befehl.

    Soll in der Textarea passieren!
     

  2. #2
    Avatar von hikeda_ya
    hikeda_ya hikeda_ya ist offline Mitglied Brokat
    Registriert seit
    Dec 2005
    Beiträge
    407
    Wie genau stellst Du Dir das vor


    SQL-Befehl:


    <table><tr><td> Ergebniss des SQL-Befehls</td></tr></table>


    oder?

    <table><tr><td>SQL-Befehl</td></tr></table>

    <table><tr><td>Ergebeniss....</td></tr></table>
     
    gezeichnet
    hikeda_ya


    guggenmusik

  3. #3
    Avatar von Lenox
    Lenox Lenox ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    AP
    Beiträge
    413
    Ich möchte das man in der Textarea alles schreiben kann...

    Sprich HTML oder nur text jedoch sollen dort keine SQL-Befehle ausgeführt werden falls es jemand versucht mit beispiel:

    mysql_query();
    Genau diese befehle sollen geslashed werden also das ein ausführen nicht möglich wird!
     

  4. #4
    Avatar von tobee
    tobee tobee ist offline Grolba.com media
    Registriert seit
    Jul 2005
    Ort
    Karlsruhe
    Beiträge
    1.700
    Blog-Einträge
    131
    Geht es dir nur um die SQL-Funktionen oder um alle PHP-Funktionen?
     

  5. #5
    Avatar von Lenox
    Lenox Lenox ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    AP
    Beiträge
    413
    Nur um die SQL-Funktionen
     

  6. #6
    Rambomaster Rambomaster ist offline Mitglied Silber
    Registriert seit
    Feb 2007
    Beiträge
    74
    Hmm versuche es mal mit mysql_real_escape_string oder mysql_escape_string

    Damit sollten eigentlich nur Zeichen escaped werden die den SQL Query verändern könnten.
     

  7. #7
    Avatar von Lenox
    Lenox Lenox ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    AP
    Beiträge
    413
    Hab ich getestet doch leider escapet er mich auch HTML was er ja nicht soll

    Die user sollen/dürfen HTML verwenden, dennoch soll dabei bei einem Hackversuch kein SQL ausgeführt werden!

    Hab es mal so getest wenn ich in der Textarea das eintrag:

    Ihr Impressum<br />
    <table class="tableborder" cellpadding="3" cellspacing="1" border="0" align="center">
    <tr>
    <td class="tablea">Hallo</td>
    <td class="tableb">Hallo</td>
    </tr>
    </table><br />

    $re = mysql_query("SELECT * FROM imprint");
    while($row = mysql_fetch_array($re)) {
    echo $row['imprint'];
    }
    Dabei wird aber allerding bei beiden dieses:

    Ihr Impressum<br />
    <table class=\"tableborder\" cellpadding=\"3\" cellspacing=\"1\" border=\"0\" align=\"center\">
    <tr>
    <td class=\"tablea\">Hallo</td>
    <td class=\"tableb\">Hallo</td>
    </tr>
    </table><br />

    $re = mysql_query(\"SELECT * FROM imprint\");
    while($row = mysql_fetch_array($re)) {
    echo $row[\'imprint\'];
    }
    es sollte aber dann so aussehen:

    SQL escapet aber nicht HTML

    Ihr Impressum<br />
    <table class="tableborder" cellpadding="3" cellspacing="1" border="0" align="center">
    <tr>
    <td class="tablea">Hallo</td>
    <td class="tableb">Hallo</td>
    </tr>
    </table><br />

    $re = mysql_query(\"SELECT * FROM imprint\");
    while($row = mysql_fetch_array($re)) {
    echo $row[\'imprint\'];
    }
     

  8. #8
    Rambomaster Rambomaster ist offline Mitglied Silber
    Registriert seit
    Feb 2007
    Beiträge
    74
    Ich glaube so einfach geht das nicht was du willst

    Die Zeichen " und ' beeinflussen immer den Query also müssen die auch in HTML escaped werden.

    Ich kenne zwar dein Vorhaben nicht, aber ich denke Code in einem Textfeld zuzulassen ist so oder so nicht so eine gute Idee. Denn auch mit Javascript und PHP kann man ziemlich böse Sachen machen.

    Wenn du PHP nicht abgesichert ist, kann man darüber sogar zum Beispiel den Server herunterfahren.
    Mit Javascript kann man ganz nervige endlos Alerts ausgeben wo der User nachher seinen Browser neu starten muss.
     

  9. #9
    Avatar von Lenox
    Lenox Lenox ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    AP
    Beiträge
    413
    An dem bin ich ja am arbeiten das es nicht geht...

    Aber ich möchte ja das der User für sein Impressum auch CSS verwenden kann... wenn dann aber einer Kommt... "" der mal schauen will ob es zum Hacken schafft und SQL rein bringt

    ansonsten muss ich es so erstma lassen wie es ist

    Dann schon mal vielen vielen dank
     

  10. #10
    Rambomaster Rambomaster ist offline Mitglied Silber
    Registriert seit
    Feb 2007
    Beiträge
    74
    Würde da ein Wysiwyg Editor nicht reichen? Der Benutzer muss ja nur ein paar Formatierungsmöglichkeiten haben.
     

  11. #11
    Avatar von Lenox
    Lenox Lenox ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    AP
    Beiträge
    413
    Öhm... für was?

    Find eich nur wichtig wenn es sich dabei um ein Forum, Gästebuch oder ein Blog handelt aber für ein Impressum?
     

  12. #12
    Rambomaster Rambomaster ist offline Mitglied Silber
    Registriert seit
    Feb 2007
    Beiträge
    74
    Ein Wysiwyg Editor würde schon alles filtern (PHP, Javascript, SQL), aber trotzdem sind Formatierungen möglich.
    Mit TinyMCE sind sogar Tabellen und CSS Vorlagen möglich.
     

  13. #13
    Registriert seit
    May 2007
    Ort
    Köln / Bonn
    Beiträge
    844
    Blog-Einträge
    4
    Solang du nicht mit eval() arbeitest, wird der PHP Code doch generell nicht ausgeführt. Du schreibst den Code ja nur per Echo hin oder etwa nicht?

    Ansonsten beim Eintragen den Code der in die Datenbank über alles was durch die Formulare kommt ein mysql_real_escape_string() machen. Damit sollte eine SQL injection eignetlich nicht möglich sein.
     
    Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

Ähnliche Themen

  1. on select copy to textarea (markiertes in Textarea kopieren!
    Von Thomas Lindner im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 16.12.10, 14:10
  2. Aus einer Textarea in eine andere Textarea kopieren
    Von NTDY im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 24.04.09, 13:59
  3. Tasten verbieten
    Von ganjin im Forum .NET Windows Forms
    Antworten: 8
    Letzter Beitrag: 13.07.08, 01:26
  4. bbCode + Zeilenumbruch und Textarea / readonly+textarea
    Von NTDY im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 21.06.05, 00:28
  5. html verbieten
    Von visionsign im Forum PHP
    Antworten: 11
    Letzter Beitrag: 29.11.04, 18:46