2012-07-31 4 views
0

POST 변수의 내용을 표시하려고하지만 출력이 비어 있습니다. display contenute POST

<?php 
$dir = '/var/www/devData/test'; 

// create new directory with 777 permissions if it does not exist yet 
// owner will be the user/group the PHP script is run under 
if (!file_exists($dir)) { 
    mkdir ($dir, 0777); 
} 


     $stringData = print_r($_POST['data'], true); 
     $file = "/var/www/devData/test/ciao.txt"; 
     $fh = fopen($file, 'a+') or die("can't open file"); 
     $fla = 0; 

     $arr = array(); 
     $i = 0; 
     while(!feof($fh)) { 
        $theData = fgets($fh, filesize($file)); 
        array_push($arr,$theData); 
        //echo $arr[$i]; 
        $i++; 
     } 
     echo $stringData; 


     fclose($fh); 



?> 

I 함수를 호출 fwrite

는 가변 $stringData 파일에 저장된다.

은 PHP 파일을 호출하는 기능이다 options_label 배열이다

$.post("JS/foo.php", {data: options_label}, function(result){alert(options_label) }, "json"); 

.

decode_json 등을 사용해 보았지만 $stringData은 여전히 ​​비어 있습니다.

+0

무엇을 표시 하시겠습니까? – Don

+0

변수 $ stringData의 내용 – Edivad

+0

하지만 그게 내가 물었던 이유입니다 ... "contenute"가 무슨 뜻입니까? – Don

답변

0

나는 문제가 여기에있다 생각 :

$stringData = print_r($_POST['data'], true); 

당신이 file.txt를에 $ _POST의 내용을 저장하려면 당신과 같이 문자열에 $ _POST를 [ '데이터'] 변환해야합니다 :

$stringData = ""; 

foreach ($_POST['data'] as $key=>$val) { 
    $stringData .= $key . ": " . $val . "\n\r"; 
} 
+0

Matt 나는 $ stringData의 contenute 파일을 그냥 표시하고 조작하고자하는 파일에 저장할 수 있습니다. – Edivad

+0

위의 코드를 사용하면 그렇게 할 수 있습니다. – Matt

+0

출력이 여전히 NULL입니다. $ 브로은 $ _POST [ '데이터']) \t \t의 foreach. ":". $ val. "\ n \ r"; \t \t \t \t $ stringData = ""; $ stringData = $ _POST [ 'data']; $ file = "/var/www/devData/test/ciao.txt"; $ fh = fopen ($ file, 'a +') 또는 죽습니다 ("파일을 열 수 없습니다"); \t \t fwrite ($ fh, $ stringData); \t \t var_dump ($ stringData); fclose ($ fh); ?> – Edivad