Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将输出从php重定向到html?_Php_Jquery_Html_Ajax - Fatal编程技术网

如何将输出从php重定向到html?

如何将输出从php重定向到html?,php,jquery,html,ajax,Php,Jquery,Html,Ajax,如果这是重复的,我提前道歉,但是我搜索了stackoverflow,没有找到关于这个主题的任何内容。在我的base.html中,我有这样一个表单: <form method="post" action="../php/base.php"> <input type="hidden" name="addToDB" value="addToDB" /> <input type="text" id="name" name="name" placeholder="

如果这是重复的,我提前道歉,但是我搜索了stackoverflow,没有找到关于这个主题的任何内容。在我的
base.html
中,我有这样一个表单:

<form method="post" action="../php/base.php">
   <input type="hidden" name="addToDB" value="addToDB" />
   <input type="text" id="name" name="name" placeholder="Enter name">
   <input type="text" id="address" name="address" placeholder="Enter address">
   <button type="submit">Submit</button>
</form>
单击submit按钮时,将打开文件
base.php
,并显示一个表。相反,我希望执行
base.php
中的脚本,并将输出发送回
base.html
,它将显示在那里(content div中的某个地方)

  • 我知道我可能需要使用AJAX,但我不知道如何调用外部PHP文件中的特定函数并将其返回值(可能是一个包含HTML标记的字符串,用于构造
    )重定向回HTML文件(
    base.HTML
  • 我使用SQLite进行数据存储;数据库是使用
    create_tables()创建的
  • 我是一名PHP新手,如有任何意见/建议,将不胜感激

谢谢

您可以按如下方式更改base.html文件:

<form method="post" action="../php/base.php" id="formid" onsubmit='return false;'>
       <input type="hidden" name="addToDB" value="addToDB" />
       <input type="text" id="name" name="name" placeholder="Enter name">
       <input type="text" id="address" name="address" placeholder="Enter address">
       <button type="submit" id="submit">Submit</button>
 </form>
 <div id="display"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#submit").on("click",function(e){
        e.preventDefault();
        var formdata=$("#formid").serialize();
        var url=$("#formid").attr("action");

        $.post(url,formdata,function(data){
         $("#display").html(data);   
        },'json');

    });

});
</script>

提交
$(文档).ready(函数(){
$(“#提交”)。在(“单击”)上,功能(e){
e、 预防默认值();
var formdata=$(“#formid”).serialize();
var url=$(“#formid”).attr(“操作”);
$.post(url、formdata、函数(数据){
$(“#显示”).html(数据);
}“json”);
});
});

它可能会对您有所帮助。

您可以按如下方式更改base.html文件:

<form method="post" action="../php/base.php" id="formid" onsubmit='return false;'>
       <input type="hidden" name="addToDB" value="addToDB" />
       <input type="text" id="name" name="name" placeholder="Enter name">
       <input type="text" id="address" name="address" placeholder="Enter address">
       <button type="submit" id="submit">Submit</button>
 </form>
 <div id="display"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#submit").on("click",function(e){
        e.preventDefault();
        var formdata=$("#formid").serialize();
        var url=$("#formid").attr("action");

        $.post(url,formdata,function(data){
         $("#display").html(data);   
        },'json');

    });

});
</script>

