Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: cms2day Forum - Community & Support rund ums cms2day. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Samstag, 17. April 2010, 11:14

Bug bei Modulinstallationen

Hi,
ich bin grad dabei mal wieder ein Modul für cms2day zu coden und habe dabei einen Bug (denke ich) gefunden.

Wenn ich bei meinem Modul in die info.inc.php bei $modul_info beispielsweise

PHP-Quelltext

1
$modul_info        "Ein Modul, um irgendwas zu machen.<br /><span style='color:#aa0000;'>Unbedingt README Datei lesen!</span>";

eingebe und auf das "Modul installieren"-Symbol klicke, führt er zwar die install.sql aus, allerdings speichert er nicht, dass das Modul installiert wird. Ohne den HTML-Code geht's wunderbar. Liegt also anscheinend an den ', da diese ja nicht escaped werden und somit den Query Code sprengen. Anders kann ichs mir nicht erklären. Wenn ich normale ", wie bei HTML üblich, nehme, geht's auch.

Wenn ich in Zeile 130 der module.inc.php im admin/inc alle Variablen vor dem Eintragen in die Datenbank alle Variablen mit mysql_real_escape_string escape, geht alles super.

Gruß,
Carsten
Aktuelle Projekte:
Adminberechtigungen - 100% (siehe Shop)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Carsten8« (17. April 2010, 11:20)


Werbung

emet

Admin & Support

  • »emet« ist männlich

Beiträge: 2 530

Wohnort: Rhein/Main

Paypal:

  • Nachricht senden

2

Samstag, 17. April 2010, 19:28

Da es bei allen Modulen funzt, liegt es wohl an einer deiner Umsetzungen.

Einziger Rat - vergleiche den Code deines Moduls mit einem anderen laufenden Modul.
.
HTML, was ist das? Ein neues Männermagazin? Css.., was es so alles gibt!

News: http://www.cms2day.de/news/1/
Features: http://www.cms2day.de/cms-funktionen/

Zufrieden mit cms2day und unserer Arbeit/Support - Spenden (-Button links) sind herzlich Willkommen - Dankeschön.
.

Werbung

3

Sonntag, 18. April 2010, 09:03

Es funktioniert ja. Allerdings nur mit doppelten Anführungszeichen (") und nicht mit Einfachen ('). Ich weiß nicht wie weit deine MySQL & PHP Kenntnisse reichen, allerdings KANN es vom cms2day Code gar nicht mit einfachen Anführungszeichen funktionieren. Dass alle anderen gehen, liegt daran, dass diese keine ' verwenden :)
Aktuelle Projekte:
Adminberechtigungen - 100% (siehe Shop)

Werbung

emet

Admin & Support

  • »emet« ist männlich

Beiträge: 2 530

Wohnort: Rhein/Main

Paypal:

  • Nachricht senden

4

Sonntag, 18. April 2010, 18:14

Im HTML beim Inlinestyle kommen ja auch " hin und keine '

Bei SQL-Anweisungen nur '
.
HTML, was ist das? Ein neues Männermagazin? Css.., was es so alles gibt!

News: http://www.cms2day.de/news/1/
Features: http://www.cms2day.de/cms-funktionen/

Zufrieden mit cms2day und unserer Arbeit/Support - Spenden (-Button links) sind herzlich Willkommen - Dankeschön.
.

Werbung

5

Sonntag, 18. April 2010, 19:07

Dass da " hinkommen, weiß ich auch. Das mit dem ' war ein Versehen. Trotzdem kann es doch sein, dass jemand mal eine Beschreibung mach in der - in welcher Form auch immer - ein ' vorkommt oder?
Aktuelle Projekte:
Adminberechtigungen - 100% (siehe Shop)

Werbung

6

Montag, 19. April 2010, 10:04

Dann darf man dies aber brave escapen - oder etwa nicht ?

Gruss
mantis

Werbung

7

Montag, 19. April 2010, 13:47

Klar, aber wer will diese per Hand escapen, wenns doch so eine nützliche Funktion gibt? Nicht jeder geht bei der Fehlersuche davon aus, dass die Daten vor dem eintragen in die Datenbank nicht automatisch escaped werden. Aber das ist bestimmt wieder so ein Thema, über das man sich ewig streiten kann.
Aktuelle Projekte:
Adminberechtigungen - 100% (siehe Shop)

Werbung

8

Montag, 19. April 2010, 14:25

Nein eigentlich muss drüber nicht gestritten werden, wer ein Modul codet der hat unser Meinung nach genug Kentnisse solche Sachen selber zu machen.

Es ist kompletter Unsinn ein Functionset oder gar ein Klassenset für solche Sachen zu machen da dies wiederum den Code und die Ladezeiten unötig aufbläht. Global zu setzen währe wiederum hinderlich bei eingigen Funktionen.

Gruss
mantis

Werbung

9

Montag, 19. April 2010, 15:03

du meinst, es wäre unfug, bei einem einzigen Query die paar Variablen mit mysql_real_escape_string zu escapen? Naja wenn du meinst :/
Aktuelle Projekte:
Adminberechtigungen - 100% (siehe Shop)

Werbung