elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Formulario autorrellenable?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Formulario autorrellenable?  (Leído 4,838 veces)
guiri86

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Formulario autorrellenable?
« en: 12 Enero 2011, 00:41 am »

    Ae pessoal!! tengo una preguntilla por aquí, me he pasado un buen rato mirando por google, pero solo he encontrado cosas de pdf y word... que no he encontrado la manera de aplicarlo a la web, imagino... por supuesto!! que necesitaré moverme con php, ahí va la pregunta.

    Como devería hacer para crear un formulario en el que el interesado introduzca sus datos personales (nombre, apellidos, dni y dirección) y que una vez finalizado el formulario, (botón aceptar), se imprima en su pantalla un modelo de contrato que ya tengo con esos datos con los que EL ha rellenado el formulario?!?!

    Mil gracias por la atención!!


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Formulario autorrellenable?
« Respuesta #1 en: 12 Enero 2011, 02:57 am »

y con modelo de contrato, quieres decir?


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
guiri86

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Formulario autorrellenable?
« Respuesta #2 en: 12 Enero 2011, 03:24 am »

por ejemplo:

por una parte d. XXXXXXXXXXX, mayor de edad y con DNI: XXXXXXXX, residente en la calle XXXXXXXXXXX XXX cede a d. XXXXXXXXXXX...........

Y, obviamente, donde están las XXXXX que se pongan automaticamente los datos que ha rellenado en el formulario.
En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Formulario autorrellenable?
« Respuesta #3 en: 12 Enero 2011, 03:55 am »

Pero eso tendría que ir en una pagina (*.php) o un archivo (.txt; .doc; .pdf).
En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
Graphixx


Desconectado Desconectado

Mensajes: 1.336


Full Stack Developer


Ver Perfil WWW
Re: Formulario autorrellenable?
« Respuesta #4 en: 12 Enero 2011, 07:03 am »

para eso ocupa ezpdf o fpdf.

