Neuigkeiten:

still alive...

Hauptmenü

Fixed: Fehler bei Thread aufteilen

Begonnen von nico, 21. Januar 2006, 20:21:18

Vorheriges Thema - Nächstes Thema

Powie


nico

Kompliment  :H:
Aber mach\'s bitte nicht sooo spannend  /uploads/emoticons/icon_e_smile.gif.4a0acefcb917340d2c82e5239c009e6e.gif\" alt=\":)\" />
Nico

Powie

Es liegt am escapen von bestimmten zeichen. Wieso das aber genau so passsiert weiss ich noch nicht. Im Testthread sieht man das aus \' sogar dann\'\' wird...  /uploads/emoticons/icon_e_smile.gif.4a0acefcb917340d2c82e5239c009e6e.gif\" alt=\":)\" />

nico

Das kann ich bestätigen. Ich habe es gerade nachvollzogen. Sobald im Text des Postings, das in einen neuen Thread umgewandelt werden soll, ein Apostroph vorkommt, wird der neue Thread nicht erstellt.
Jetzt geht mir auch ein Licht auf: Das Problem tauchte bei mir fast immer in einem Board auf, in dem auf Französisch gepostet wird. Und im Französischen kommen Apostrophs wesentlich häufiger vor als im Deutschen.
Nico

Powie

Schnelle Lösung:
Die Insert Query in der editpost.php , cal Zeile 274 ändern:
 

								

nico

Hab\'s getestet. Problem behoben  /uploads/emoticons/icon_e_surprised.gif.a8707b3f35a569cb4cfe563fc72ef78d.gif\" alt=\":-o\" />
Danke!  :H:
Nico

Powie


mahe

Is jo auch ganz logisch warum das bei nem \' passiert :L /uploads/emoticons/icon_cool.gif.a496227c54473879688932bc113a4bbd.gif\" alt=\"8-)\" />

http://blog.mahe.at\" rel=\"external nofollow\">http://blog.mahe.at/wp-content/uploads/2007/06/88x31_1.jpg\" alt=\"88x31_1.jpg\">


Ja, diese Signatur dient zur Werbung!


Und dass ich meine Posts wiederfinde ...


Powie


Original von mahe Is jo auch ganz logisch warum das bei nem \' passiert :L /uploads/emoticons/icon_cool.gif.a496227c54473879688932bc113a4bbd.gif\" alt=\"8-)\" />
[/quote]
warum?

mahe

Also:
Im Thread/Post steht ein \'
Bevor der Post/Thread in die DB kommt wird der \' escaped -> \\\' (entweder per magic_quotes_gpc oder addslashes)
Somit sieht das SQL-Query zB so aus: INSERT INTO tabelle_posts (post) VALUES (\'Beispiel mit \\\' im Text\')
In der DB steht dann: Beispiel mit \' im Text
Beim splitten wird der Text aus der DB geholt, da ist der \' aber nicht escaped.
Dann wird er einfach wieder in die DB geschrieben, dann sieht der SQL-Befehl aber so aus: INSERT INTO tabelle_threads (post) VALUES (\'Beispiel mit \' im Text\')
Das führt aber zu einem SQL-Error /uploads/emoticons/icon_e_wink.gif.3167d127940f44558fbf1ccd9b6d60a9.gif\" alt=\";-)\" />
Demnach erhält man bei mysql_insert_id() 0 (genaugenommen FALSE) retour, und deswegen wird dann in tabelle_post die ThreadID 0 zugewiesen -> kein neuer Thread (SQL-Error) Post \"verschwunden\" (ThreadID 0)
Alle Klarheiten beseitigt? /uploads/emoticons/icon_e_biggrin.gif.1a84f5257b36e14b36d04985314f877f.gif\" alt=\":-D\" />

http://blog.mahe.at\" rel=\"external nofollow\">http://blog.mahe.at/wp-content/uploads/2007/06/88x31_1.jpg\" alt=\"88x31_1.jpg\">


Ja, diese Signatur dient zur Werbung!


Und dass ich meine Posts wiederfinde ...


Powie

das war mir schon klar mahe....
was ich nicht verstehe ist das aus \' ein doppeltes \'\' wird

sabre

hm... is mir bei mir im Forum auch schon aufgefallen, das thread-titel mit \' zu einem \" werden (kein doppeltes \' \' sondern ein richtiges \" ).
Hab aber auch noch nicht wirklich rausgefunden was das macht...

\"Ich habe mir immer gewünscht, dass mein Computer so leicht zu bedienen ist wie mein Telefon; mein Wunsch ging in Erfüllung: mein Telefon kann ich jetzt auch nicht mehr bedienen.\" - Bjarne Stroustrup




mahe


Original von Powie das war mir schon klar mahe....
was ich nicht verstehe ist das aus \' ein doppeltes \'\' wird
[/quote] Aso, das is aber nur beim Threadtitel soweit ich das mitbekommen habe.Das liegt sofern ichs richtig im Kopf habe in der post.php (also die die den Thread reinschreibt)
Da gibts irgendwo ein str_replace(\"\'\",\"\\\"\",$post);
Das hab ich aber vor Jahren schonmal irgendwo gepostet /uploads/emoticons/icon_e_biggrin.gif.1a84f5257b36e14b36d04985314f877f.gif\" alt=\":-D\" />
Ich denke ich kenne auch den Grund warum du das vor langer Zeit mal so gelöst hast:
Beim Editieren bzw. auch beim Antworten hat man oben den Threadtitel stehn, das Input-Feld dafür war (ist) so geschrieben:
Wenn da nun ein \' drinnen war dann wurde die Seite nichtmehr richtig dargestellt /uploads/emoticons/icon_e_wink.gif.3167d127940f44558fbf1ccd9b6d60a9.gif\" alt=\";-)\" />

http://blog.mahe.at\" rel=\"external nofollow\">http://blog.mahe.at/wp-content/uploads/2007/06/88x31_1.jpg\" alt=\"88x31_1.jpg\">


Ja, diese Signatur dient zur Werbung!


Und dass ich meine Posts wiederfinde ...


all your base are belong to us / Discord