Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Beitragserstellung bei vorhandenem Thema verweigern?
#11
Vorab hier noch mal der Link zu Beitrag#5 um zu wissen um welche Änderung es ging:
https://www.mybb.de/forum/thread-16283-p...#pid117180

Ich hab jetzt doch noch ein Problem festgestellt. Wenn ein Apostroph (Das von der Raute-Taste -> ' ) im Betreff ist, dann kommt eine Fehlermeldung bei Themenerstellung. Ich habe das zuerst so gefixt:

inc/datahandlers/post.php In dieser Zeile:
PHP-Code:
$subject = &$thread['subject']; 
wie folgt geändert:
PHP-Code:
$subject mysql_real_escape_string(&$thread['subject']); 

Die Themenerstellung klappte dann wieder. Aber nur solange bis man wirklich einen Betreff eingegeben hat, den es schon gibt. Also erst dann wenn die eigentliche Funktion eigentlich greifen soll. Und so sah das dann aus:

http://img86.xooimage.com/files/3/9/7/mw...6d5fdc.jpg

Und das hier ist die Zeile in der newthread.php:
PHP-Code:
$proof_for_double_subject $posthandler->verify_proof_for_double_subject(); 

Und jetzt weiss ich nicht weiter. Wink
Help please
Zitieren
#12
$db->escape_string() und nicht mysql_real_escape_string()
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#13
Vielen Dank StefanT, funzt Wink

Hätte ich mal vorher nach "escape" in der php gesucht, hätte ich auch andere Zeilen mit dem richtigen Code entdeckt. Naja, man lernt eben dazu ^^
Zitieren
#14
Ich war wohl etwas zu voreilig. Ich hatte nur im Preview-Modus kontrolliert, ob noch eine Fehlermeldung kommt. Leider musste ich jetzt feststellen dass durch die Modifikation, wenn ein Apostroph im Titel ist, vor diesem Apostroph ein Backslash nach dem posten im Titel ist. Wie kann ich das jetzt wiederum verhindern?
Zitieren
#15
Dann escapst du an der falschen Stelle. Wink
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#16
OK, aber welche Stelle wäre dann die richtige? Die Modifikation ist hier in Beitrag#5 -> https://www.mybb.de/forum/thread-16283-p...#pid117180
Zitieren
#17
Das ist mit der Referenz etwas kniffelig. Ich habe mir mal erlaubt diese Sicherheitslücke im Beitrag oben zu beheben.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#18
Soweit habe ich jetzt die Änderung übernommen. Ja, das scheint alles etwas knifflig. Würde mich freuen wenn noch jemand eine Idee dazu hat. Wink
Zitieren
#19
Funktioniert meine Änderung in Beitrag #5 nicht?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#20
Wenn die Änderung nur auf diese Zeile bezogen war, dann nein:
PHP-Code:
$no_double_subject_query $db->query("SELECT subject FROM ".TABLE_PREFIX."threads WHERE subject='".$db->escape_string($subject)."' LIMIT 0,1"); 

Hab nur diese Zeile geändert, aber immer noch SQL Error 1064 wenn ein Apostroph im Titel ist.
Zitieren


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Plugin suche. Vordifinierter Text bei Beitragserstellung maxxs 4 313 19.03.2014, 16:21
Letzter Beitrag: MrBrechreiz
  Email an Admin bei neuem Thema - Thema Infos rausholen Riccardo 10 1.713 30.07.2009, 13:10
Letzter Beitrag: Riccardo