Javascript Can';无法从用户处获取数据。确切的代码适用于一个脚本,但它不适用于';我不为别人工作
我正在尝试获取用户操作的数据。我有两种不同的脚本。每个阶段的任务略有不同。但是,我请求用户名的部分(我将其用作.csv数据名称的变量)和php代码完全相同。虽然它们是相同的,但我可以从一个脚本获取csv文件形式的数据,但不能从另一个脚本获取。这里可能有什么问题 获取主体的JS代码:Javascript Can';无法从用户处获取数据。确切的代码适用于一个脚本,但它不适用于';我不为别人工作,javascript,php,Javascript,Php,我正在尝试获取用户操作的数据。我有两种不同的脚本。每个阶段的任务略有不同。但是,我请求用户名的部分(我将其用作.csv数据名称的变量)和php代码完全相同。虽然它们是相同的,但我可以从一个脚本获取csv文件形式的数据,但不能从另一个脚本获取。这里可能有什么问题 获取主体的JS代码: var subjectID = prompt('What is your IU user name? (You need to type in your username so we can gran
var subjectID = prompt('What is your IU user name? (You need to type in your username so we can grant you credits for your participation. Otherwise, we will not know who you are.)');
if (subjectID === '' || subjectID == null) {subjectID=Math.floor(Math.random()*10000).toString()};
jsPsych.data.addProperties({subject_id: subjectID});
保存数据的功能:
function saveData(name, data){
var xhr = new XMLHttpRequest();
xhr.open('POST', 'write_data2.php'); // 'write_data.php' is the path to the php file described above.
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify({filename: name, filedata: data}));
}
jsPsych.init({
timeline: timeline,
display_element: 'jspsych-target',
on_finish: function(){ saveData("IL" + subjectID + "_data", jsPsych.data.get().csv()); }
})
}
write_data2.php文件的内容:
<?php
$post_data = json_decode(file_get_contents('php://input'), true);
// the directory "data" must be writable by the server
$name = "data/".$post_data['filename'].".csv";
$data = $post_data['filedata'];
// write the file to disk
file_put_contents($name, $data);
?>
最后,我在这些脚本所在的同一目录中有一个名为“data”的文件夹。您进行了哪些调试?您是否检查过PHP错误日志中的任何错误、警告或通知?如何检查PHP错误日志?通过搜索。。。这看起来很糟糕:
“data/”$post_data['filename']。“.csv”
如果我发布{filename:“../../some_bad_path”}
-希望你正在做一些验证