Denememistim.
 
DOMDocument::loadXML() expects parameter 1 to be string hatasini veriyor.

________________________________

Von: linux-programlama-boun...@liste.linux.org.tr 
[mailto:linux-programlama-boun...@liste.linux.org.tr] Im Auftrag von Hasan 
Sertçelik
Gesendet: Freitag, 27. März 2009 13:11
An: Özgür yazılımlarla çeşitli dillerde yazılım geliştirme
Betreff: [Linux-programlama] Re: $HTTP_RAW_POST_DATA


$HTTP_RAW_POST_DATA işlenmemiş post verisini tutar. 
print_r($_POST) ile veriye ulaşmayı denedinizmi.



Gamze Tepe yazmış: 

        Merhaba,
         
        Daha önce PHP 4.3.11 üzerinde calisan bir uygulamayi PHP 5.1.2 yüklü 
olan bir makinaya almak zorunda kaldik. Su an bazi degiskenler calismiyor.
         
        Bunlardan ilki
         
        $HTTP_RAW_POST_DATA;
         
        DOMXML'in de PHP 5 ile calismadigini gördüm. Bunun icin ara bir php 
scripti buldum. Daha sonra baska bir hata mesaji ile karsilastim.
         
        DOMDocument::loadXML() [<a 
href='function.loadXML'>function.loadXML</a>]: Empty string supplied as input 
in /sites/incentro/ips/htdocs/iPS/domxml-php4-to-php5.php</b> on line <b>72</b><
         
         
        domxml-php4-to-php5.php dosyasi benim internette buldugum ara kod.
         
        Bu hata mesajini su scriptten aliyorum:
         
        <?php
         require_once("common.php");
         require_once("common/request_xml.php");
         
         function get_session(&$error)
         {
          global $config, $log;
          global $HTTP_RAW_POST_DATA;
          
          
          $log->write(LOG_SEVERITY_INFO, "Received 'get_session' request from 
'{$_SERVER["REMOTE_ADDR"]}:{$_SERVER["REMOTE_PORT"]}':"
          . str_replace("\n", "\n    ", "\n$HTTP_RAW_POST_DATA"));
          
          header("Content-type: text/xml");
         
          $request = new RequestXML();
         
          if ($request->create($HTTP_RAW_POST_DATA, $error) === false)
             return (false);
        .
        .
        .
        ......
         
        ?>
         
        request.php
        <?php
         
        function create($xml,&$error)
          {
           if (($dom = domxml_open_mem($xml)) === false) {
            $error = new Error(E_REQUEST_PARSE_XML);
            return (false);
           }
        ........
        ?>
         
         
        Hatanin sebebi $HTTP_RAW_POST_DATA degerinin bos olmasi. Bu degeri 
nasil elde edebilirim?
        php.ini dosyasinda 
         
        always_populate_raw_post_data 
<http://at.php.net/manual/en/ini.core.php#ini.always-populate-raw-post-data>  
degiskenini On yapip apache'yi restart ettim ama calismadi.
         
        $GLOBALS['HTTP_RAW_POST_DATA'] = file_get_contents("php://input");
         
        denedim olmadi.
         
        Bir fikri olan var mi?
        
________________________________


        _______________________________________________
        Linux-programlama mailing list
        Linux-programlama@liste.linux.org.tr
        http://liste.linux.org.tr/mailman/listinfo/linux-programlama
          


_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Cevap