Photo Station Sonderzeichen im Blog bei DSM 3.0

Status
Für weitere Antworten geschlossen.

tombrenner

Benutzer
Mitglied seit
18. Nov 2009
Beiträge
7
Punkte für Reaktionen
0
Punkte
1
Ich konnte nach dem Update zur DSM 3.0 beta keine Anstriche (also die hier ' ) mehr in die Blogeinträge schreiben. Die Leute von Synology haben sich nach einer Mail von mir sehr schnell mit einer Zwischenlösung gemeldet. Problem war ein falsch gesetzter Schalter:

The temporary solution is list below, you need to telnet in to disk station first. (account:root ; password:your admin account password)
1. Edit this file in DS: /usr/syno/etc/php.ini
2. Find the line: magic_quotes_gpc = Off
3. And change it to magic_quotes_gpc = On
4. And restart apache: /usr/syno/etc/rc.d/S97apache-user.sh restart


..vielleicht hilft es jemanden.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Den Tipp finde ich heikel. Denn darunter könnten etliche PHP Scripte leiden, die magic quotes auf off voraussetzen.
Das sollte Synology über die Anwendung lösen und z.B. einfach ein addslahses() voranstellen (http://php.net/manual/de/function.addslashes.php)
Da Manual bezeichnet magic quotes seit PHP 5.3 als veraltet und rät von dessen Verwendung ab. Ab PHP6 fliegt das eh aus PHP raus
 

tombrenner

Benutzer
Mitglied seit
18. Nov 2009
Beiträge
7
Punkte für Reaktionen
0
Punkte
1
Ja, ich habe auch gesehen, dass es schon als veraltet drin steht im PHP manual. Aber vielleicht kann man sich nun erklären warum manchmal Texte nicht gebloggt werden können nach dem Update auf die Beta. Ich habe echt lange gebraucht festzustellen was die Ursache war.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich verstehe schon, dass dies dein aktuelles Problem lösen konnte. Nur wäre es besser Synology würde ihre Software so anpassen, dass diese Zeichen erlaubt und korrekt escaped werden.
Da müsste Synology nur eine einzige Funktion auf den Inhalt des Beitrages anwenden und wäre damit unabhängig von den magic quotes Einstellungen des Servers.
Ich guck mir heute abend mal die entsprechenden Zeilen im Code an und schau ob man da die Fkt einbauen könnte.
Halte dich auf dem Laufenden
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Mit magic_quotes_gpc funzt es auch bei mir allerdings haut es Warnings auf die Konsole
WARNING: nonstandard use of \' in a string literal at character 205
HINT: Use '' to write quotes in strings, or use the escape string syntax (E'...').
Ohne magic_quotes_gpc zerlegt es die psql-Query. Was eigentlich komisch ist, weil Synology eigentlich eine Funktion hat, um einen Wert vor dem Eintragen in die DB zu entschärfen
PHP:
function SYNOBLOG_MISC_EscapForLike($val)
{
        $val = pg_escape_string($val);
        $val = str_replace("\\\\", "\\\\\\\\", $val);
        $val = str_replace("_", "\\\\_", $val);
        $val = str_replace("%", "\\\\%", $val);
        return $val;
}
Obige Funktion sollte ' eigentlich auch bei magic_quotes off entschärfen. Aber irgendwie wird diese Funktion nie aufgerufen. Warum weiss nur Synology. Frag doch nochmal bei Synology nach und weise sie darauf hin, dass die Fkt ned aufgerufen wird und das Problem wohl lösen würde.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat