从javascript调用PHP文件
我有一个调用PHP函数的HTML表单,如下所示:从javascript调用PHP文件,javascript,php,html,Javascript,Php,Html,我有一个调用PHP函数的HTML表单,如下所示: <form action="test.php" method "get"> user data.. user data </form> 因此,我无法找到一种通过HTML直接实现这一点的方法。我从HTML中调用javascript,如下所示: 在myfunction()调用中, 我使用 var=document.getElementById('data')。值 现在,一旦用户输入被解析。我想获取所有表单数据并将其传递到P
<form action="test.php" method "get">
user data..
user data
</form>
因此,我无法找到一种通过HTML直接实现这一点的方法。我从HTML中调用javascript,如下所示:
在myfunction()
调用中,
我使用
var=document.getElementById('data')。值
现在,一旦用户输入被解析。我想获取所有表单数据并将其传递到PHP文件,如:
if var==yes:
action="test1.php" method="get"
if var==no:
action="test2.php" method="get"
我浏览了其他建议Ajax调用的答案。
没有Ajax调用可以完成吗?有两种方法:
使用第二种方法,您只需要一个php文件(test.php),如果
$\u GET['var']==“yes”
,您可以执行操作1,否则操作2可以用php轻松完成
Html:
用户数据。。
用户数据
test.php:
<?php
if (isset($_GET["somefield"]) && $_GET["somefield"] == "yes")){
header("Location:test1.php");
exit;
} else {
header("Location:test2.php");
exit;
}
?>
很抱歉问这个问题,为什么不使用AJAX调用呢?您只需编写以下代码并包括jQuery库:
var req = $.ajax({url:"******.php"});
但是,如果不想使用jQuery,可以将两个PHP类合并为一个类,并对每种情况使用if语句
$a = $_GET['yourVar'];
if ($a = 'yes') {
...
} else { //i suppose that the variable is a yes/no boolean
...
}
请注意,将布尔值传递给PHP类会将其转换为字符串。最简单的方法是在元素上使用on change事件,在本例中是一个下拉菜单 因此,当用户选择Yes时,action属性将是test1.php,如果用户选择No,则表单action属性将是test2.php。因此,当用户单击submit按钮时,它将重定向到指定的URL 希望这有帮助
$(函数(){
$('#myvalue').change(函数(){
var url='test1.php';
if($(this.val()=='No'){
url='test2.php';
}
$('#myform').attr('action',url);
});
});代码>
对
不
test.php
处理这些选择似乎更符合逻辑,而不是处理两个单独的脚本。为什么您的输入有反斜杠?@NewToJS可能是重复的,因为“”用于反引号混合,并且没有突出显示文本方法“get”
您意识到这是失败的,除非你发布的不是你真正的代码。关于方法“get”
的事实,您需要解决这个问题。你犯了和OP一样的错误。并且在每个标题后面添加exit。@Fred ii-谢谢你指出,我甚至没有注意到这是他的html的副本
var req = $.ajax({url:"******.php"});
$a = $_GET['yourVar'];
if ($a = 'yes') {
...
} else { //i suppose that the variable is a yes/no boolean
...
}