Foros del Web » Programando para Internet » Javascript »

Borrar si o no javascript

Estas en el tema de Borrar si o no javascript en el foro de Javascript en Foros del Web. Bueno me han recomendado que pregunte por aki, tengo un archivo .php en el cual, muestro una tabla en la cual puedo modificar un par ...
  #1 (permalink)  
Antiguo 04/05/2010, 05:31
Avatar de dengaku  
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 1
Borrar si o no javascript

Bueno me han recomendado que pregunte por aki, tengo un archivo .php en el cual, muestro una tabla en la cual puedo modificar un par de campos, al final de esta tengo un enlace con una imagen con el que mando un codigo a otro .php es para borrar esa fila en concreto, hasta ahi esta bien, pero me doy cuenta de que si con solo hacer un clik se borra, es un poco inseguro, porque si le das sin querer te la borra, yo quiero que cuando le haga clik a esa X emerja una alerta o algo por el estilo, con un mensaje "¿Seguro que quieres borrarlo?" o algo parecido, con un si o un no (no domino nada javascript pero es con lo que parece más acertado hacerlo) si pulso si, quiero que valla a borrar.php, y si clik en NO que no pase nada.
El php en cuestion es este =>

Código PHP:
<?php
    
//Iniciar sesión
   
session_start();


 
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Administrar mis descargas </title>
<link href="stilo.css" rel="stylesheet" type="text/css" />

</head>

<body class="stilo2">
<div id="Layer11"><img src="logo01 copy.jpg" width="116" height="97" /></div>
<div id="Layer1" class="stilo3">
<?php
// Establecer el número de filas por página y la fila inicial
        
$num 5;// número de filas por página
          
$comienzo=$_REQUEST[comienzo];
          if (!isset(
$comienzo)) 
            
$comienzo 0;    



// Sesión iniciada
   
if (isset($_SESSION["usuario_valido"]))
   {
        include(
"libreria.php");
        
$conexion=conecta();
        
$uv=$_SESSION["usuario_valido"]; 

   
if (isset (
$_REQUEST['modificar'])){
    
$errores false;
    
$maxdes $_REQUEST['max'];
    
$vida $_REQUEST['vida'];
    
$estad $_REQUEST['estado'];
    
$patron1 "^[0-9]+$";

    if (! 
eregi($patron1,$maxdes)){ 
       
$error[1]=' No admite caracter vacio'
       
$errores=true;}
    if (! 
eregi($patron1,$vida)){ 
       
$error[2]=' No admite caracter vacio'
       
$errores=true;}
    
//print $errores."..........";

}

if (isset (
$_REQUEST['modificar']) and $errores==false){

$codarchivo $_REQUEST['cod'];
    
$conexion=conecta();
$sq2="update archivos set max_descargas='$maxdes', tiempo_vida='$vida', estado='$estad' where cod_archivo='$codarchivo'";
//print $sq2;
$registros2=mysql_query($sq2,$conexion) or
              die(
"Problemas en el update".mysql_error());
 echo 
"Archivo fue modificado";
         
$pagina="admindescarga.php";
        
header("Location:$pagina");
 }        
     
        
$sq8="select administrador from usuarios where nick = '$uv'";
        
$registro8=mysql_query($sq8,$conexion) or
          die(
"Problemas en el select:".mysql_error());
        
$bb=mysql_fetch_array($registro8);
        
$cc=$bb['administrador'];
         
//print "$cc";     
         
        
$sq3="select cod_usuario from usuarios where nick = '$uv'";
        
//echo $uv.'<br/>';
        //echo $sq3.'<br/>';
        
$regist=mysql_query($sq3,$conexion) or
          die(
"Problemas en el select:".mysql_error());
        
$aa=mysql_fetch_array($regist);
        
$cu=$aa['cod_usuario'];

        
//print $cu.'<br/>';
        
$sq5="select * from archivos where codigo_usuario = '$cu'";
        
//echo $sq5;
        
$tikitaka=mysql_query($sq5,$conexion) or
          die(
"Problemas en el select:".mysql_error());
        
$nfilas mysql_num_rows ($tikitaka);
        
        
//listado subidas
        
        
$sql="select * from archivos where codigo_usuario = '$cu' limit $comienzo, $num";
        
//echo $sql;
        
$registros=mysql_query($sql,$conexion) or
          die(
"Problemas en el select:".mysql_error());

        
    
        
        print 
"<p class='stilo5'>Administrar mis archivos:</p>";
           print 
"<table border='2' cellspacing='0' class='table'>";
           print 
"<tr><td class='td2'>Nombre archivo</td><td class='td2'>Tamaño</td><td class='td2'>Numero descargas</td><td class='td2'>Max descargas</td><td class='td2'>Fecha Subida</td><td class='td2'>Tiempo de vida</td><td class='td2'>Estado</td><td class='td2'>Modificar</td><td class='td2'>Borra</td></tr>";

        while (
$reg2=mysql_fetch_array($registros))
        {    
        
$estado=$reg2['estado'];
        
//$id=$reg['cod_archivo'];

        
        
              
print '<form action="admindescarga.php" method="post">';
            
            print 
'<input size=5 type="hidden" name="cod" value="'.$reg2['cod_archivo'].'">';
            print 
"<tr><td>".$reg2['nombre']."</td>";
            
              print 
"<td>".$reg2['size']."</td>";
            
               print 
"<td>".$reg2['num_descargas']."</td>";
            
            print 
'<td  class=td1><input size=5 type="text" name="max" value="'.$reg2['max_descargas'].'">';
        print (
"<font color=red>$error[1]</font><BR>");"</td>";
        
            print 
"<td>".$reg2['fecha_subida']."</td>";
            
            print 
'<td class=td1><input size=5 type="text" name="vida" value="'.$reg2['tiempo_vida'].'">';
        print (
"<font color=red>$error[2]</font><BR>");"</td>";

            print 
"<td class=td1><select name='estado'>"
            print 
"<option value='-1' "
                if (
$estado == -1) { print " selected ";}
            print 
">Activo</option>";
            print 
"<option value='0' ";
                if (
$estado == 0) { print " selected ";}
            print 
">Inactivo</option>";
            print 
"</select>";
            
             print 
'<td class=td3><input type="submit" name="modificar" value="Modifica"></td>';
            print 
"<td class=td3><a href=borrar.php?codigob=".$reg2['cod_archivo']."><img src='borrar.png'></a></td></tr>";            
            print 
"</form>";
           }        
        print 
"</table>";

        
//echo $comienzo.'<br/>';
        //echo $num.'<br/>';
        //echo $nfilas.'<br/>';
        
                    
if ($comienzo 0)
               print (
"[ <A HREF='$_SERVER[PHP_SELF]?comienzo=" . ($comienzo $num) . "'>Anterior</A> | ");
            else
               print (
"[ Anterior | ");
            if (
$nfilas > ($comienzo $num))
               print (
"<A HREF='$_SERVER[PHP_SELF]?comienzo=" . ($comienzo $num) . "'>Siguiente</A> ]\n");
            else
                print (
"Siguiente ]\n");

    
}

