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



Portada » 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 8:00 am
Mensajes: 334
Ubicación: PANAMA

Nota Publicado: Mar Nov 15, 2011 9: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://greermurray.com


Última edición por greer el Jue Nov 17, 2011 1:08 am, editado 1 vez en total
 Perfil  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Jue Abr 19, 2007 7:00 am
Mensajes: 1519
Ubicación: Cojutepeque, El Salvador C. A.

Nota Publicado: Mar Nov 15, 2011 11: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 Medio
Forista Medio

Registrado: Mié Abr 27, 2011 11:32 am
Mensajes: 331

Nota Publicado: Mié Nov 16, 2011 12:14 am 
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;
?>



 Perfil  

Desconectado
Moderador
Moderador
Avatar de Usuario

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

Nota Publicado: Mié Nov 16, 2011 11: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 8:00 am
Mensajes: 334
Ubicación: PANAMA

Nota Publicado: Jue Nov 17, 2011 1:07 am 
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://greermurray.com

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

Saltar a:  


 Temas relacionados   Autor   Respuestas   Vistas   Último mensaje 
Bash: obtener el número total de campos (SOLUCIONADO)

en Programación

Misura

5

1114

Vie Ago 24, 2012 7:31 pm

mcun Ver último mensaje

[Solucionado] Eliminar lineas con campos duplicados [BASH]

en Programación

startx

2

963

Mar Feb 06, 2018 5:26 pm

startx Ver último mensaje

Eliminar campos duplicados y Sumar su contenido. PHP ó MySQL ? [SOLUCIONADO]

en Programación

greer

7

5339

Sab Oct 16, 2010 11:46 pm

mcun Ver último mensaje

[SOLUCIONADO] Bloqueo completo al abrir Iceweasel en Debian 8 amd64

en Software

Nagual

14

3918

Jue Feb 04, 2016 7:43 am

PabliNet Ver último mensaje

Campos calculados en firebird

en Software

Leovidal

0

762

Mié Ago 04, 2010 9:35 am

Leovidal Ver último mensaje



¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 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 + 1 hora [ DST ]
Traducción al español por Huan Manwë
phpBB SEO