Beispiel #1
0
    }
    return $toret;
}
//Esta variable contiene la ruta relativa para llegar
// desde la ubicacion del controlador general a la raiz (SitioWEB) de la carpeta
// de la aplicacion
// Ej: /SitioWEB/carpeta2/carpeta3/controlador.php la ruta relativa correspondiente será
// ../../
$RutaRelativaControlador = getRuta();
//Ruta Relativa del ArchivoComun
include_once $RutaRelativaControlador . 'Comun/ArchivoComun.php';
//Cargamos el idioma a utilizar en el controlador
$idioma = CargarIdioma2($RutaRelativaControlador);
try {
    $consulta = $_TABLAMIEMBRO->AlmacenarBD($_POST);
    //Tras haber añadido el usuario a la tabla de usuarios, se añade automaticamente a la relacion usuario-miembro ya que todo usuario que se de
    // de alta en la WEB tendra el rol de miembro
    TablaBD::ConsultaGenerica("Insert into HACE_DE (Login,ROL_nombre) values ('" . $_POST["MA-Login"] . "','" . $ROLMIEMBRO . "')");
    //En caso de test no se realizan redirecciones a ninguna otra pagina
    if (!isset($_COOKIE["TEST"])) {
        header("Location: " . $controladores[$identificadoresPrivados["Miembros"]]);
    }
} catch (Exception $e) {
    //En caso de test no se realizan redirecciones a ninguna otra pagina
    if (!isset($_COOKIE["TEST"])) {
        session_start();
        $errorRescrito = explode("=>", $e->getMessage());
        $_SESSION['error'] = 'ALT ERR U' . "=>" . $errorRescrito[1];
        header("Location: " . $controladores[$identificadoresPrivados["Miembros"]]);
    }
}
//Cargamos el idioma a utilizar en el controlador
$idioma = CargarIdioma2($RutaRelativaControlador);
try {
    //Por POST recibimos el tipo de objeto que es, y en funcion de este valor añadimos unos valores a la tabla de participantes
    // Es un caso especial ya que los datos asociados a esta tabla estan en una Generalizacion Disjunta en la BD y se requiere de
    // codigo adicional para mantener la relacion correcta en la base de datos ("Se podria meter como un procedimiento directamente en la BD
    // pero desde codigo es mas facil realizar futuras modificaciones")
    switch ($_POST["TIPO"]) {
        case "I":
            TablaBD::ConsultaGenerica("Insert into " . $_TABLAPARTICIPANTES->nombreTabla . " Values ('" . $_POST['MP-IDParticipante'] . "', 'Institucion') ");
            break;
        case "G":
            TablaBD::ConsultaGenerica("Insert into " . $_TABLAPARTICIPANTES->nombreTabla . " Values ('" . $_POST['MP-IDParticipante'] . "', 'Grupo') ");
            break;
        case "E":
            TablaBD::ConsultaGenerica("Insert into " . $_TABLAPARTICIPANTES->nombreTabla . " Values ('" . $_POST['MP-IDParticipante'] . "', 'Empresa') ");
            break;
    }
} catch (Exception $e) {
    //En caso de test no se realizan redirecciones a ninguna otra pagina
    if (!isset($_COOKIE["TEST"])) {
        session_start();
        $errorRescrito = explode("=>", $e->getMessage());
        $_SESSION['error'] = 'ID Part REP' . "=>" . $errorRescrito[1];
        header("Location: " . $controladores[$identificadoresPrivados["Colaboraciones"]]);
    }
}
try {
    //Por POST recibimos el tipo de objeto que es, y en funcion de este valor usamos la talba correspondiente
    // para gestionarlo, pasandole directamente los valores recibidos
    //'array_slice($_POST, 1)' elimina el primer campo recibido 'TIPO' ya que es ajeno a los campos de las tablas
Beispiel #3
0
     }
     for ($i = 0; $i < $opciones->num_rows; $i = $i + 1) {
         $dato = $opciones->fetch_assoc();
         if (in_array($dato[array_keys($dato)[0]], $opciones2)) {
             echo '<li class="list-group-item"><input type="checkbox" checked name="' . $campos[0] . '-' . $dato[array_keys($dato)[0]] . '">' . $dato[array_keys($dato)[0]] . ' </input></li>';
         } else {
             echo '<li class="list-group-item"><input type="checkbox" name="' . $campos[0] . '-' . $dato[array_keys($dato)[0]] . '">' . $dato[array_keys($dato)[0]] . ' </input></li>';
         }
     }
     break;
 case "array":
     $opciones = explode("@", explode(":", $campos[3])[1]);
     $opciones2 = array();
     switch (explode(":", $campos[4])[0]) {
         case "sql":
             $consulta = TablaBD::ConsultaGenerica(str_replace("%d", $MOD[$campoClave], explode(":", $campos[4])[1]));
             for ($i = 0; $i < $consulta->num_rows; $i = $i + 1) {
                 $dato = $consulta->fetch_assoc();
                 $opciones2[] = $dato[array_keys($dato)[0]];
             }
             break;
         case "array":
             $opciones2 = explode("@", explode(":", $campos[4])[1]);
             break;
     }
     for ($i = 0; $i < count($opciones); $i = $i + 1) {
         $dato = $opciones[$i];
         if (in_array($dato, $opciones2)) {
             echo '<li class="list-group-item"><input type="checkbox" checked name="' . $campos[0] . '-' . $dato . '">' . $dato . ' </input></li>';
         } else {
             echo '<li class="list-group-item"><input type="checkbox" name="' . $campos[0] . '-' . $dato . '">' . $dato . ' </input></li>';
    //Por POST recibimos el tipo de objeto que es, y en funcion de este valor usamos la talba correspondiente
    // para gestionarlo, pasandole directamente los valores recibidos
    //'array_slice($_POST, 1)' elimina el primer campo recibido 'TIPO' ya que es ajeno a los campos de las tablas
    switch ($_POST["TIPO"]) {
        case "I":
            $consulta = $_TABLAINSTITUCIONES->EliminarRegistro(array_slice($_POST, 1));
            break;
        case "G":
            $consulta = $_TABLAGRUPOS->EliminarRegistro(array_slice($_POST, 1));
            break;
        case "E":
            $consulta = $_TABLAEMPRESAS->EliminarRegistro(array_slice($_POST, 1));
            break;
    }
    //En este caso y teniendo en cuenta la relacion en la base de datos y para mantener la integridad, se borra de la tabla participantes lo que este asociado
    // con el borrado del objeto que se este procesando
    $val = explode("=>", $_POST["OTRO"]);
    TablaBD::ConsultaGenerica("DELETE FROM " . $_TABLAPARTICIPANTES->nombreTabla . " WHERE " . $val[0] . "='" . $val[1] . "'");
    //En caso de test no se realizan redirecciones a ninguna otra pagina
    if (!isset($_COOKIE["TEST"])) {
        header("Location: " . $controladores[$identificadoresPrivados["Colaboraciones"]]);
    }
} catch (Exception $e) {
    //En caso de test no se realizan redirecciones a ninguna otra pagina
    if (!isset($_COOKIE["TEST"])) {
        $errorRescrito = explode("=>", $e->getMessage());
        session_start();
        $_SESSION['error'] = 'ERROR BORRADO C' . "=>" . $errorRescrito[1];
        header("Location: " . $controladores[$identificadoresPrivados["Colaboraciones"]]);
    }
}