tieneAcceso() || !$objSesion->puedeEditar()){ header("Location: ".$pag."?error=2"); exit(); } unset($objValida); try { $pdo->beginTransaction(); if(!isset($_POST["id"]) || !isset($_POST["curp"]) || !isset($_POST["cambioEdo"]) || !isset($_POST["plan"], $_POST["ingreso"]) || !isset($_POST["claveOld"], $_POST["clave"])){ header("Location:".$pag."?error=0"); exit(); } $usr_id = filter_input(INPUT_POST, "id", FILTER_SANITIZE_NUMBER_INT);//limpia texto $curp = mb_strtoupper(trim(filter_input(INPUT_POST, "curp", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW))));//limpia texto $comentario = trim(filter_input(INPUT_POST, "comentarioOld", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW)));//limpia texto $cambioEdo = filter_input(INPUT_POST, "cambioEdo", FILTER_SANITIZE_NUMBER_INT);//limpia texto $edo_old = filter_input(INPUT_POST, "edoOld", FILTER_SANITIZE_NUMBER_INT);//limpia texto $edo_new = filter_input(INPUT_POST, "edoNew", FILTER_SANITIZE_NUMBER_INT);//limpia texto $clave_old = filter_input(INPUT_POST, "claveOld", FILTER_SANITIZE_NUMBER_INT);//limpia texto $clave_new = filter_input(INPUT_POST, "clave", FILTER_SANITIZE_NUMBER_INT);//limpia texto $plan = filter_input(INPUT_POST, "plan", FILTER_SANITIZE_NUMBER_INT);//limpia texto $ingreso = fechaGuion(trim(filter_input(INPUT_POST, "ingreso", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW))));//limpia texto $gen = fechaGuion(trim(filter_input(INPUT_POST, "generacion", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW))));//limpia texto //Plan de estudios actual $nivel_old = 0; $stmt = $pdo->prepare('Select * from fs_alumno_planestudio(:usr_id, :clave)'); $stmt->bindParam(":usr_id", $usr_id); $stmt->bindParam(":clave", $clave_old); if(!$stmt->execute()){ $pdo->rollBack(); //print_r($stmt->errorInfo()); header("Location:".$pag."?error=2"); exit(); }else{ $rs = $stmt->fetch(); $nivel_old = $rs["Nivel_id"]; unset($rs); } $stmt->closeCursor(); //---- Actualiza carreras ---- $error = false; $stmt = $pdo->prepare('Select * from fi_alumno_planestudio(:id, :plan, :claveulsa, :fechai, :edo, NULL, :gen)'); $stmt->bindParam(":id", $usr_id); $stmt->bindParam(":plan", $plan); $stmt->bindParam(":claveulsa", $clave_new); $stmt->bindParam(":fechai", $ingreso); $stmt->bindParam(":edo", $edo_new); $stmt->bindParam(":gen", $gen); if(!$stmt->execute()){ $pdo->rollBack(); //print_r($stmt->errorInfo()); header("Location:".$pag."?error=7"); exit(); } $stmt->closeCursor(); //---- Cambia estado de carrera anterior if(intval($cambioEdo) == 1){ $stmt = $pdo->prepare('Select * from fu_alumnosubestado(:id, :edo, :com, :fecha)'); $stmt->bindParam(":id", $clave_old); $stmt->bindParam(":edo", $edo_old); $stmt->bindParam(":com", $comentario); $stmt->bindParam(":fecha", $ingreso); if(!$stmt->execute()){ $pdo->rollBack(); print_r($stmt->errorInfo()); //header("Location:".$pag."?error=4"); exit(); } $stmt->closeCursor(); } //Plan de estudios nuevo $nivel_new = 0; $stmt = $pdo->prepare('Select * from fs_alumno_planestudio(:usr_id, :clave)'); $stmt->bindParam(":usr_id", $usr_id); $stmt->bindParam(":clave", $clave_new); if(!$stmt->execute()){ $pdo->rollBack(); //print_r($stmt->errorInfo()); header("Location:".$pag."?error=2"); exit(); }else{ $rs = $stmt->fetch(); $nivel_new = $rs["Nivel_id"]; unset($rs); } $stmt->closeCursor(); //---- Inserta cambio echo $nivel_new ."==". $nivel_old; if($nivel_new == $nivel_old){ $stmt = $pdo->prepare('Select * from fi_carrera_cambio(:clave_orig, :clave_dest)'); $stmt->bindParam(":clave_orig", $clave_old); $stmt->bindParam(":clave_dest", $clave_new); if(!$stmt->execute()){ $pdo->rollBack(); //echo "fi_carrera_cambio
"; //print_r($stmt->errorInfo()); header("Location:".$pag."?error=6"); exit(); } $stmt->closeCursor(); } $log = new LogActividad(); $desc_log = "Actualiza carrera alumno ID[".$usr_id."] Clave Orig[".$clave_old."] Clave Dest[".$clave_new."] Plan[".$plan."] CURP[".$curp."]"; $log->appendLog($_SESSION["usuario_id"], $_SESSION["usuario_nombre"]." ".$_SESSION["usuario_apellidos"], $desc_log); $pdo->commit(); $stmt = null; // cierra conexion header("Location: ".$pag."?ok=1"); } catch(PDOException $e) { $pdo->rollBack(); header("Location:".$pag."?error=1"); } ?>