表單提交

2013-12-06 11:45:39 +08:00
 yeoncc
表單提交到一個php文件,同時在讀取另外一個txt文件,把txt文件里的值讀出來之後,再寫入到另外一個js文件,問題來了,我怎麼把我php文件接收的參數,給寫到這個新的js文件里。
2900 次点击
所在节点    PHP
10 条回复
lijinma
2013-12-06 12:51:36 +08:00
楼主可否把问题描述清楚?

既然要把php文件接收的数据写到这个新的js文件,为什么不直接表单提交的时候直接用js处理?

js处理的时候:

(1)读取txt,生成新的js文件;
(2) js再调用php文件;
yeoncc
2013-12-06 13:15:16 +08:00
@lijinma 恩 txt文件的內容相當於一個模板,每次提交要調用的,比如說像這樣:
1.txt:
(function() {
return function(info, nlog) {
var data = "XXXX";
這是我的txt文件里的一個變量,我想把php接收到的這個參數寫進重新生成的這個js文件里
1.js
(function() {
return function(info, nlog) {
var data = "parameter";
不知道我這樣說夠清楚麼?
rqrq
2013-12-06 13:33:34 +08:00
如果js是单独的文件,那么在html中设置一个js全局变量,类似于这样:
<head>
<script>var data = '<?php echo $data ?>';</script>
<script src="1.js"></script>
</head>
yeoncc
2013-12-06 13:45:55 +08:00
@rqrq 謝謝 貌似找到點感覺了
jarlyyn
2013-12-06 13:49:34 +08:00
怎么会写入js?
bombless
2013-12-06 15:36:52 +08:00
一般不会这么干……这种一般是安全漏洞的来源
腾讯微博也用这种方式,它有许多安全漏洞就在这些地方。
yeoncc
2013-12-06 16:44:47 +08:00
@bombless 能举个例子说明下不?
bombless
2013-12-06 17:58:27 +08:00
@yeoncc http://www.wooyun.org/whitehats/%E5%BF%83%E4%BC%A4%E7%9A%84%E7%98%A6%E5%AD%90
可以看看这个列表,有许多都是在js中间插入字符串
jingwentian
2013-12-06 23:43:38 +08:00
xiang~
Sunyanzi
2013-12-07 06:34:04 +08:00
如果我没理解错的话 ... 大概是这么个意思 ..?

<?php
/***
== example 1.txt ==
(function() {
return function(info, nlog) {
var data = "%PLACEHOLDER%";
*/

file_put_contents( '1.js', str_replace(
'%PLACEHOLDER%',
$_POST['name'],
file_get_contents( 'template.txt' )
) );

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/92047

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX