Sonderzeichen

Allgemeine Diskussionen zu ConPresso 4. Handhabung, Möglichkeiten, Verständnisfragen.
Achtung: Bitte benutzt wenn möglich die themenspezifischen Foren!
Antworten
mwae
ConPresso-Checker
Beiträge: 102
Registriert: 01.01.1970 01:00
Hat sich bedankt: 22 Mal
Danksagung erhalten: 1 Mal

Sonderzeichen

Beitrag von mwae »

Guten Tag

Ich bin auch in der Version 4 über die Probematik mit dem Sonderzeichen ' im Text gestolpert.

- Erstellen eines neuen Artikels mit der Titelbezeichnung - titre l'armoire. Die Erstellung, resp. das Speichern
und freigeben des Artikels funktioniert.

- Bei einem erneuten Bearbeiten dieses Artikels erhalte ich die folgende Fehlermeldung:

Database error:
Invalid SQL: INSERT INTO cpo4_news (artikel_archiv, article_nr, auth, commentary, rubric_id, templates_id, titel, datum, verfallsdatum, pub_datum, autor, email, initial, idx, freigabe, released_user_id, release_date, last_modify, c_time, changer, sort_id ) VALUES ('1', '32', '', '', '2', '3', 'titre l'armoire', '2005-03-06 14:42:57', '2036
usw.

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'armoire', '2005-03-06 14:42:57', '2036-01-01 00:00:00', '2005-0 (1064)

Diesen Fehler habe ich im Kommentarfeld und Author festgestellt.

Gibt es igerdeinen Workaround von der Basis?

Gruss mwae


PS: Hatte bereits dieselbe Problematik mit der Version 3.4.8
http://www.conpresso.de/conpresso/phoru ... #reply_545


Auto-Edit: Link veraltet - neuer Link: http://community.conpresso.de/viewtopic.php?t=1872#9478
Benutzeravatar
semf
Modul-Entwickler
Beiträge: 1853
Registriert: 01.01.1970 01:00
Wohnort: Gütersloh-Friedrichsdorf
Hat sich bedankt: 14 Mal
Danksagung erhalten: 40 Mal
Kontaktdaten:

Re: Sonderzeichen

Beitrag von semf »

hallo mwae,

hast du schon mal deine magic_quotes-einstellungen geprüft und ggf. mal geändert?

guckst du hier: <http://www.php.net/manual/de/ref.info.p ... quotes-gpc>

Viel Erfolg!

Module ConPresso 4.x
Latest News
Tell-a-friend

Module ConPresso 3.4.x
Index_X
Kontakt
RSS-Feed
Umfrage
Gästebuch
Tell-a-Friend

Modul-Download
mwae
ConPresso-Checker
Beiträge: 102
Registriert: 01.01.1970 01:00
Hat sich bedankt: 22 Mal
Danksagung erhalten: 1 Mal

Re: Sonderzeichen

Beitrag von mwae »

Hallo semf

Habe die magic_quotes_gpc geprüft:

Vorgabe:

Directive Local Value Master Value
magic_quotes_gpc On On
magic_quotes_runtime Off Off

Geändert mit .htaccess in:

Directive Local Value Master Value
magic_quotes_gpc On On
magic_quotes_runtime On Off

Kein Erfolg.
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Re: Sonderzeichen

Beitrag von MarkusR »

ändere Zeile 82 in _include/article_archive.php
von
."'".$archive_titel."', "
in
."'".addslashes($archive_titel)."', "

Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
mwae
ConPresso-Checker
Beiträge: 102
Registriert: 01.01.1970 01:00
Hat sich bedankt: 22 Mal
Danksagung erhalten: 1 Mal

Re: Sonderzeichen

Beitrag von mwae »

Danke MarkusR

Funtioniert soweit. Habe die Datei article_archive.php ab der Zeile 79 wiefolgt angepasst:

."'".addslashes($archive_commentary)."', "
."'".$archive_rubric_id."', "
."'".$archive_templates_id."', "
."'".addslashes($archive_titel)."', "
."'".$archive_datum."', "
."'".$archive_verfallsdatum."', "
."'".$archive_pub_datum."', "
."'".addslashes($archive_autor)."', "

Dieses Abfangen sollte generell in der Version 4 berücksichtigt werden.

mwae
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Re: Sonderzeichen

Beitrag von MarkusR »

Ist generell berücksichtigt (siehe functions.php)

$query = "INSERT INTO ".CPO_NEWS." "
."(nr, artikel_archiv, article_nr, auth, keywords, commentary, rubric_id, templates_id, titel, datum, verfallsdatum, pub_datum, autor, email, initial, idx, freigabe, released_user_id, release_date, last_modify, c_time, changer, sort_id) "
."VALUES ("
."'".addslashes($data['nr'])."', " // nr
."'0', " // artikel_archiv
."'".addslashes($data['nr'])."', " // article_nr
."'".addslashes($auth)."', " // auth
."'".addslashes($data['keywords'])."', " // keywords
."'".addslashes($data['commentary'])."', " // commentary
."'".addslashes($data['rubric_id'])."', " // rubric_id
."'".addslashes($data['templates_id'])."', " // templates_id
."'".addslashes($data['titel'])."', " // titel
."'".addslashes($datum)."', " // datum
."'".addslashes($data['verfallsdatum'])."', " // verfallsdatum
."'".addslashes($data['pub_datum'])."', " // pub_datum
."'".addslashes($data['autor'])."', " // autor
."'".addslashes($data['email'])."', " // email
."'".addslashes($data['initial'])."', " // initial
."'".addslashes($data['idx'])."', " // idx
."'".addslashes($free)."', " // freigabe
."'".addslashes($free_id)."', " // released_user_id
."'".addslashes($free_date)."', " // release_date
."'".addslashes($datum)."', " // last_modify
."'".addslashes($datum)."', " // c_time
."'".addslashes($data['changedBy'])."', " // changer // SID_login on replace
."'".addslashes($data['sort_id'])."') "; // sort_id
DEBUG(1, 'Inserting metadata of article.

'.$query, __FILE__, __LINE__);
$db->query($query);


nur für's Artikel-Archiv wurde es vergessen ;o)

Da sollte besser auch die Funktion save_article() zum Einsatz kommen...

Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
balu
ConPresso-Entwickler
Beiträge: 1748
Registriert: 01.01.1970 01:00
Hat sich bedankt: 81 Mal
Danksagung erhalten: 133 Mal

Re: Sonderzeichen

Beitrag von balu »

Oha,

da wurden tatsaechlich in einer Datei die addslashes() vergessen.

Die Einstellung fuer magic_quotes* hilft hier uebrigends nicht mehr, da ConPresso beim Aufruf jeder Seite erst mal alle "magic quotes" aus den Variablen entfernt. Aus diesem Grund werden die bei alle SQL-Abfragen benoetigt.

Die "magic quotes" sind meiner Meinung nach eines der groessten Uebel von PHP, da man nie weiss, ob sie nun eingefuegt werden oder nicht. Und wer moechte das schon bei jeder SQL-Abfrage oder Ausgabe pruefen?. Wenn es das nicht gaebe, muesste man einfach bei jeder SQL-Abfrage mit einem String die addslashes() durchfuehren und voila...

Ich weiss, es wurde als Sicherheitsoption fuer PHP-Neulinge eingebaut die vergessen, dass man auf die Quotes achten muss, da sonst die Abfrage veraendert werden kann. Mit der Funktion erweitert sich das Problem aber, denn sobald ein PHP-Neuling addslashes() gefunden hat, wird er es vermutlich auch benutzen und dann werden die "magic quotes" nochmal mit Slashes versehen und das Problem tritt wieder auf und wird endgueltig undurchschaubar.

Danke fuer den Hinweis.

Balu
PS: Mit der save_article() geht das uebrigends nicht, weil diese genau die _include/article_archive.php aufruft - das gaebe eine schoene Endlosschleife ;)
Bartels.Schöne
ConPresso Support & Development
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Re: Sonderzeichen

Beitrag von MarkusR »

Ooooops... jetzzt sehe ich das auch... naja, dann eben her mit den addslashes... ;o)

Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Antworten