Frage

Mein beschissen Web-Host einige Upgrades haben den anderen Tag und einige Einstellungen haben schief gegangen, weil Blick auf unsere Gesellschaft Wiki (MediaWiki) wird jedes Zitat mit einem umgekehrten Schrägstrichen entkommen ist. Es ist nicht einmal nur Daten, die (dh: die Artikel) geschrieben wird, die betroffen sind, sondern auch der Standard-MediaWiki Text. zB:

  

Sie \ ‚einen Link zu einer Seite habe gefolgt, die doesn \‘ t noch nicht. Um die Seite zu erstellen, starten Sie in das Feld eingeben unten (siehe die Hilfeseite für weitere Informationen). Wenn Sie hier aus Versehen sind, klicken Sie einfach auf Ihren Browser \ 's \' \ '\' zurück \ '\' \‘Button.

Das erste, was ich tat, war disable magic_quotes_gpc UND magic_quotes_runtime eine .htaccess Datei verwenden, aber dies ist immer noch auftritt. Mein php_info() meldet dies:

Setting             Local Value   Master Value  
magic_quotes_gpc        Off            On  
magic_quotes_runtime    Off            On  
magic_quotes_sybase     Off            Off  

Irgendwelche Ideen?

War es hilfreich?

Lösung

Wenn PHP-Flags gesetzt sind mit php_admin_flag / php_admin_value, können Sie es nicht von einer .htaccess Datei ändern. Dies hat vor mir einige Kopfschmerzen verursacht. Entweder deaktivieren Sie es in php.ini oder rückgängig zu machen magic quotes in Laufzeit: http://talks.php.net/show/php-best-practices/ 26

Andere Tipps

Sie mögen, um zu bestätigen, dass die Daten in Ihrer DB beschädigt nicht. Wenn Sie addslash () ing Ihre Daten, wenn ohne das Wissen Sie waren, hatte magic_quotes eingeschaltet, dann würden Sie doppelt slashifying Daten gehen in Ihrem DB sein.

Sie müssen, um sie den Master-Wert zu ändern, oder es selbst behandeln. Ich glaube nicht, dass Sie magic_quotes_gpc() zur Laufzeit für Super Globals einstellen. (Zur Laufzeit Einstellung werden die Dinge wie Datenbank / Dateien abzustreifen, aber nicht die Globals)

if (ini_get('magic_quotes_gpc') ) {
  foreach($_GET as $key=>$value) {
    $_GET[$key] = stripslashes($value);
  } 
} // etc...

Vielleicht etwas anderes ruft set_magic_quotes_runtime ().

Ich benutze stripslases () Schrägstriche zu entfernen, wenn angezeigt wird.

http://www.php.net/manual/en/function .stripslashes.php

Haben Sie versucht, Kontakt mit Ihrem beschissen Host und einen Fehlerprotokollierung? Du bist wahrscheinlich nicht der einzige betroffen, wenn Sie auf Shared-Hosting sind.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top