Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: oscarj24 en 8 Junio 2010, 19:07 pm



Título: Ayuda con error de sintaxis en formulario PHP
Publicado por: oscarj24 en 8 Junio 2010, 19:07 pm
Hola a todos, estoy haciendo un formulario con upload de imagen que se registra a una base de datos pero tengo un error de sintaxis que dice "unexpected end of file" en la ultima linea (donde esta el "?>") y nose donde esté el problema. Espero me puedan dar sugerencias, ejemplos o decirme cual es el error, gracias de antemano.  ::)

El error esta en esta imagen:
http://img717.imageshack.us/img717/2692/erroryl.jpg (http://img717.imageshack.us/img717/2692/erroryl.jpg)

Y este es el codigo:

Código
  1. <?php
  2. if (isset($_POST['enviar']))
  3. {
  4. $link = mysql_connect('localhost', 'user', 'pass');
  5. mysql_select_db('dbname', $link);
  6. $sql = "SELECT MAX(ID) FROM inscripciones";
  7. $result = mysql_query($sql);
  8. $row = mysql_fetch_row($result);
  9. $max_id = $row[0]+1;
  10. $nombres=$_POST['nombres'];
  11. $apellidos=$_POST['apellidos'];
  12. $DNI_CarneExtranjeria=$_POST['DNI_CarneExtranjeria'];
  13. $tipo_persona=$_POST['tipo_persona'];
  14. $empresa=$_POST['empresa'];
  15. $cargo=$_POST['cargo'];
  16. $direccion=$_POST['direccion'];
  17. $telefono_fijo=$_POST['telefono_fijo'];
  18. $telefono_celular=$_POST['telefono_celular'];
  19. $tipo_combrobante=$_POST['tipo_comprobante'];
  20. $razon_social=$_POST['razon_social'];
  21. $RUC=$_POST['RUC'];
  22. $_FILES['voucher']['name'] = $max_id."_".$_FILES['voucher']['name'];
  23. $upload_dir = '/home/netline/public_html/inscripciones/vouchers/';
  24. $extension = $_FILES['voucher']['type'];
  25. $size = $_FILES['voucher']['size'];
  26. $upload_file = $upload_dir.($_FILES['voucher']['name']);
  27. $voucher_nombre_db = $_FILES['voucher']['name'];
  28. if($nombres.trim == '' && $apellidos.trim == '' && $DNI_CarneExtranjeria.trim == '' && ($tipo_persona == 'Dependiente' && ($empresa.trim == '' || $cargo.trim == '' || $direccion.trim == '')) &&($telefono_fijo == '' || $telefono_celular == '') && ($tipo_comprobante == 'Factura' && ($razon_social.trim == '' || $RUC.trim == '')) && $voucher_nombre_db.trim == '' && $extension != 'image/jpeg' && $size > 204801)
  29. {
  30. echo <<<ERROR
  31.  <html>
  32.  <head>
  33.  <title>Titulo web</title>
  34.  <META http-equiv="refresh" content="6; url=http://www.dominio.com/inscripciones/inscripcion.php">
  35.  </head>
  36.  <body>
  37.  <p>Debe completar todos los datos obligatorios y adjuntar una imagen con extensi�n .JPG y de 200KB de tamaño maximo.</p>
  38.  </body>
  39.  </html>
  40.  ERROR;
  41.  }
  42.  else
  43.  {
  44.  move_uploaded_file($_FILES[voucher][tmp_name], "$upload_file");
  45.  mysql_query("INSERT INTO inscripciones (Nombres,Apellidos,DNI_CarneExtranjeria,Tipo_Persona,Empresa,Cargo,Direccion,Telefono_Fijo,Telefono_Celular,Tipo_Comprobante,Razon_Social,RUC,Nombre_Voucher) VALUES ('$nombres','$apellidos','$DNI_CarneExtranjeria','$tipo_persona','$empresa','$cargo','$direccion','$telefono_fijo','$telefono_celular','$tipo_comprobante','$razon_social','$RUC','$voucher_nombre_db')",$link);
  46.  mysql_close($link);
  47. echo <<<EXITO
  48. <html>
  49. <head>
  50. <title>Titulo web</title>
  51. <META http-equiv="refresh" content="6; url=http://www.dominio.com/inscripciones/inscripcion.php">
  52. </head>
  53. <body>
  54. <p>Registro exitoso.</p>
  55. </body>
  56. </html>
  57. EXITO;
  58.  }
  59. }
  60. ?>
  61.  


