簡體   English   中英

PHP 5.3 magic_quotes_gpc開啟但不起作用

[英]PHP 5.3 magic_quotes_gpc On but not working

我對magic_quotes_gpc有問題。 我正在將網絡服務器從XP機器遷移到Win2003。 PHP代碼在某些情況下是較舊的,並且不是很完善,因此,我確實需要使magic_quotes_gpc工作。

我很確定配置正確,我也嘗試過復制舊的PHP文件夾和php.ini,但是仍然有問題。 具有magic_quotes_gpc = On的確切行為與具有magic_quotes_gpc = Off行為相同。

在PHP 5.3中進行了嘗試,但即使舊版5.1在舊服務器上也可以正常工作。

唯一的區別是在新服務器中,我使用FastCGI。

我真的在您手中解決這個問題,我真的快瘋了!

20140326-根據Alvaro建議添加代碼示例

<?
  print $_GET["id"];
  print '<br><br>';
  print $_GET[id];
?>

調用頁面./sample.php?id=1 ,僅顯示以下行(我出錯了):

PHP Notice: Use of undefined constant id - assumed 'id' in C:\\Inetpub\\wwwroot\\simple.php on line 4

第4行評論:

<?
  print $_GET["id"];
  print '<br><br>';
  //print $_GET[id];
?>

輸出為預期的1。

您的測試代碼與魔術引號完全無關,因此我懷疑您誤解了該功能的作用。 使用魔術引號,您可以將此網址稱為:

/test.php?foo=O'Hara

...其中test.php是:

<?php
var_dump($_GET);

...然后將其取回:

array(1) {
  ["foo"]=>
  string(7) "O\'Hara"
}

...代替這個:

array(1) {
  ["foo"]=>
  string(6) "O'Hara"
}

但是,您嘗試使用不存在的常量,如下所示:

<?php
define('this_exists', 'yes');
echo this_exists;
echo this_does_not_exist;

...並且您可能希望PHP不會針對錯誤警告您:

PHP注意:使用未定義的常量this_does_not_exist-假定為'this_does_not_exist'

因此,您基本上想擺弄error_reporting並省略E_NOTICE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM