首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Ajax将变量发布到另一个PHP文件

使用Ajax将变量发布到另一个PHP文件
EN

Stack Overflow用户
提问于 2018-05-31 18:11:09
回答 4查看 94关注 0票数 0

好吧,这是我的问题。因此,我有一个表,使用PHP和SQL显示一些数据,如下所示:

然后,正如我在那张图片中所示,我想单击该按钮,获取ID值,然后执行另一个SQL语句,并在我拥有的另一个PHP文件中显示另一个表。

我的问题是,正如它提到的here,你不能真的使用AJAX发送它,然后重定向。我是AJAX和JavaScript的新手……

当然,我知道其他方法,比如<form>和它的submit元素,但是我已经有一个<form>,用于显示表的行,并接收新的数据输入。因此,如果我使用form,我将不得不嵌套它们,这是不起作用的。

我试着这样做:

表文件(其中包含要发送的id )

代码语言:javascript
复制
<script>
      function openCateg(id) {
        $.ajax({
            data: {variable: id},
            url: 'categoriasSentenciasAJAX.php',
            type: "POST",
            success: function(data) {
              alert(data);
            }
        });
        //window.location = "categoriasSentenciasAJAX.php";
      }
    </script>

categoriasSentenciasAJAX.php (我想在这里接收数据)

代码语言:javascript
复制
 $q = $_POST['variable'];

我也尝试了GET方法,只是调用:

代码语言:javascript
复制
window.location = "categoriasSentenciasAJAX.php?variable=" + id;

代码语言:javascript
复制
 $q = $_GET['variable'];

实际上,它确实起作用了,但当我重新加载站点时,它不会导致变量变为空。

PHP (由语句生成,这是一个基本的SELECT

代码语言:javascript
复制
<form method="post" onsubmit="return confirm('¿Desea actualizar los datos?')">
        <table class="w3-table w3-striped w3-bordered" id ="table" width="70%" border="1px">
          <thead>
            <tr class="w3-theme">
                <th>IDEmpresa</th>
                <th>Usuario</th>
                <th>Nombre*</th>
                <th>Direccion*</th>
                <th>Ambito*</th>
                <th>Color*</th>
                <th>Categoria</th>
            </tr>
          </thead>

          <tbody>
            <?php
            foreach ($row as $key => $row) {
                ?>
                <tr class="w3-white">
                    <td><input type="text" class="w3-input" readonly="readonly" name="idE[]" value="<?php echo $row["idEmpresa"]?>" required/></td>
                    <td><input type="text" class="w3-input" readonly="readonly" name="idU[]" value="<?php echo $row["Usuario"] ?>" required /></td>
                    <td><input type="text" class="w3-input" name="nombre[]" value="<?php echo $row["Nombre"] ?>" required /></td>
                    <td><input type="text" class="w3-input" name="direccion[]" value="<?php echo $row["Direccion"] ?>" required /></td>
                    <td><input type="text" class="w3-input" name="ambito[]" value="<?php echo $row["Ambito"] ?>" required /></td>
                    <td><input type="color" class="w3-input-color" name="color[]" value="<?php echo rgb2hex2rgb($row["Color"]) ?>" /></td>
                    <td >
                      <button id="cat" type="button" name="button[]" class="w3-btn w3-dark-grey w3-hover-light-grey" onclick="openCateg(<?php echo $row["idEmpresa"]?>);">Categorias</button>
                    </td>
                </tr>
                <?php
            }
            ?>
          </tbody>
        </table>
      </div>
    </div>
        <br>
        <div class="w3-center">
          <div class="w3-padding-32">
            <input type="submit" class="w3-btn w3-xlarge w3-dark-grey w3-hover-light-grey" value="Actualizar Empresas" name="update">
          </div>
        </div>
    </form>

因此,总而言之,我只想单击图片中显示按钮,获取id并使用它将其发送到另一个文件,在该文件中我将调用SQL语句来显示另一个表。我想重定向到新的php文件,如果可能的话。

我只想将变量发送到另一个php文件,而不会在我按下浏览器的刷新按钮时消失。

请原谅我糟糕的英语。

提前感谢!

EN

回答 4

Stack Overflow用户

发布于 2018-05-31 18:27:47

如果您的值在刷新时变为null,则尝试将您要传递的值设置为默认值。

代码语言:javascript
复制
document.getElementById("button_id").defaultValue = id;
票数 0
EN

Stack Overflow用户

发布于 2018-05-31 18:42:16

为什么你希望它被重定向?发布你的价值并获得响应,成功后你可以做任何你想做的事情。

代码语言:javascript
复制
function OpenCateg(id)
{
variable = id;
$.ajax({
type: "POST",
url: "categoriasSentenciasAJAX.php?variable="+id,
success: function(data){
window.location = "categoriasSentenciasAJAX.php";

},
error: function(data){ alert('Error occured'); }});}
票数 0
EN

Stack Overflow用户

发布于 2018-05-31 19:28:10

试试这个:

代码语言:javascript
复制
 function openCateg(id){
     window.location.assign('categoriasSentenciasAJAX.php?id='+id);
 }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50621812

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档