Título: Re: Ayuda con error de sintaxis en formulario PHP
Publicado por: Shell Root en 8 Junio 2010, 19:26 pm
Intenta organizar el código de tal manera que puedas identificar más fácil el error.
Código
  1. <?php
  2. if (isset($_POST['enviar'])){
  3. $link = mysql_connect('localhost', 'user', 'pass');
  4. mysql_select_db('dbname', $link);
  5. $sql = "SELECT MAX(ID) FROM inscripciones";
  6. $result = mysql_query($sql);
  7. $row = mysql_fetch_row($result);
  8. $max_id = $row[0]+1;
  9. $nombres=$_POST['nombres'];
  10. $apellidos=$_POST['apellidos'];
  11. $DNI_CarneExtranjeria=$_POST['DNI_CarneExtranjeria'];
  12. $tipo_persona=$_POST['tipo_persona'];
  13. $empresa=$_POST['empresa'];
  14. $cargo=$_POST['cargo'];
  15. $direccion=$_POST['direccion'];
  16. $telefono_fijo=$_POST['telefono_fijo'];
  17. $telefono_celular=$_POST['telefono_celular'];
  18. $tipo_combrobante=$_POST['tipo_comprobante'];
  19. $razon_social=$_POST['razon_social'];
  20. $RUC=$_POST['RUC'];
  21. $_FILES['voucher']['name'] = $max_id."_".$_FILES['voucher']['name'];
  22. $upload_dir = '/home/netline/public_html/inscripciones/vouchers/';
  23. $extension = $_FILES['voucher']['type'];
  24. $size = $_FILES['voucher']['size'];
  25. $upload_file = $upload_dir.($_FILES['voucher']['name']);
  26. $voucher_nombre_db = $_FILES['voucher']['name'];
  27.  
  28. if($nombres.trim == '' && $apellidos.trim == '' && $DNI_CarneExtranjeria.trim == '' && ($tipo_persona == 'Dependiente' && ($empresa.trim == '' || $cargo.trim == '' || $direccion.trim == '')) &&($telefono_fijo == '' || $telefono_celular == '') && ($tipo_comprobante == 'Factura' && ($razon_social.trim == '' || $RUC.trim == '')) && $voucher_nombre_db.trim == '' && $extension != 'image/jpeg' && $size > 204801){
  29. echo '<html>
  30.  <head>
  31.  <title>Titulo web</title>
  32.  <META http-equiv="refresh" content="6; url=http://www.dominio.com/inscripciones/inscripcion.php">
  33.  </head>
  34.  <body>
  35.  <p>Debe completar todos los datos obligatorios y adjuntar una imagen con extensi�n .JPG y de 200KB de tamaño maximo.</p>
  36.  </body>
  37.  </html>';
  38. }else{
  39. move_uploaded_file($_FILES[voucher][tmp_name], "$upload_file");
  40. mysql_query("INSERT INTO inscripciones(Nombres,Apellidos,DNI_CarneExtranjeria,Tipo_Persona,Empresa,Cargo,Direccion,Telefono_Fijo,Telefono_Celular,Tipo_Comprobante,Razon_Social,RUC,Nombre_Voucher) VALUES('$nombres','$apellidos','$DNI_CarneExtranjeria','$tipo_persona','$empresa','$cargo','$direccion','$telefono_fijo','$telefono_celular','$tipo_comprobante','$razon_social','$RUC','$voucher_nombre_db')",$link);
  41. mysql_close($link);
  42. echo '<html>
  43. <head>
  44. <title>Titulo web</title>
  45. <META http-equiv="refresh" content="6; url=http://www.dominio.com/inscripciones/inscripcion.php">
  46. </head>
  47. <body>
  48. <p>Registro exitoso.</p>
  49. </body>
  50. </html>';
  51. }
  52. }
  53. ?>


Título: Re: Ayuda con error de sintaxis en formulario PHP
Publicado por: oscarj24 en 8 Junio 2010, 20:05 pm
Hola, gracias por corregir el error, tienes razon... debo ser mas ordenado  ;D un saludo.