在php.ini里改成:magic_quotes_gpc = Off修改之后,重新启动Apache,然后在phpinfo()输出的页面里看,这个选项还是“On”状态。就是说ini文件修改了,可是没生效。求助~~~

解决方案 »

  1.   

    手册里介绍了三种方法,在些整理一下:1 修改PHP配置文件php.ini这种方法只适于自己有权管理服务器的情况下,如果用的虚拟空间,那就只能采用后两条方法。在PHP配置文件php.ini中将magic_quotes_gpc、magic_quotes_runtime、magic_quotes_sybase全部设为off。如下所示:; Magic quotes;; Magic quotes for incoming GET/POST/Cookie data.magic_quotes_gpc = Off; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.magic_quotes_runtime = Off; Use Sybase-style magic quotes (escape ‘ with ” instead of \’).magic_quotes_sybase = Off
    2 利用.htaccess文件该方法只在服务器支持htaccess的情况下,现在的服务器一般都会支持的在程序目录下.htaccess文件中增加下面一句:php_flag magic_quotes_gpc Off3 在代码中屏蔽该方法是移植性最强的,不用考虑服务器的配置,只要支持PHP就可以使用。在所有PHP文件开始处增加下面代码<?php
    if (get_magic_quotes_gpc()) {
    function stripslashes_deep($value)
    {
    $value = is_array($value) ?
    array_map('stripslashes_deep', $value) :
    stripslashes($value);return $value;
    }$_POST = array_map('stripslashes_deep', $_POST);
    $_GET = array_map('stripslashes_deep', $_GET);
    $_COOKIE = array_map('stripslashes_deep', $_COOKIE);
    $_REQUEST = array_map('stripslashes_deep', $_REQUEST);
    }
    ?>
      

  2.   

    可见你没改对PHP.ini,确认你改的那个文件的准确性,我记得XAMPP里有好几个PHP.ini
      

  3.   

    如果改不了  也可以需要的时候配置一下
    ini_set('fpathname',On/off);
    也能够实现你需要的功能
      

  4.   

    使用 phpinfo 看看那个 php.ini 是不是你修改的那个文件吧。
      

  5.   

    我改的是xampp/php/php.ini。没去检查是不是用的这个php.ini,我今早把xampp全删了,重新装了个新版本。然后就没问题鸟~~
    谢谢大家。。