如何创建新的 .html 网页 onclick?
How do I create a new .html webpage onclick?
我想做的是当用户单击我的 html 按钮时我想在服务器上动态创建一个新网页。我需要新网页的url有自己的url,也就是要互不相同
更详细:当用户单击按钮时,我想将新的 .html 文件上传到服务器。因此,例如,如果我有一个名为 www.check.com/index.html 的网站,当用户单击 index.html 中的按钮时,我需要创建一个新的 .html 包含一些 html 行(但没有 CSS,页面上不会显示任何内容)。因此,当用户单击按钮时,我希望将具有唯一 url 的文件上传到服务器,例如 www.check/1.html,第二次它将被检查。com/2.html 等等。我可以接受 1.html、2.html 等等。
Javascript代码:
function makePage(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200)
alert("webpage " + xmlhttp.responseText + " was successfully created!");
}
var content = "<html><head></head><body><meta name=\"twitter:card\" content=\"summary_large_image\"><meta name=\"twitter:site\" content=\"@nytimes\"><meta name=\"twitter:creator\" content=\"@SarahMaslinNir\"><meta name=\"twitter:title\" content=\"Parade of Fans for Houston’s Funeral\"><meta name=\"twitter:description\" content=\"Blah Blah Blah content.\"><meta name=\"twitter:image\" content=\"\"><script>document.getElementById(\"imgTweet\").innerHTML.write(img);</script></body></html>";
xmlhttp.open("GET","makePage.php?content=" + content,true);
xmlhttp.send();}
'img' 是我的不同页面中的一个变量。代码创建的网页未执行。
您必须使用 AJAX to execute php. Creating new file in php is really simple with file_put_contents()。
这里有一个例子:
makePage.html:
<html>
<body>
<button onclick="makePage()">click</button>
<script src="makePage.js">
</script>
</body>
</html>
makePage.php:
<?php
$content = $_GET["content"];
$file = uniqid() . ".html";
file_put_contents($file, $content);
echo $file;
?>
makePage.js
function makePage(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200)
alert("webpage " + xmlhttp.responseText + " was successfully created!");
}
var content = "<html><head><meta charset=\"utf-8\" /> </head><body>new website<script>alert(\"test\")</script></body></html>";
xmlhttp.open("GET","makePage.php?content=" + content,true);
xmlhttp.send();
}
希望这会有所帮助
我想做的是当用户单击我的 html 按钮时我想在服务器上动态创建一个新网页。我需要新网页的url有自己的url,也就是要互不相同
更详细:当用户单击按钮时,我想将新的 .html 文件上传到服务器。因此,例如,如果我有一个名为 www.check.com/index.html 的网站,当用户单击 index.html 中的按钮时,我需要创建一个新的 .html 包含一些 html 行(但没有 CSS,页面上不会显示任何内容)。因此,当用户单击按钮时,我希望将具有唯一 url 的文件上传到服务器,例如 www.check/1.html,第二次它将被检查。com/2.html 等等。我可以接受 1.html、2.html 等等。
Javascript代码:
function makePage(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200)
alert("webpage " + xmlhttp.responseText + " was successfully created!");
}
var content = "<html><head></head><body><meta name=\"twitter:card\" content=\"summary_large_image\"><meta name=\"twitter:site\" content=\"@nytimes\"><meta name=\"twitter:creator\" content=\"@SarahMaslinNir\"><meta name=\"twitter:title\" content=\"Parade of Fans for Houston’s Funeral\"><meta name=\"twitter:description\" content=\"Blah Blah Blah content.\"><meta name=\"twitter:image\" content=\"\"><script>document.getElementById(\"imgTweet\").innerHTML.write(img);</script></body></html>";
xmlhttp.open("GET","makePage.php?content=" + content,true);
xmlhttp.send();}
'img' 是我的不同页面中的一个变量。代码创建的网页未执行。
您必须使用 AJAX to execute php. Creating new file in php is really simple with file_put_contents()。
这里有一个例子:
makePage.html:
<html>
<body>
<button onclick="makePage()">click</button>
<script src="makePage.js">
</script>
</body>
</html>
makePage.php:
<?php
$content = $_GET["content"];
$file = uniqid() . ".html";
file_put_contents($file, $content);
echo $file;
?>
makePage.js
function makePage(){
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200)
alert("webpage " + xmlhttp.responseText + " was successfully created!");
}
var content = "<html><head><meta charset=\"utf-8\" /> </head><body>new website<script>alert(\"test\")</script></body></html>";
xmlhttp.open("GET","makePage.php?content=" + content,true);
xmlhttp.send();
}
希望这会有所帮助