使用PHP将变量值保存在文本文件中

时间:2014-07-03 21:25:47

标签: php ajax

通过单击按钮,我使用Ajax在php中设置变量。

submitInfo(var1);

function submitInfo(var1)
{
  $.ajax({
        type: "POST",
        url: "js/info.php", 
        data: {Info:var1},
        success: function (result) 
        {
             alert(result);
        }
    });
}

在我的PHP代码中,如何在文本文件中保存“var1”?我用它来保存文本文件中的变量,但它没有保存任何内容:

<?php
if (isset($_POST['var1'])) 
        {
            echo $_POST['var1'];
        } 
$file = fopen("js/test.txt","w");
echo fwrite($file,$var1);
fclose($file);
?>

2 个答案:

答案 0 :(得分:0)

试试这个:

<?php
if (isset($_REQUEST['Info'])){
    $var1 = $_REQUEST['Info'];
    $file = fopen("js/test.txt","w");
    echo fwrite($file,$var1);
    fclose($file);
}
?>

答案 1 :(得分:0)

第一个问题是,在您的JQuery中,您实际上将var1变量分配给了&#39;信息&#39; 所以$ _POST数组将包含此而不是var1。

然后,您只想管理您写入文件的尝试,以获得更好,更友好的错误消息,这将为您提供更好的发送回来,并在调试任何其他问题时帮助您。

<?php   
  $var1 = "";
  $filename = "js/test.txt";

  // Get the correct $_POST object
  if (isset($_POST['Info']) { 
    $var1 = $_POST['Info'];
  }

  // If the variable is not empty try to write your file
  if (!empty($var1)) {
    if(!$file = fopen($filename,"w")) {
       $msg = "Cannot open file");
    } else if (fwrite($file,$var1) === false) {
      $msg = "Cannot write to file");
    } else {
      $msg => 'all was good'
    }

    fclose($file);

    $result = array(
      'error' => 'false',
      'msg' => $msg
    );
  } else {
    $result = array(
      'error' => 'true',
      'msg' => 'Info was empty'
    );
}
// Send your message back
echo "{\"result\":".json_encode{$result)."}";
PS:没有测试过,所以手指交叉没有拼写错误。