2016-10-14 95 views
0

我的html有一个表格单元格,它显示了一个文本文件的内容(由javascript读入),其中包含以前的访问者的名字。这工作完美。Form,external php,refresh

还有一种插入访客姓名的表单。 提交时,启动一个外部php,将新名称添加到文本文件。这也是完美的。

目前的形式始于此:

<form method="post" action="write2txt.php" target="_blank"> 

但我想要的是:提交HTML后应该简单地刷新,以显示更新的访客名单。

+0

有没有可以显示的代码? – darham

+0

你需要使用AJAX。 http://learn.jquery.com/ajax/ – chris85

+0

不,请不要ajax ... – newbieforever

回答

1

(read in by javascript) & no ajax,意思是什么?

提示

  • javscript文件被逮住,记住这一点
  • 为什么不摆在首位
  • 如果表用PHP添加日期和在一个文件中添加的,添加应outputing表
  • 之前,如果你有单独的文件重定向回用header('Location: www.xyz.com');

一压脚提升阅读您的最后一个注释以上,使用:

header('Location: www.xyz.com');

添加更新全自动

+0

我使用以下方法: – newbieforever

+0

我使用以下方法:文本文件以' var string ='...,并将其读入到html文件中。 – newbieforever

+0

尝试'src =“txtfile.txt?id ='.uniqid()。'''',这可以防止浏览器捕捉到你的js文件 – JOUM

1

不要在您的形式使用target="_blank",因为这显示在新窗口中后的结果。更改write2txt.php,以便在写入文件之后,它会将重定向发送回原始页面的URL,而不是生成自己的输出。

<?php 
// code to update file 
header("Location: form.php"); 
exit(); 

这将使浏览器重新加载原始页面,该页面将获取文件的更新内容。

如果你不想使用AJAX,这是你如何去做的一般想法。

+0

好吧,这与PHP文件中的标题(“位置:form.html”)似乎工作,PHP不显示,但我仍然必须刷新HTML'manualy'... – newbieforever

+0

你不应该需要这样做。应该重新加载原始页面,就像当你手动进入页面一样。 – Barmar

+0

不,我必须手动完成。文本文件(@JOUM)的缓存似乎不是原因,我已经使用... src =“txtfile.txt?rando”...其中rando是一个随机数 – newbieforever