algunos ejemplos:
Usando FPDF:
Archivo: index.php
Código
  1. <html>
  2. <head>
  3.   <style type="text/css">  
  4.   body {
  5. background-color: #ffffff;
  6. background-repeat: no-repeat;
  7. }
  8.   .style1 {
  9. font-family: Arial, Helvetica, sans-serif;
  10. font-size: 14px;
  11. color: #000;
  12. }
  13. .style20 {
  14. font-family: Arial, Helvetica, sans-serif;
  15. color: #C36;
  16. font-size: 28px;
  17. font-weight: bold;
  18. }
  19.   .style13 {
  20. font-family: Arial, Helvetica, sans-serif;
  21. font-weight: bold;
  22. font-size: 18px;
  23. color: #000;
  24. text-align: left;
  25. }
  26. .style15 {
  27. font-family: Arial, Helvetica, sans-serif;
  28. font-weight: bold;
  29. font-size: 24px;
  30. color: #af9454;
  31. text-align: left;
  32. }
  33. .style17 {
  34. font-family: Arial, Helvetica, sans-serif;
  35. font-weight: bold;
  36. font-size: 17px;
  37. color: #00C;
  38. }
  39. .style16 {
  40. font-family: Arial, Helvetica, sans-serif;
  41. font-weight: bold;
  42. font-size: 17px;
  43. color: #F00;
  44. }
  45.   .style14 {color: #000000}
  46.   a:link {
  47. text-decoration: none;
  48. }
  49. a:visited {
  50. text-decoration: none;
  51. }
  52. a:hover {
  53. text-decoration: none;
  54. }
  55. a:active {
  56. text-decoration: none;
  57. }
  58. a {
  59. font-size: 14px;
  60. }
  61.   </style>
  62. </head>
  63. <body>
  64. <center>
  65. <p><img src="logo.jpg" width="720" height="269"></p>
  66. <p>Descargue aqui el diploma del evento </p>
  67. </center>
  68. <form method="POST" action="generar_diploma.php" target="_blank">
  69. <center>
  70.  <strong>Ingrese  su c&eacute;dula:</strong>
  71.  <input type="text" name="T1" size="20"></center><br>
  72. <center><input type="submit" value="Buscar" name="buscar">  </center>
  73. </form>
  74. <center>
  75.  Si tiene algun inconveniente favor comunicarse a: registro@tuservidor.com<br>
  76. </center>
  77. </body>
  78. </html>

Archivo: generar_diploma.php
Código
  1. <?php
  2. require('fpdf.php');
  3.  
  4. $buscar=$_POST['T1'];
  5. if (!isset($buscar)){
  6.      echo "Debe especificar una cadena a bucar";
  7.      echo "</html></body> \n";
  8.      exit;
  9. }
  10. $link = mysql_connect("localhost", "usuario_root","tu_contraseña");
  11. mysql_select_db("server_diplomas", $link);
  12. $result = mysql_query("SELECT * FROM tabla_salud WHERE cedula = $buscar ORDER BY nombres", $link);
  13.  
  14. if ($row = mysql_fetch_array($result)){
  15.  
  16. $_entregado = "SI";
  17. mysql_query("update tabla_salud set entregado='$_entregado' where cedula='$buscar'",$link);
  18.  
  19.  
  20. $pdf=new FPDF();
  21. $pdf->AddPage('P','letter');
  22. $pdf->Image('img.jpg', 0, 0, $size[0], $size[1]);
  23. $pdf->SetFont('Arial','B',20);
  24. $pdf->SetTextColor(58,46,110);
  25. $pdf->SetXY(88,110);
  26. $pdf->Cell(40,10,$row["nombres"].' '.$row["apellidos"],0,0,'C');
  27. $pdf->Ln();
  28. $pdf->SetFont('Arial','B',16);
  29. $pdf->SetXY(88,120);
  30. $pdf->Cell(40,10,'CC '.$row["cedula"],0,0,'C');
  31. $pdf->Ln();
  32. $pdf->SetFont('Arial','B',16);
  33. $pdf->SetXY(88,130);
  34. $pdf->Cell(40,10,utf8_decode("Asistió a la Decimocuarta Semana de la Salud "),0,0,'C');
  35. if(empty($row["tipo"])){
  36. $pdf->Ln();
  37. $pdf->SetFont('Arial','B',14);
  38. $pdf->SetXY(88,140);
  39. $pdf->Cell(40,10,utf8_decode("XXX Congreso de Salud."),0,0,'C');
  40. $pdf->Ln();
  41. $pdf->SetFont('Arial','B',14);
  42. $pdf->SetXY(88,150);
  43. $pdf->Cell(40,10,utf8_decode("9° Congreso Colombiano de Salud."),0,0,'C');
  44. $pdf->Ln();
  45. $pdf->SetFont('Arial','B',14);
  46. $pdf->SetXY(88,160);
  47. $pdf->Cell(40,10,utf8_decode("Medellín, 3, 4 y 5 de noviembre de 2010."),0,0,'C');
  48. }else{
  49. $pdf->Ln();
  50. $pdf->SetFont('Arial','B',16);
  51. $pdf->SetXY(88,140);
  52. $pdf->Cell(40,10,$row["categoria"],0,0,'C');
  53. $pdf->Ln();
  54. $pdf->SetFont('Arial','B',11);
  55. $pdf->SetXY(88,150);
  56. $pdf->Cell(40,10,$row["tipo"],0,0,'C');
  57. $pdf->Ln();
  58. $pdf->SetFont('Arial','B',14);
  59. $pdf->SetXY(88,160);
  60. $pdf->Cell(40,10,utf8_decode("Medellín, 3, 4 y 5 de noviembre de 2010."),0,0,'C');
  61. }
  62.  
  63. $pdf->Output();
  64.  
  65. } else {
  66. echo "¡ No se ha encontrado ningún registro con su cedula, por favor verifique el numero e intentelo de nuevo !";
  67.  
  68. }
  69. ?>

En línea

Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
guiri86

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: Formulario autorrellenable?
« Respuesta #5 en: 12 Enero 2011, 12:27 pm »

Yeah!!!!!!!!!!! muchas gracias!!!!!!!
En línea

sclub


Desconectado Desconectado

Mensajes: 591


Ver Perfil
Re: Formulario autorrellenable?
« Respuesta #6 en: 12 Enero 2011, 12:39 pm »

A mi se me ocurre generar el texto sobre la marcha, algo así:

carta.txt
Citar
Esta seria la {VAR1} que quieres cambiar por la {VAR2}.
Escribe toda tu {VAR3} creando los huecos con todas las {VAR4} que necesites.

generar.php
Código
  1. <?php
  2.  
  3. $var1=$_POST['var1'];
  4. $var2=$_POST['var2'];
  5. $var3=$_POST['var3'];
  6. $var4=$_POST['var4'];
  7.  
  8. $carta=fopen("carta.txt","r");
  9.  
  10. while(!feof($carta)) {
  11.   $linea=fgets($carta);
  12.  
  13.   if(strstr($linea,"{VAR1}")) {
  14.      $linea=str_replace("{VAR1}",$var1,$linea);
  15.   }
  16.   if(strstr($linea,"{VAR2}")) {
  17.      $linea=str_replace("{VAR2}",$var2,$linea);
  18.   }
  19.   if(strstr($linea,"{VAR3}")) {
  20.      $linea=str_replace("{VAR3}",$var3,$linea);
  21.   }
  22.   if(strstr($linea,"{VAR4}")) {
  23.      $linea=str_replace("{VAR4}",$var4,$linea);
  24.   }
  25.  
  26.   echo "$linea<br />";
  27. }
  28.  
  29. fclose($carta);
  30.  
  31. ?>
  32.  
Si fueran muchas variables, se podria montar un for con un array para las variables... nada del otro mundo, pero se podria hacer. :P

Luego nose, si quieres el pdf bien, pero si solo es para mostrar o imprimir, con generarlo en pantalla es suficiente. no¿?

EDIT --
Faltaba el <br />, porque el fgets no copia el salto de linea.
« Última modificación: 12 Enero 2011, 15:33 pm por sclub » En línea

... because making UNIX friendly is easier than debugging Windows.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines