Hola, hace unos días hice un post parecido pero estaba bastante desordenado, ahora intentare hacerlo mas ordenando y explicado.
Mi web contiene una tabla la cual contiene un botón que al ser clickeado se ejecuta una función ajax que envía un dato por método post a la misma pagina y luego la actualiza (hasta ahí todo bien). Esta pagina recibe el parámetro y crea una session con dicho parámetro. El Problema es que la pagina jamas recibe el parámetro, he puesto alert's en cada función que interviene en este proceso para encontrar el error, el único alert que se muestra es el que esta adentro del ajax, los demás no aparecen. Lo extraño es que este proceso lo hago en otra pagina y si funciona, la única diferencia es que esa pagina solo recibe un valor por post (por lo tanto una sola session), en cambio esta pagina recibe 2 valores de lugares diferentes.
Boton de envio:
Código PHP:
Ver originalecho " <td class='center'><a onclick='actualizarObra(".$ide=$edit_obras[0].");' data-toggle='modal' style='cursor:pointer;'><img src='img/edit.png' width='20' height='20'></a></td>";
pagina principal (solo lo que interviene en este proceso):
Código HTML:
Ver original<?php
echo '<pre>';
print_r($_POST);
session_start();
$usuario = $_SESSION['usuario'];
if(!isset($usuario)){
header("Location: index.php");
}
if (isset($_POST['ccobra'])){
$_SESSION['ccobra'] = $_POST['ccobra'];
echo "
<script type='text/javascript'>";
echo "alert('entro a session');";
}
if (isset($_POST['codCliente'])){
$_SESSION['codCliente'] = $_POST['codCliente'];
}
include_once('conexion.php');
?>
<script type='text/javascript'> function actualizarObra(ccobra){
$.ajax({
async: false,
type: "POST",
url: "obra.php",
data: {ccobra: ccobra},
success: function(ccobra) {
window.location="obra.php";
}
}).done(function(ccobra){
alert("entro a ajax");
});
}
function mostrarEditFormularioObra(id) {
document.getElementById("editObr").style.display ='block';
document.getElementById("tablas").style.display ='none';
document.getElementById("crearObr").style.display ='none';
alert("entro a edit Form" + id);
}
<?php
if (isset($_SESSION['ccobra'])){
echo "<script type='text/javascript'>";
echo "alert('entro a funcion php');";
echo " mostrarEditFormularioObra(".$_SESSION['ccobra'].");";
}
?>