kostenloser Webspace werbefrei: lima-city


Textfeld in MySQL speichern

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    xxtarock

    Kostenloser Webspace von xxtarock

    xxtarock hat kostenlosen Webspace.

    Hallo,

    ich habe ein Frage.
    Wie soll man am besten ein mehrzeiliges Textfeld ( kann auch html code ) enthalten in der MySQL Datenbank speichern.

    Ich habe gefudnen, das es "zwei" Datentypen dafür gibt. Einmal "Blob" und "Text" und natürlich die ganzen Ausprägungen dazu welche größere Datenmengen aufnehmen können.

    Blob muss man auf jeden Fall beim speichern von Dateien nehmen, dass ist mir klar.
    Aber welches ist der geeignetere Datentyp für ein mehrzeiliges Textfeld ?

    Danke

  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. g****e

    "TEXT" eignet sich dafür. Das ist speziell dafür geschaffen ;-)
    "TEXT" beinhaltet kodierte Daten, also UTF-8 kodiert zum Beispiel, und das ist für Texte das einfachste. BLOB enthält binäre Datenwerte. Da müsstest du den Text also erst umwandeln und dann speichern, und beim auslesen wieder umwandeln, um das ganze richtig nutzen zu können, und das wäre zu umständlich. Darum "TEXT".

    Liebe Grüße
  4. Bei BLOB bist du auf jedenfall falsch, BLOB benutz man für binäre Daten, damit kannst du Bilder, Videos oder Audiodaten in eine Datenbank schreiben.

    Das kommt drauf an wie groß das Textfeld ist, aber Text ist im Grunde richtig.
  5. Autor dieses Themas

    xxtarock

    Kostenloser Webspace von xxtarock

    xxtarock hat kostenlosen Webspace.

    Vielen Dank

    Muss ich dabei noch etwas beachten ? oder reicht es einfach im SQL Statement die Variabel zu übergeben ?

    danke

    lg
  6. Bei Text solltest du überprüfen lassen, ob jemand injektions übergeben möchte. Also die übergebenen Variablen per
    htmlentities

    und
    mysql_real_escape_string()

    damit hast du schon etwas Sicherheit hinzugewonnen.
  7. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    vctb schrieb:
    Bei Text solltest du überprüfen lassen, ob jemand injektions übergeben möchte. Also die übergebenen Variablen per
    htmlentities
    und
    mysql_real_escape_string()
    Das
    htmlentities
    sparst du dir besser beim Eintragen in die Datenbank... was passiert sonst, wenn du dich mal entscheidest die Daten in einem anderen Format als HTML auszugeben? Dann müsstest du jedes Mal die htmlentities wieder entfernen.

    Wirklich wichtig ist beim "in die DB eintragen" nur
    mysql_real_escape_string()
    , damit keine SQL-Injections durchgeführt werden können. Allerdings nutzt dir das auch erst dann was, wenn du den String im SQL-Statement in Anführungszeichen (
    '
    ) setzt.

    htmlentities solltest du erst bei der Ausgabe verwenden, um Cross-Site-Scripting (XSS) zu verhindern.
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!