Reglamento general de los foros   •   FAQ   •   Buscar en el foro •  Registrarse | Iniciar sesión 



Foros Linux » Desarrollo » Programación


Nuevo tema Responder al tema
 [ 5 mensajes ] 
Patrocinadores

Autor
Buscar:
Mensaje

Desconectado
Forista Medio
Forista Medio
Avatar de Usuario

Registrado: Mar Feb 27, 2007 12:00 am
Mensajes: 279
Ubicación: PANAMA

Nota Publicado: Mar Nov 15, 2011 1:50 pm 
Arriba  
Hola compañeros.

tengo una nueva duda, les explico...

tengo un formulario basico en html y php, pero en el, tengo un boton para imprimir un documento, mi idea es una vez se de un solo click en ese boton, mas nunca se pueda volver a dar click en el... se podra hacer eso ?

que al darle click una vez este quede deshabilitado para siempre y para todos los usuarios...

Sera posible eso ?

Saludos.

_________________
http://greer.nodolinux.com


Última edición por greer el Mié Nov 16, 2011 5:08 pm, editado 1 vez en total
 Perfil WWW  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Abr 18, 2007 11:00 pm
Mensajes: 1209
Ubicación: Cojutepeque, El Salvador C. A.

Nota Publicado: Mar Nov 15, 2011 3:17 pm 
Arriba  
solo durante la sesión o permanentemente???

Si es durante la sesión, puedes hacerlo con javascript.

Si es permanentemente, puede que te sirva esta idea: anteriormente vi un sistema luego de imprimir un reporte, le agregaba un "estado" al reporte como "original" si era primera vez, "copia" si se repetía, "sin imprimir" si no se había seleccionado imprimir desde el botón correcto. El punto es que eso lo registraba en la base de datos y a la hora de imprimir la consultaba, algo similar se me ocurre en este caso.

_________________
Grüße...
Maiku

Full linux alchemist!!!

 Perfil WWW  

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Mié Abr 27, 2011 3:32 am
Mensajes: 49

Nota Publicado: Mar Nov 15, 2011 4:14 pm 
Arriba  
Quizás te pueda servir algo así, (es un poco en la idea de maiku, de lo del estado). Tienes que crear un fichero llamado estado en la ruta del script.

Código:
<?php
if (isset($_GET["impr"])){
    $file="estado";
    if (file_exists($file)) {
        // incluir código para la impresión del documento
        // -------aquí, por ejemplo----------------------
        $file=fopen("estado","w+");
        fwrite($file, 1);
        fclose ($file);
    }
}
function estado (){
    // recupero estado
    $estado = "0";
    $file="estado";
    if (file_exists($file)) {
        $file=fopen("estado","r");
        while(!feof($file)){
            $estado = fgets($file,4096);
        }
    }
    if ($estado == 1){
        $disabled = ' disabled="disabled "';
    }
    else {
        $disabled = "";
    }
    return $disabled;
}

function devolver_html ($estado) {
   return '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>prueba</title>
</head>
<body>

<form action="prueba.php" method="get">
    <p>
    <button name="impr" ' . $estado . 'type="submit" value="1">Imprimir</button>
    </p>
</form>
</body>
</html>
';
}
$io = estado();
$html = devolver_html($io);
echo $html;
?>



_________________
Linux gentoo 2.6.38-gentoo-r6
xmonad-0.9

 Perfil Email  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Nov 28, 2007 12:00 am
Mensajes: 1361
Ubicación: En la X del explorer (pulse para llamar)

Nota Publicado: Mié Nov 16, 2011 3:24 pm 
Arriba  
Mucho más sencillo: supongo que tendrás una tabla con información sobre documentos (localización, fecha de subida, etc), simplemente añade un campo que indique si el documento ha sido impreso o no.
A la hora de generar el html para mostrar el documento, compruebas el valor de dicho campo. Si ya ha sido impreso simplemente no generas el botón, y muestras dicha información.

_________________
Descargue el gestor de mp3 "Music Manager" -> (mmlf)
Última versión del gestor "Music Manager" -> (jmmm)

 Perfil  

Desconectado
Forista Medio
Forista Medio
Avatar de Usuario

Registrado: Mar Feb 27, 2007 12:00 am
Mensajes: 279
Ubicación: PANAMA

Nota Publicado: Mié Nov 16, 2011 5:07 pm 
Arriba  
Perfecto era precisamente lo que queria hacer! wao ustedes son la maximo!

Gracias a maiku, MetTxin y a akodo por la ayuda siempre.

tome la idea de tosos y esto fue lo que hice:

Código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<?php

$net = mysql_connect('localhost','root','greer') or die(mysql_error());
mysql_select_db('impresora',$net);

if(isset($_POST["impr"])){

mysql_query("INSERT INTO registros (imprime) VALUES ($variable);");

mysql_close();

}

$query = "
   SELECT
      imprime
   FROM
      registros
   WHERE
      imprime = '$variable'
";

$resultado = mysql_query($query,$net) or die(mysql_error());
while($BD = mysql_fetch_assoc($resultado)){ //BUCLE
   $dato = $BD['imprime'];
}

if(@$dato == '$variable'){
   $disabled = ' disabled="disabled "';
}
else{
   $disabled = "";
}

?>

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>prueba</title>
</head>
<body>

<form action="" method="post">
    <p>
   <button name="impr" <?php echo $disabled; ?> type="submit" value="1">Imprimir</button>
    </p>
</form>
</body>
</html>


Saludos

_________________
http://greer.nodolinux.com

 Perfil WWW  
Mostrar mensajes previos:  Ordenar por  
 [ 5 mensajes ] 
Nuevo tema Responder al tema

Saltar a:  


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados

No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro
No puede enviar adjuntos en este Foro

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group :: Style based on FI Subice by phpBBservice.nl :: Todos los horarios son UTC - 6 horas
Traducción al español por Huan Manwë
phpBB SEO