PHP javascript 逻辑错误中的 fopen()
PHP fopen() inside javascript logic bug
我想创建一个窃取到本地主机目录的文本文件。
下面是我的代码。
低于app.php
document.getElementById("save_button").addEventListener("click", function() {
var content = document.getElementById("final_span").value();
var file_name =document.getElementById("filename").value();
<?php
$fn = strstr($file_name,'.', true);
$dir = "../project/Record";
$file = fopen($dir."/".$fn.".txt","w+");
fwrite($file, $content);
fclose($file);
?>
});
</script>```
您的 js 将在浏览器中执行,php 是服务器端语言。你不能像你那样控制js内部的php。您可以通过 ajax 从您的 js 调用 php 文件并创建一个文件来实现。
<script> document.getElementById("save_button").addEventListener("click", function() {
var content = document.getElementById("final_span").value;
var file_name =document.getElementById("filename").value;
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txtHint").innerHTML = this.responseText;
}
};
xmlhttp.open("GET", "app.php?file_name=" + file_name, true);
xmlhttp.send();
</script>
app.php
<?php $file_name= $_GET['file_name'];
$fn = strstr($file_name,'.', true);
$dir = "../project/Record";
$file = fopen($dir."/".$fn.".txt","w+");
fwrite($file, $content);
fclose($file);
?>
我想创建一个窃取到本地主机目录的文本文件。 下面是我的代码。
低于app.php
document.getElementById("save_button").addEventListener("click", function() {
var content = document.getElementById("final_span").value();
var file_name =document.getElementById("filename").value();
<?php
$fn = strstr($file_name,'.', true);
$dir = "../project/Record";
$file = fopen($dir."/".$fn.".txt","w+");
fwrite($file, $content);
fclose($file);
?>
});
</script>```
您的 js 将在浏览器中执行,php 是服务器端语言。你不能像你那样控制js内部的php。您可以通过 ajax 从您的 js 调用 php 文件并创建一个文件来实现。
<script> document.getElementById("save_button").addEventListener("click", function() {
var content = document.getElementById("final_span").value;
var file_name =document.getElementById("filename").value;
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txtHint").innerHTML = this.responseText;
}
};
xmlhttp.open("GET", "app.php?file_name=" + file_name, true);
xmlhttp.send();
</script>
app.php
<?php $file_name= $_GET['file_name'];
$fn = strstr($file_name,'.', true);
$dir = "../project/Record";
$file = fopen($dir."/".$fn.".txt","w+");
fwrite($file, $content);
fclose($file);
?>