我创建了一个由 2 个输入字段和一个所见即所得文本区域(ckeditor)组成的表单。我有一个使用ajax 来收集要提交的ckeditor 数据的函数。我已将表单正确提交到数据库,但我还需要它来写入文本文件。我该如何去做呢?
编辑以包含代码:
使用onclick提交:
onclick=\"javascript:submitData()\"
ajax函数:
function submitData(){
var params='';
if(document.getElementById('title').value!='' && document.getElementById('date').value!='' && CKEDITOR.instances.article.getData()!=''){
//build params
params='&title='+document.getElementById('title').value;
params+='&date='+document.getElementById('date').value;
params+='&article='+escape(CKEDITOR.instances.article.getData());
var httpRequest=new ajaxObject('form.php',processData);
httpRequest.update('id=submitData'+params);
}
提交到数据库,然后尝试提交到平面文件:
$saving = $_REQUEST['saving'];
if ($saving == 1) {
$data = $formData['title'];
$data .= $formData['date'];
$data .= $formData['article'];
$file = "/txt/data.txt";
$fp = fopen($file, "a") or die("Couldn't open $file for writing!");
fwrite($fp, $data) or die("Couldn't write values to file!");
fclose($fp);
}
最佳答案
我想,在你的 PHP 脚本中的某个地方,有类似的东西
mysql_query("insert into your_table ... ");
插入数据库?
好吧,在该行附近,您必须写入文件。
我能想到的最简单的解决方案是使用 file_put_contents
:
file_put_contents('path to your file', $content);
如果您只想创建一个新文件,或覆盖现有文件;和:
file_put_contents('path to your file', $content, FILE_APPEND);
如果您想在现有文件的末尾添加文本(如果文件不存在则创建该文件)。
当然,您也可以使用fopen
的组合。 , flock
, fwrite
,和fclose
;但这意味着需要更多的工作^^
关于php - 将文本和所见即所得表单提交到数据库和平面文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2291144/