2015-07-21 137 views
-3

我有一个php文件,当我点击一个按钮时,我想执行它。我一直在使用下面的代码来实现相同的:点击按钮运行PHP脚本?

<form action="test.php" method="post"> 
    <input type="submit" value="Run Script" name="submit"> 
</form> 

代码似乎带我去test.php的文件,但我希望被重定向回到我所在的页面。点击一个按钮就可以运行这个test.php而不会被重定向?就像在后台运行脚本一样?

请让我知道,如果你们需要进一步澄清。 任何帮助将不胜感激。

在此先感谢你们!

+3

你需要谷歌:Ajax –

回答

0

在你的底部PHP文件

header('Location: lastPage.php'); 

或使用ajax做一些技巧。

1

您需要做一个ajax call并防止表单提交。

HTML:

<form onsubmit="return doAxajCall();"> </form> 

JS代码:

function doAjaxCall(){ 
    //do ajax call however you want 
    return false; //prevents the form from submitting 
} 
+0

林不知道,如何做一个AJAX调用。你能帮忙吗? –

2

,你将需要使用AJAX

<script> 
function doTheFunction(){ 
    xmlhttp = new XMLHttpRequest(); 
    xmlhttp.open("GET","URL_OF_PHP_FILE",true); 
    xmlhttp.send(); 
} 
</script> 



    <button onclick"doTheFunction();">Run the script</button> 
+0

我试过这段代码,但似乎没有发生? –

+0

你用php文件处理它吗? “URL_OF_PHP_FILE”应该包含处理$ _GET请求 –

+0

的东西,或者您可以编辑它来处理$ _POST,而不是编辑从GET到POST的xmlhttp.open并将数据处理为$ _POST –

0

代码:

<!-- including jquery.min.js cdn --> 
<script src="http://code.jquery.com/jquery-2.1.4.min.js"></script> 

<input type="submit" value="Run Script" id="submit" name="submit" /> 

<!-- now set ajax call for button --> 
<script> 
    $("#submit").click(function(){ 
     $.ajax({ 
     url:'test.php', 
     type:'POST', 
     success:function(response){ 
      alert('test.php file executed'); 
     } 
     }); 
    }); 

</script> 
1

简单的方法;

让你的形式“自我”的行为像这样;

<form action="#" method="post"> 
    <input type="submit" name="submit" value="Do PHP"> 
</form> 

然后测试页面顶部提交这样;

if (isset($_POST['submit'])) { 

    // do stuff 

} 

您的实例'test.php'必须包含在原始文件中。