提交
$(文档).ready(函数(){
$(“#提交”)。在(“单击”)上,功能(e){
e、 预防默认值();
var formdata=$(“#formid”).serialize();
var url=$(“#formid”).attr(“操作”);
$.post(url、formdata、函数(数据){
$(“#显示”).html(数据);
}“json”);
});
});

它可能会对您有所帮助。

您可以使用HTML、jQuery AJAX和PHP尝试以下操作:

HTML:

<form method="post"  id="formid">
   <input type="hidden" name="addToDB" value="addToDB" />
   <input type="text" id="name" name="name" placeholder="Enter name">
   <input type="text" id="address" name="address" placeholder="Enter address">
   <!-- take simple button -->
   <button type="button" id="submit">Submit</button>
</form>
    <div id="response"></div> 
<script type="text/javascript">
  $(document).ready(function(){
      //on click of submit button
      $("#submit").click(function(){
          $.ajax({
              url:"../php/base.php",
                  data:{
                          addToDB:"addToDB",
                          name:$("#name").val(),
                          address:$("#address").val()
                       },
                          type:"POST",
                          success:function(res){
                          $("#response").html(res);
                       }
             });
       });
 });
</script>

提交
JavaScript:

<form method="post"  id="formid">
   <input type="hidden" name="addToDB" value="addToDB" />
   <input type="text" id="name" name="name" placeholder="Enter name">
   <input type="text" id="address" name="address" placeholder="Enter address">
   <!-- take simple button -->
   <button type="button" id="submit">Submit</button>
</form>
    <div id="response"></div> 
<script type="text/javascript">
  $(document).ready(function(){
      //on click of submit button
      $("#submit").click(function(){
          $.ajax({
              url:"../php/base.php",
                  data:{
                          addToDB:"addToDB",
                          name:$("#name").val(),
                          address:$("#address").val()
                       },
                          type:"POST",
                          success:function(res){
                          $("#response").html(res);
                       }
             });
       });
 });
</script>

$(文档).ready(函数(){
//单击“提交”按钮
$(“#提交”)。单击(函数(){
$.ajax({
url:“../php/base.php”,
数据:{
addToDB:“addToDB”,
名称:$(“#名称”).val(),
地址:$(“#地址”).val()
},
类型:“POST”,
成功:功能(res){
$(“#回复”).html(res);
}
});
});
});

不会对您的PHP进行任何更改。祝您好运。

您可以使用HTML、jQuery AJAX和PHP尝试以下操作:

I want the ... output sent back to the base.html
HTML:

<form method="post"  id="formid">
   <input type="hidden" name="addToDB" value="addToDB" />
   <input type="text" id="name" name="name" placeholder="Enter name">
   <input type="text" id="address" name="address" placeholder="Enter address">
   <!-- take simple button -->
   <button type="button" id="submit">Submit</button>
</form>
    <div id="response"></div> 
<script type="text/javascript">
  $(document).ready(function(){
      //on click of submit button
      $("#submit").click(function(){
          $.ajax({
              url:"../php/base.php",
                  data:{
                          addToDB:"addToDB",
                          name:$("#name").val(),
                          address:$("#address").val()
                       },
                          type:"POST",
                          success:function(res){
                          $("#response").html(res);
                       }
             });
       });
 });
</script>

提交
JavaScript:

<form method="post"  id="formid">
   <input type="hidden" name="addToDB" value="addToDB" />
   <input type="text" id="name" name="name" placeholder="Enter name">
   <input type="text" id="address" name="address" placeholder="Enter address">
   <!-- take simple button -->
   <button type="button" id="submit">Submit</button>
</form>
    <div id="response"></div> 
<script type="text/javascript">
  $(document).ready(function(){
      //on click of submit button
      $("#submit").click(function(){
          $.ajax({
              url:"../php/base.php",
                  data:{
                          addToDB:"addToDB",
                          name:$("#name").val(),
                          address:$("#address").val()
                       },
                          type:"POST",
                          success:function(res){
                          $("#response").html(res);
                       }
             });
       });
 });
</script>

$(文档).ready(函数(){
//单击“提交”按钮
$(“#提交”)。单击(函数(){
$.ajax({
url:“../php/base.php”,
数据:{
addToDB:“addToDB”,
名称:$(“#名称”).val(),
地址:$(“#地址”).val()
},
类型:“POST”,
成功:功能(res){
$(“#回复”).html(res);
}
});
});
});
不会对您的PHP进行任何更改。祝你好运

I want the ... output sent back to the base.html
那你为什么不在里面处理呢。

form.php


那你为什么不在里面处理呢。

form.php


不太清楚原因,但这仍然让我想到base.php。我是否应该首先在jQuery函数中阻止刷新?如果您捕获变量中的输出,并让函数返回该输出,而不是使用print,那么这种情况可能会起作用。请详细说明一下?我使用了以下命令:
$output=“NameAge”;$query=$db->query('SELECT*FROM Products');foreach($queryas$row){$output.=''.$row['P_Name']。;$output.=''.$row['P_Category']。;}$output.='';返回$output但是我得到了一个空的base.php…@Alex:changed@Alex:I已经更新了我的答案。请尝试一下它是否适合您。不太清楚为什么,但这仍然让我想到base.php。我是否应该首先在jQuery函数中阻止刷新?如果您捕获变量中的输出,并让函数返回该输出,而不是使用print,那么这种情况可能会起作用。请详细说明一下?我使用了以下命令:
$output=“NameAge”;$query=$db->query('SELECT*FROM Products');foreach($queryas$row){$output.=''.$row['P_Name']。;$output.=''.$row['P_Category']。;}$output.='';返回$output但是我得到了一个空的base.php…@Alex:changed@Alex:I已经更新了我的答案。请试试看它是否适合你。