Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] error formulario php

Estas en el tema de error formulario php en el foro de PHP en Foros del Web. Estoy realizando un formaulario de registro y cuando inicio sesion al darle Ingresar me sale un error como este: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver original ...
  #1 (permalink)  
Antiguo 11/05/2014, 10:58
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 13 años, 3 meses
Puntos: 0
error formulario php

Estoy realizando un formaulario de registro y cuando inicio sesion al darle Ingresar me sale un error como este:

Código HTML:
Ver original
  1. Warning: Cannot modify header information - headers already sent by (output started at /home/u416660020/public_html/acceso_db.php:1) in /home/u416660020/public_html/comprobar.php on line 18
El caso es que si le doy a retroceder (flecha izq del navegador) me va a donde tenia que haber y ido y no sé el porque me da error.

Os dejo el archivo comprobar.php

Código PHP:
Ver original
  1. <?php
  2.     session_start();
  3.     include('acceso_db.php');
  4.     if(isset($_POST['enviar'])) { // comprobamos que se hayan enviado los datos del formulario
  5.         // comprobamos que los campos usuarios_nombre y usuario_clave no estén vacíos
  6.         if(empty($_POST['usuario_nombre']) || empty($_POST['usuario_clave'])) {
  7.             echo "El usuario o la contraseña no han sido ingresados. <a href='javascript:history.back();'>Reintentar</a>";
  8.         }else {
  9.             // "limpiamos" los campos del formulario de posibles códigos maliciosos
  10.             $usuario_nombre = mysql_real_escape_string($_POST['usuario_nombre']);
  11.             $usuario_clave = mysql_real_escape_string($_POST['usuario_clave']);
  12.             $usuario_clave = md5($usuario_clave);
  13.             // comprobamos que los datos ingresados en el formulario coincidan con los de la BD
  14.             $sql = mysql_query("SELECT usuario_id, usuario_nombre, usuario_clave FROM usuarios WHERE usuario_nombre='".$usuario_nombre."' AND usuario_clave='".$usuario_clave."'");
  15.             if($row = mysql_fetch_array($sql)) {
  16.                 $_SESSION['usuario_id'] = $row['usuario_id']; // creamos la sesion "usuario_id" y le asignamos como valor el campo usuario_id
  17.                 $_SESSION['usuario_nombre'] = $row["usuario_nombre"]; // creamos la sesion "usuario_nombre" y le asignamos como valor el campo usuario_nombre
  18.                 header("Location: index.php");
  19.             }else {
  20. ?>
  21.                 Error, <a href="acceso.php">Reintentar</a>
  22.     <?php
  23.             }
  24.         }
  25.     }else {
  26.         header("Location: acceso.php");
  27.     }
  28.     ?>
muchas gracias amigos
  #2 (permalink)  
Antiguo 11/05/2014, 11:15
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: error formulario php

header() debe de enviarse antes de enviar cualquier otro dato —un echo y/o cualquier salida HTML, aunque sea un espacio. Es de suponer que algo estés enviando antes de enviar la información de cabecera.
  #3 (permalink)  
Antiguo 11/05/2014, 13:21
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: error formulario php

Lo que te dice @pzin es correcto y creeria puedes estar imprimiendo algo:

- En el archivo incluido acceso_db.php
- En el propio con tan solo tener un espacio antes de <?php es suficiente para romper todo :P
__________________
Salu2!
  #4 (permalink)  
Antiguo 11/05/2014, 23:41
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: error formulario php

Solucionado: He vuelto a confeccionar el acceo_db_php y ha funcionado.
Gracias

Etiquetas: formulario, html, mysql, registro, select, sql, usuarios
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 14:23.