Daten in MySql Tabelle eintragen

Ich bin gerade dabei ein Script zu schreiben, um neue Beiträge zu verfassen.
Jetzt brauche ich eure hilfe.

  1. Ich möchte die Daten gerne UTF-8 Kodiert haben.
  2. Wie stelle ich es an, dass alle umbrüche, welche ich im Formular mache auch in der MySql-Datenbank sind.

Ich würde mich sehr über eure Hilfe freuen.

function text($text) {
$text = str_replace(" ", “/n”, $text);
}
bei dem mysql übergabe einfach bei den value text($_POST[“text”])
Ich weiß jetzt nbicht ob jetzt \r oder \n war
müstets du schauen

aber dann bricht es doch nur im quellcode um, und zwar bei jedem leerzeichen…

Wen du es nacher in html wieder anzeigen läst kannst du es mit dem html &… machen
must vorne das \r oder \n weiß grade nicht was was war
Dan ist es leicht und umgekehr machst du es wen du es bearbeiten willst so das jedes & in eine freichen umgewandelt wird
so sollte es dan gehen

Schreibe den Inhalt deiner Textarea mit utf8_encode() in die Datenbank und lese sie mit utf8_decode() wieder aus.

Das ersetzen von Leerzeichen mit einem Zeilenumbruch bringt an dieser Stelle doch garnix.

Viel Erfolg!

Flynn

Fein, dann arbeite mit dieser Kodierung.

(@Flynn: Dein Vorschlag ist ziemlicher Humbug.)

Dazu musst du einfach nur Nichts anstellen.

danke für die antworten,
aber ich habe die dateien und die datenbank (und tabellen) utf-8 kodiert, aber es klappt trotzdem nicht.
deshalb frage ich ja…

Verbindung zur Datenbank auf UTF-8 stellen, im Content-Type-Header bei Ausgabe der Daten ebenfalls Kodierung angeben.

da ich die dateien utf-8 kodiert habe geht das mit dem header nicht…
jedenfalls bekomm ich es nicht hin :stuck_out_tongue:

wäre nett, wenn du mir helfen würdest

Gut, hier hast “Hilfe”:

“Geht nicht” ist analog zu “funzt nich”, und “funzt nich” ist bekanntlich was nicht? Genau, eine brauchbare Problembeschreibung.

(Natürlich habe ich schon eine Vermutung, aber …)

Also:
Meine Dateien sind UTF-8 ohne BOM kodiert.
Die Datenbank verbindung ist auf UTF-8 und die Tabellen sind auf UTF-8_general_ci.
Im php hab ich den header angegeben. Bringt aber nichts.
Im head hab ich auch utf-8 eingestellt.

Ergebnis:
sebastian-l.mine.nu/?seite=latein&suche=%25
und
sebastian-l.mine.nu/?seite=home

Öhm wenn du noch etwas brauchst, um mir zu helfen schreib es :slight_smile:

Danke schonmal

Tja, dann sind die Daten, die du in der Datenbank stehen hast, wohl nicht wirklich in UTF-8 kodiert.
(Du hast es aber schon mit “neuen” Daten probiert, die du eingetragen hast, nachdem du alle Einstellungen gemacht hast - und nicht mit verfälschten alten …?)

Und Sonderzeichen in Bezeichnern wie DB-Spaltennamen (das lässt die Query auf der zweiten genannten Seite scheitern) sollte man generell vermeiden. Wenn man sie wider alle Vernunft doch benutzen will, dann muss man sie wenigstens vernünftig quoten.

ja ich habe es mit neuen datensätzen probiert…
das mit dem spaltennamen wäre ja kein problem, wenn es die utf-8 einstellungen “annehmen” würde.

Der letzte Zeichensatz der gesetzt werden muss ist der: mysql_set_charset()
:wink:

ich verbind mich aber mit mysqli, geht das da auch??

Vorschlag: Wir gehen das jetzt mal im Manual nachlesen …

habs grad gefunden :stuck_out_tongue:

nochmal danke für eure hilfe