Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self?srt=yes Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Fri, 17 Apr 15 16:05:56 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637746?srt=yes#m1637746 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637746?srt=yes#m1637746 <p>Ich habe über ein textfeld in einem Formular einen String. Dieser steht in der var $text. Der Inhalt ist:</p> <p>**Es war<br> einmal in<br> einem fernen<br> Land **</p> <p>diesen speichere ich mittels</p> <pre><code class="block">mysql_real_escape_string($text) </code></pre> <p>in meine Mysql Datenbank, doch dort kommt er nur als</p> <p><strong>Es wareinmal ineinem fernenLand</strong></p> <p>an.</p> <p>Irgendwo ist ein Fehler, den ich mir aber nicht erklären kann?</p> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Fri, 17 Apr 15 16:11:09 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637747?srt=yes#m1637747 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637747?srt=yes#m1637747 <p>Liebe Mitdenker, liebe Wissende, liebe Neugierige,</p> <blockquote> <p>Ich habe über ein textfeld in einem Formular einen String. Dieser steht in der var $text. Der Inhalt ist:</p> <p>**Es war einmal in einem fernen Land ** diesen speichere ich mittels</p> <pre><code class="block">mysql_real_escape_string($text) </code></pre> <p>in meine Mysql Datenbank, doch dort kommt er nur als</p> <p><strong>Es wareinmal ineinem fernenLand</strong></p> <p>an.</p> </blockquote> <p>Wie hast Du das denn kontrolliert, was in der DB ankommt?</p> <p>Und bei solchen Fragen ist ein bisschen Mehr Code drum herum nicht schlecht, um dem Fragesteller besser folgen zu können :-)</p> <p>Spirituelle Grüße<br> Euer Robert<br> robert.r@online.de</p> <div class="signature">-- <br> Möge der wahre Forumsgeist ewig leben! </div> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Fri, 17 Apr 15 16:24:40 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637748?srt=yes#m1637748 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637748?srt=yes#m1637748 <p>Moin!</p> <blockquote> <p>Irgendwo ist ein Fehler, den ich mir aber nicht erklären kann?</p> </blockquote> <p>Das ist einfach zu beantworten:</p> <p>Wenn Du eine Möhre in etwas hineinsteckst und die riecht, wenn sie hinten wieder rauskommt, lieblich nach Kaninchenscheiße, dann war das, wo Du die Möhre reingesteckt hast, sehr wahrscheinlich ein Kaninchen und weniger wahrscheinlich eine Möhren-mit-Kaninchenscheiße-Mischmaschine.</p> <p>Wenn Du Daten in ein Programm steckst musst Du eben schauen, an welcher Stelle die nach welchen Tier riechen, wenn hinten Scheiße rauskommt.</p> <p>Das nennt man Debuggen. Wenn man seinen Code nicht zeigt, sondern nur den Kot (das Ergebnis), dann muss man eben selbst debuggen.</p> <p>Jörg Reinholz</p> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Fri, 17 Apr 15 16:30:10 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637749?srt=yes#m1637749 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637749?srt=yes#m1637749 <p>Hallo,</p> <blockquote> <p>Irgendwo ist ein Fehler, den ich mir aber nicht erklären kann?</p> </blockquote> <p>Das ist vermutlich nicht auszuschließen.</p> <p>Gruß<br> Kalk</p> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Sat, 18 Apr 15 08:50:55 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637810?srt=yes#m1637810 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637810?srt=yes#m1637810 <p>Die Sternchen sind also auch weg? Versuchs ohne mysql_real_escape_string zu speichern. Ändert sich was? Mach einen Dump von dem ausgelesenen Wert und schau nach was tatsächlich drin steht. Wandel den Wert in der Datenbank in Binärdaten um und sieh dir die an.</p> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Fri, 17 Apr 15 17:09:52 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637755?srt=yes#m1637755 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637755?srt=yes#m1637755 <p>Tach!</p> <blockquote> <p>Wie hast Du das denn kontrolliert, was in der DB ankommt?</p> </blockquote> <p>Es würde mich auch sehr verwundern, wenn man das kontrollieren kann. Im Prinzip ist es ziemlich egal, wie das DBMS etwas in seinem Inneren speichert. Es sollte aber die Daten so wieder zurückgeben, wie sie übergeben wurden. Mir ist nicht bekannt, dass MySQL irgendwelche Zeichen verschlucken würde, wenn man nicht selbst irgendwelche Fehler (mit der Kodierung) macht.</p> <p>Jedenfalls wird wohl das Kontrollieren der Daten aller Voraussicht nach nicht <strong>im</strong> DBMS sondern irgendwo außerhalb stattgefunden haben. Und da kommt es drauf an, wie man sich das Ergebnis anzeigen lässt. Browser beispielsweise sehen Zeilenumbrüche in ihrer gerenderten Ausgabe wie Leerzeichen an, wenn man ihnen nicht ausdrücklich vorgibt, die Zeilenumbrüche zu berücksichtigen.</p> <p>dedlfix.</p> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Fri, 17 Apr 15 17:15:28 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637756?srt=yes#m1637756 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637756?srt=yes#m1637756 <p>Liebe Mitdenker, liebe Wissende, liebe Neugierige,</p> <blockquote> <p>Jedenfalls wird wohl das Kontrollieren der Daten aller Voraussicht nach nicht <strong>im</strong> DBMS sondern irgendwo außerhalb stattgefunden haben. Und da kommt es drauf an, wie man sich das Ergebnis anzeigen lässt. Browser beispielsweise sehen Zeilenumbrüche in ihrer gerenderten Ausgabe wie Leerzeichen an, wenn man ihnen nicht ausdrücklich vorgibt, die Zeilenumbrüche zu berücksichtigen.</p> </blockquote> <p>So ähnlich waren meine Gedanken auch. Aber wenn es eine simple Browserausgabe wäre, dann müssten die Linebreaks ja wenigstens noch als Leerzeichen auftauchen, was laut Kai III ja nicht der Fall ist. Warten wir also mal seinen zusätzlichen Input ab. :-)</p> <p>Spirituelle Grüße<br> Euer Robert<br> robert.r@online.de</p> <div class="signature">-- <br> Möge der wahre Forumsgeist ewig leben! </div> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Sat, 18 Apr 15 08:53:44 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637811?srt=yes#m1637811 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637811?srt=yes#m1637811 <p>Moin!</p> <blockquote> <p>Versuchs ohne mysql_real_escape_string zu speichern.</p> </blockquote> <p>Nein, Nein, Nein! (Soll heißen: Unter keinen Umständen! (mysql_real_escape_string kann auch nicht die Ursache sein)</p> <p>Jörg Reinholz</p> Zeilenvorschub im MYsql Datenbank nicht mehr vorhanden Sat, 18 Apr 15 09:16:06 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637817?srt=yes#m1637817 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637817?srt=yes#m1637817 <p>Liebe Mitdenker, liebe Wissende, liebe Neugierige,</p> <blockquote> <p>Versuchs ohne mysql_real_escape_string zu speichern.</p> </blockquote> <p>Bitte entschuldige, aber dieser Tipp ist ohen weitere Fakten*) so daneben, dass mir das einen eigenen Minuspunkt wert ist.</p> <p>Zuerst einmal würde ich mir das gesamte zusammengebaute Statement bzw. dessen vorbereitete Daten anzeigen lassen. Es ist ja noch gar nicht offengelegt worden, mit welcher Methode oder Funktion der Eintrag in die Datenbank stattfindet. "mysql_real_escape_string()" deutet allerdings erst einmal darauf hin, dass es "mysql_query()" sein müsste, aber nix ist sicher. Ich habe noch nir ausprobiert, einen später per prepared Statement eigetragenen Wert vorher mit mysql_real_escape_string() zu behandeln. Vielleicht geht das ja und dann wäre das Escaping <strong>irgendwie</strong> doppelt.</p> <p>Spirituelle Grüße<br> Euer Robert<br> robert.r@online.de</p> <div class="signature">-- <br> Möge der wahre Forumsgeist ewig leben! </div> Ohne Quelltext geht nichts ... Sat, 18 Apr 15 09:25:59 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637819?srt=yes#m1637819 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637819?srt=yes#m1637819 <p>Moin!</p> <p>ich vermute fast, dass vor dem Eintragen in die Datenbank etwas wie</p> <pre><code class="block">$str = str_replace("\n", "<br>", $str); </code></pre> <p>gemacht wird (was schon falsch ist) und nach Auslesen und vor der Anzeige dann:</p> <pre><code class="block">$str = strip_tags($str); </code></pre> <p>Da es aber ungefähr 2.345.436 weitere(!) mögliche Vermutungen gibt, wie das Zustande kommt, muss ich leider darauf bestehen, dass ich den Quelltext für die Eingabe und die Ausgabe sehe.</p> <p>Jörg Reinholz</p> Ohne Quelltext geht nichts ... Sat, 18 Apr 15 09:31:41 Z https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637824?srt=yes#m1637824 https://forum.selfhtml.org/self/2015/apr/17/zeilenvorschub-im-mysql-datenbank-nicht-mehr-vorhanden/1637824?srt=yes#m1637824 <p>Liebe Mitdenker, liebe Wissende, liebe Neugierige,</p> <blockquote> <p>Da es aber ungefähr 2.345.436 weitere(!) mögliche Vermutungen gibt, wie das Zustande kommt, muss ich leider darauf bestehen, dass ich den Quelltext für die Eingabe und die Ausgabe sehe.</p> </blockquote> <p>Naja, es reichen doch schon 23.</p> <p>Aber hier musste ich über deine Überkarikatur doch lachen :-P</p> <p>Spirituelle Grüße<br> Euer Robert<br> robert.r@online.de</p> <div class="signature">-- <br> Möge der wahre Forumsgeist ewig leben! </div>