我有一个字符串,通过Javascript获得(一个div的内容!);
我想写这个字符串到PHP,因为我想要一个文本文件与这个内容!
这样做的最好方法是什么?Javascript和PHP ::怎么办?
编辑[1]:方法后不工作,因为我有“<”字符,并删除他们(我不知道为什么)... 例如:我有#include <stdio.h>
当我打电话echo $ _REQUEST只显示#include
...
我有一个字符串,通过Javascript获得(一个div的内容!);
我想写这个字符串到PHP,因为我想要一个文本文件与这个内容!
这样做的最好方法是什么?Javascript和PHP ::怎么办?
编辑[1]:方法后不工作,因为我有“<”字符,并删除他们(我不知道为什么)... 例如:我有#include <stdio.h>
当我打电话echo $ _REQUEST只显示#include
...
将字符串发送到服务器,最简单的方法是将值添加到页面上的表单并提交它,但您可以通过提交值AJAX如果你喜欢...这里是一个简单的例子。
<div id="mydiv">Hello World</div>
<form method="post" action="myphppage.php" id="myform">
<textarea name="mytext" id="mytext"></textarea><br>
<input type="submit" value="Create File">
</form>
<script type="text/javascript">
document.getElementById("mytext").value = document.getElementById("mydiv").innerHTML();
document.getElementById("myform").submit();
</script>
你可以通过URL字符串文本传递到PHP文件 将处理它。
有很多方法来实现这一目标,一个很简单,可能是:
var text = "some";
var url = "http://myserver/webapp/file.php?content=" + text;
location.href = url;
或形式或使用Ajax等等...
不要忘了URL转义数据。 – icktoofay 2010-08-12 04:45:01
对于JavaScript部分,我建议使用jQuery.ajax。例如,当点击一个按钮时,可以触发它。
$.ajax({
type: "POST",
url: "process_ajax_div.php",
data: { divHTML: $('#yourdiv').html() },
success: function(){ alert('done!'); },
error: function(){ alert('error!'); }
});
对于PHP的一部分(文件process_ajax_div.php),你可以做这样的事情:
<?php
$divHTML = $_POST['divHTML'];
// now do whatever you want with $divHTML
?>
请,更具体 – Richard 2010-08-11 21:12:58
的#include在PHP? –
jvenema
2010-08-11 21:50:42
它没有显示'<'字符,因为您的浏览器认为它们是标签。尝试使用'echo htmlspecialchars($ _ REQUEST);'而不是使用'header('Content-type:text/plain');'在你回应任何内容之前。然后你会看到'<'字符实际上在那里。如果你尝试写入一个文件(没有'htmlspecialchars'),它会起作用。 – qmega 2010-08-12 02:50:58