?>
</div>
<div id="Layer5">Subir</div>
<div id="Layer6"><a href="admindescarga.php">Administrar
    </a></div>


<?php if ($cc == '-1'){ ?><div id="Layer7">
    <a href="genera_clave.php">Insertar usuarios    </a></div>
<?php ?>
<?php 
if ($cc == '-1'){ ?><div id="Layer8">
    <a href="adminusu.php">Actualizar usuarios    </a></div>
<?php ?>
<?php 
if ($cc == '-1'){ ?><div id="Layer9">
    <a href="admdescarga.php">Modificar archivos </a></div>
<?php ?>

</body>
</html>
Este print es elque manda manda el dato a borrar.php
Código:
print "<td class=td3><a href=borrar.php?codigob=".$reg2['cod_archivo']."><img src='borrar.png'></a></td></tr>";
Borrar.php simplemente tiene una consulta delete y con un header vuelve a esta misma página. Si alguien peude indicarme el camino o aconsejarme porque se '0' de javascript.
  #2 (permalink)  
Antiguo 04/05/2010, 06:34
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Borrar si o no javascript

Tienes diversas opciones....

Asociar el evento al dobleclick o usar confirm() o los dos!!!, pero para ello tienes que cambiar un poco tu codigo

Código PHP:
Ver original
  1. print "<td class=td3><a href=borrar.php?codigob=".$reg2['cod_archivo']."><img src='borrar.png'></a></td></tr>";


directamente con el dobleclick

Código PHP:
Ver original
  1. print "<td class=td3><a href='#' onDblClick='location.href=\"borrar.php?codigob=".$reg2['cod_archivo']."\"><img src='borrar.png'></a></td></tr>";

(comprueba que la cadena queda bien formada)

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. <!--
  3. function confirmation(archivo) {
  4.     var answer = confirm("¿Seguro que quieres borrarlo?")
  5.     if (answer){
  6.         alert("Lo borro!")
  7.         window.location = "borrar.php?codigob="+archivo;
  8.     }
  9.     else{
  10.         alert("No lo he borrado!")
  11.     }
  12. }
  13. //-->
  14. </script>


print "<td class=td3><a href='#' onDblClick='confirmation(".$reg2['cod_archivo'].")"><img src='borrar.png'></a></td></tr>";

Tienes

onClick=""
onDblClick=""


Quim
  #3 (permalink)  
Antiguo 04/05/2010, 08:12
Avatar de dengaku  
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Borrar si o no javascript

Vale ya lo e entendido :D que me a costado XD

Última edición por dengaku; 04/05/2010 a las 08:20
  #4 (permalink)  
Antiguo 04/05/2010, 08:27
Avatar de dengaku  
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Borrar si o no javascript

no comprendo lo de (archivo) en el script, y lo de src='#' , no es que no lo comprenda, más bien es que no tengo ni la más remota idea de lo que es (archivo) y +archivo.

Última edición por dengaku; 04/05/2010 a las 08:40
  #5 (permalink)  
Antiguo 04/05/2010, 15:23
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Borrar si o no javascript

confirmation(".$reg2['cod_archivo'].")"

Código:
PHP                     JS
cod_archivo  ----  >  archivo
El script es utilizable en distintos sitios puesto que le estamos pasando el valor como un parametro en el momento de llamarlo...

llamamos la funcion confirmation pasando como parametro el valor de la variable php, una vez en js usamos ese parametro para pedir la eliminacion del archivo

"borrar.php?codigob="+archivo;

(aqui + esta concatenando dos cadenas de texto si $reg2['cod_archivo']=archivo="nombrefile.txt" la cadena final será
borrar.php?codigob=nombrefile.txt;
con lo que se va a borrar "nombrefile.txt")

Finalmente src="#" anula la funcion del link puesto que quiero que solamente haga lo que le pido en el vento onDblClick (doble click)...

Si?

Quim
  #6 (permalink)  
Antiguo 05/05/2010, 02:22
Avatar de dengaku  
Fecha de Ingreso: enero-2010
Mensajes: 69
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Borrar si o no javascript

Pues Quimfv muchísimas gracias :P me as solucionado el problema y además lo e entendido ^^ al final la cadena era así:

Código PHP:
print "<td class=td3><a href='#' onDblClick=confirmation(".$reg2['cod_archivo'].")><img src='borrar.png'></a></td></tr>"
Lo dicho, gracias!!

Etiquetas: borrar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:36.