Programación Web y Scripting > JavaScript

 Eliminar tipo hotmail con checks usando mvc y java script..

(1/2) > >>

dquispe:
Hola.. haber si me pueden dar una mano.
Mira tengo dos funciones en java script.
En la cual pretendo eliminar mediante check el registro seleccionado.


Pero cuando le doy eliminar pues no m hace nada.

Pero si detecta si eh seleccionado un check o no pareciera que no atrapara el valor.

Mira primero te voy a mostrar como elimino elementos sin utilizar check..

Esta metodo esta hecho en mvc.



controler..

Si encuentro data pues la muestro $lista usuarios.. contiene la data ps esta grabada en una sesion.

if(isset($lista_usuarios[$i]["nomusu"])){ ?>
<td align="center" valign="middle"><div align="center"></div></td>
<tr><td height="32">
<div align="center">
<input type="checkbox" name="checkbox" value="checkbox<?=$codigo?>" id="checkbox<?=$codigo?>" /> //Este es el check aqui pretendo que elimine
</div>
<div class="pintar"> </div></td>
<td align="center" valign="middle">
<span class="tablaDato">
<?=$lista_usuarios[$i]["nomusu"]?>
</span>
<div align="left">
<div align="left"></div></td>
<td class="tablaDato"><?=$lista_usuarios[$i]["apeusu"]?></td>
<td class="tablaDato"><?=$lista_usuarios[$i]["dir_user"]?></td>
<td class="tablaDato"><?=$lista_usuarios[$i]["dni_user"]?></td>
<td class="tablaDato"><?=$lista_usuarios[$i]["tel_user"]?></td>
<td class="tablaDato"><?=$lista_usuarios[$i]["loginusu"]?></td>
<? $codigo=$lista_usuarios[$i]["nomusu"]; ?>

//atrapo el codigo para saber que registro voy a eliminar hago la pregunta confirmacion


<td align="center" valign="middle"><a href="../controler/usuarios_controler.php?accion=del&codi=<?=$lista_u suarios[$i]["nomusu"] ?>" onClick="return confirm('Seguro deseas Eliminar el Registro? <?=$codigo?>')"><img src=../imagenes/b_drop.png" width="16" height="16" alt="Eliminar" border="0" /></a></td>
aqui mando la accion seleccionada como parametro del y el codi que es el codigo que eh elegido.


La funciones de javascript

Esta es para seleccionar todos los check activarlos funciona bien..

<script>
function marcartodo(x) {
if(x==true){
for (i=0;i<frmusuarios.elements.length;i++){
if ((frmusuarios.elements.type=="checkbox")&&(frmusuarios.elements.checked==false)){
frmusuarios.elements.checked=true;
}
}
}
else{
for (i=0;i<frmusuarios.elements.length;i++){
if ((frmusuarios.elements.type=="checkbox")&&(frmusuarios.elements.checked==true)){
frmusuarios.elements.checked=false;
}
}
}
}
</script>


Esta funcion es para eliminar
<script>
function validar_chk() { //por siaca le puse tambien codigo haber si atrapa algo y nada
var f = document.frmusuarios
var chk = false;
var url;
var cod = "";
for (i=0; i < f.checkbox.length; i++) {
if (f.checkbox.checked == true) {
url="../controler/usuarios_controler.php='accion=del&codi=<?=$lista_ usuarios[$i]["nomusu"] ?>"; //Aqui lo reemplaze por codigo pero no atrapa nada
return url;
}
}
if (chk == false) {
alert("No has seleccionado ningun checkbox!!!")
return false
}
return true
}
</script>


usuarios_controler.php



session_start(); //iniciando la sesion jalando el model del usuario como su dto y la utilidades...
require_once "../model/usuario_model.php";
require_once "../dto/usuario_dto.php";
require_once "../utilities/consultas.php";

//Capturando la accion como el codi del registro..
$accion_elegida = $_REQUEST["accion"];
$codigo_atr = $_REQUEST["codi"];



Aqui si la accion el del elimina llamo a delete_usuario que esta en el model....

if ($accion_elegida == "del") {
$model_usuario=new usuario_model();
$model_usuario->delete_usuario($codigo_atr);
$_SESSION["msj"] ="<img src='../imagenes/b_drop.png' />Registro Eliminado Correctamente .";
//El mensaje... lo arroja cuando elimina---
?>
<script LANGUAGE="JavaScript">
var paginax="../view/usuarios.php"
location.href=paginax //aca retorna a usuarios.php

</script>
<?
}
?>


usuario_model.php


session_start(); //iniciamos la sesion
require_once '../dao/usuarios_dao.php'; //jalamos usuario dao

public function delete_usuario($dto){ //una funcion delete_usuario aqui el dto contiene toda la data del registro selecciionado

try {
$usuario_dao=new usuario_dao();

$usuario_dao->delete_usuario($dto);//aqui jalamos el delete usuario que esta en el dao
//$ncodigo
}
catch(Exception $e){ //esto esta con sus repestivos exception
throw $e;
}
}

usuario_dao.php


public function delete_usuario($dto){ //funcion delete usuario el dto contiene los seter y los geters osea toda la data
try{
$imp=factory_dao::get_implementacion($_SESSION["ds"]); //jalamos al factory para ver que tipo de gestor de bs uso en mi caso mysql es el ds
$imp->conectar();
$cad= "delete from usuarios where nomusu='".$dto."'"; //un delete para eliminar el usuario seleccionado...
$imp->execute_update($cad); //execute_update se usa porque es una actualizacion
}
catch(Exception $e)
{
throw $e;
}
}

Esto funciona muy bien .. siempre eh utilizado este metodo, el problema son los check.. hacerlos con checks.

fonsi3:
Oye amigo, la verdad el codigo no se entiende, puedes pegarlo con formato. Y otra cosa, no me ha quedado claro como eso de los checkboxs. Segun entendi cuando el usuario "checkea" un checkbox, imagino yo que debe haber un boton eliminar que realice esa accion. Eso es lo que quieres hacer??

dquispe:
Claro mi hermano osea cuando hago clic en el boton eliminar llamo a esas funciones.
Lo que trato de hacer es eliminar tipo hotmail utilizando mvc, modelo vista controlador sin utilizar ningun framework, en el codigo que hice este post logro eliminar los registros pero via una imagen que l darle clic me manda un mensaje si quero eliminar el elemento eso funciona de maravillas.

El detalle es cuando lo quiero eliminar con los check no me dejan me dijieron que use javascript pero no me elimina.

 <input name="btnEliminar" type="button" class="RealBoton" id="btnEliminar" value="Eliminar" onClick="validar_chk()" />

Yo creo que aqui es el problema en lA linea url.

<script>
function validar_chk() { //por siaca le puse tambien codigo haber si atrapa algo y nada
var f = document.frmusuarios
var chk = false;
var url;
var cod = "";
for (i=0; i < f.checkbox.length; i++) {
if (f.checkbox.checked == true) {
url="../controler/usuarios_controler.php='accion=del&codi=<?=$lista_ usuarios[$i]["nomusu"] ?>"; //Aqui lo reemplaze por codigo pero no atrapa nada  //el problema parece ser en lo que contiene esta liea (url)
return url;
}
}
if (chk == false) {
alert("No has seleccionado ningun checkbox!!!")
return false
}
return true
}
</script>

fonsi3:
<?=$lista_ usuarios[$i]["nomusu"] ?> como sabes que $i esta apuntando a ese checkbox selecionando, ademas personalmente no me gusta como has implementado tu solucion. Si tengo tiempo hare una solucion similar pero lo haria con uso de POST y sin usar objetos.

dquispe:
Ok tio haber apoyame con ese tema.
Te parecera mi forma fea pero lo cierto es que si funciona con imagen es problema son los check hacerlos asi tipo hotmail usando mvc.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa