重定向到页面

时间:2017-06-14 14:56:32

标签: javascript php jquery html

我是网络开发的新手,我无法在任何地方找到问题的答案。我有一个元素列表,当你点击其中一个元素时,弹出窗口会显示一个元素。当你点击提交按钮时,它会将$ _POST设置为“modificarPlato.php”,因为我想留在第一页,我添加了标题(“Location:pedido.php”);在PHP的末尾,所以它返回到主页。但是当它重定向到pedido.php时,任何对它都不起作用。这意味着当我点击元素时,弹出窗口没有显示出来。

为了简化它,我做了一个简单的函数,在bodyLoad()上填充h2,但这也不起作用。

我有以下pedido.php页面(我省略了一些代码因为不相关):

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sin título</title>
<script language="JavaScript" type="text/javascript" src="/js/jquery-1.2.6.min.js"></script>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<link href="css/web.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
</head>
<h2 id="prueba" ></h2>
<body onLoad="fill()">
    <ul>
    <?php
        $_SESSION["arrayFilas"] = array();
        while( $row = sqlsrv_fetch_array( $_SESSION['results'], SQLSRV_FETCH_ASSOC ) ){
            $str=preg_replace('/\s+/', '', $row['nombre']);
            if (strcmp($row['imageUrl'],"") != 0) $aux = $row['imageUrl'];
            else $aux = "http://www.51allout.co.uk/wp-content/uploads/2012/02/Image-not-found.gif";
            echo "<li style='background-image: url(".$aux.")'> 
                <a id='".$str."' class='edit' href='#test' data-rel='popup' onClick='rellenarFormulario(this)'> </a>
                 <div id='textobanner'>
                    <h2 id='textobannerreal' style='color:white'>".$row['nombre']."</h2>
                </div></li>"; 
            array_push($_SESSION["arrayFilas"], $row);
            $_SESSION['nombre'] = $row['nombre'];
        }

    ?>
        <li  style="background-image: url(https://www.iconexperience.com/_img/o_collection_png/green_dark_grey/512x512/plain/add.png)">
        <a id="addButton" href='#test' data-rel="popup" onClick="formularioAdd()"></a>
        </li>
    </ul>

    <div data-role="popup" data-history=false id="test"  class="ui-content" style="min-width:250px;">
      <form  id="formulario" action="insertarNuevo.php" method="POST">
                <h2 id="pruebados"></h2>
              <input type="text" id="nombrePlato" name="nombrePlato" value="" placeholder="Introduce aquí el nombre del plato" size="50">
              <br>
              <br>
              <!--Preguntas de radio --> 
              <input type="hidden" id="hiddenId" name="hiddenId">
              <b>Elige el tipo de plato</b><br>
              <input type="radio" name="pregunta" id="radioPri" value="Respuesta1">
              Primero<br>
              <input type="radio" name="pregunta" id="radioSeg"value="Respuesta2">
              Segundo<br>
              <input type="radio" name="pregunta" id="radioTer"value="Respuesta3">
              Postre<br>
              <br>
              <b>Descripción del plato:</b><br>
              <!--TEXTAREA-->
              <textarea id="descripcion" name="descripcion" cols="25" rows="6"></textarea>
              <br>
              <br>
              <br>
              <b>Ingredientes:</b><br>
              <!--TEXTAREA-->
              <textarea id="ingredientes" name="ingredientes" value="" cols="25" rows="6"></textarea>
              <br>
              <!--SELECT--> 
              <b>Precio</b><br>
              <input type="text" id="precio" name="precio" placeholder="Introduce aquí el precio del plato" size="50">
              <br>
              <br>
              <b>Imagen</b><br>
              <input type="text" id="imagen" name="imagen" placeholder="Introduce aquí la url de la imagen" size="50">
              <br>
              <br>
              <button type="submit" id="botonEnvio" name="botonEnvio" value="submit"></button>
            </form>
    </div>

   </body>
   </html>
<script type="text/javascript">
    function fill(){
        document.getElementById("prueba").innerHTML="se ha abierto el popup";
    }
</script>

表单调用modificarPlato.php,它更新db:

上的数据
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sin título</title>
</head>

<body>

     <?php
                /* CODE TO CONNECT TO THE DB*/

                header("Location: pedido.php");
                exit;

    ?>
</body>
</html>

如果您有任何其他信息可能需要,请告诉我,并对我的英语技能感到抱歉。提前致谢

1 个答案:

答案 0 :(得分:0)

我发现有几个问题,至少是你的示例代码:

  • 首先,您在函数中定义了不同的名称,以及在正文onLoad处理程序(rellenarfill中调用它的位置})。

  • 此外,您不应在结束<script>标记后声明</html>部分。将其放在结束</body>标记之前。

  • <h2>标记应位于开始<body>标记之后,而不是之前。

  • 我也看到你包含两个不同版本的 jQuery ,这只会导致问题。