【问题标题】:file_put_contents not save entire filefile_put_contents 不保存整个文件
【发布时间】:2019-10-23 19:13:40
【问题描述】:

函数 file_put_contents 正在工作,但在到达“&”符号后停止保存日期。 php 文件从用户界面上的“textarea”获取内容。传递给 php 文件的内容是 C++ 代码。当 file_put_contents 函数到达 "&myStopDistance" 时,它会停止保存并且只保存之前的所有内容。

我删除了“&myStopDistance”,看看是否是问题所在。然而,当它在几行之后遇到“&myDesired”时,同样的问题发生了。

用户界面 PHP 文件

<?php
$file = '/var/www/cgi-bin/cpp_get3.txt';
$content = file_get_contents($file);
?>
<textarea id="cppTextArea" rows="15"><?php echo($content);?></textarea><br/>
<button id="save" onclick="savefiles();">save</button>

脚本

request.open('POST', '../../../../../cgi-bin/save_contents.php', true);
request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
request.send('cpp_content=' + cpp_content);

PHP 文件(问题)

<?php
$cpp_content = $_POST['cpp_content'];
$filename = '../cgi-bin/cpp_get3.cpp';
file_put_contents($filename, $cpp_content);
?>

如果有人可以帮助我解决这个问题,以便保存整个文件。

【问题讨论】:

  • 你应该对cpp_content进行url_encode
  • "Script" 相当模糊。是javascript吗?如果是这样,请将其放在问题中,既作为标签也作为问题中该部分的标题 - 为什么这个问题被标记为c++?这个问题与 C++ 没有任何关系。

标签: php html


【解决方案1】:

试试

request.send('cpp_content=' + encodeURIComponent(cpp_content));

我认为你在传递 url 参数时会丢失数据

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多