Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] mensaje de error Inicio Sesion

Estas en el tema de mensaje de error Inicio Sesion en el foro de PHP en Foros del Web. Estoy realizando un formulario de registro y login: El problema que no logro solucionar es que cuando coloco el nomnre y contraseña en el archivo ...
  #1 (permalink)  
Antiguo 18/05/2014, 06:13
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 8 años, 10 meses
Puntos: 0
mensaje de error Inicio Sesion

Estoy realizando un formulario de registro y login: El problema que no logro solucionar es que cuando coloco el nomnre y contraseña en el archivo acceso.php y digo Iniciar Sesion me sale este error:

Código PHP:
Ver original
  1. <?php
  2.     include('acceso_db.php'); // incluimos el archivo de conexión a la Base de Datos
  3. ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  8. <title>Creasshop</title>
  9. <link rel="shortcut icon" type="image/x-icon" href="redes_sociales/1396199538_638927329.png"/>
  10. ......
  11.  
  12. .texto16 {
  13.     font-family: Verdana, Geneva, sans-serif;
  14.     font-size: 16px;
  15.     line-height: 20px;
  16.     color: #707372;
  17.     text-decoration: none;
  18.     text-align: left;
  19. }
  20. .word {
  21.     font-family: Verdana, Geneva, sans-serif;
  22.     font-size: 18px;
  23.     font-weight: bold;
  24.     color: #999;
  25.     font-style: italic;
  26. }
  27. .word2 {
  28.     font-family: Verdana, Geneva, sans-serif;
  29.     font-size: 18px;
  30.     font-weight: bold;
  31.     color: #F93;
  32.     font-style: italic;
  33. }
  34. .word2:hover {
  35.     font-family: Verdana, Geneva, sans-serif;
  36.     font-size: 18px;
  37.     font-weight: bold;
  38.     color: #F60;
  39.     font-style: italic;
  40. }
  41. </style>
  42. </head>
  43. <body onload="MM_preloadImages('Imagenes/gasolineras2.jpg','Imagenes/hosteleria2.jpg','Imagenes/comerciales2.jpg','redes_sociales/facebook 25x25.png')">
  44. <div id="contenedor">
  45. <div id="gruposuperior">
  46.         <div id="barrasuperior">
  47.             <div id="barrasuperior2">
  48.              <div class="texto14" id="registro"><?php
  49.         if(isset($_SESSION['usuario_nombre'])) {
  50. ?>
  51.             Bienvenido: <strong><?=$_SESSION['usuario_nombre']?></strong> &nbsp;&nbsp;|
  52.             <a href="logout.php" class="texto14">Cerrar Sesión</a>&nbsp; |
  53. <?php
  54.         }else {
  55. ?>
  56.             <a href="registro.php" class="texto14">Registrarse</a>&nbsp; | <a href="acceso.php" class="texto14">Ingresar</a>
  57. <?php
  58.         }
  59. ?></div>
  60.  
  61.               <div id="telefono1"></div>
  62.                 <div class="texto1" id="telefono2">(+34) 963 905 500</div>
  63.                 <div id="mail1"></div>
  64.                 <div class="texto1" id="mail2"><a href="mailto:[email protected]" class="texto2">[email protected]</a></div>
  65.               <div id="facebook"><a href="https://es-es.facebook.com/creasshop?ref=stream"title="Estamos en Facebook" target="_blank" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image13','','redes_sociales/facebook 25x25.png',1)"><img src="redes_sociales/facebook-25x25-opacidad.png" width="25" height="25" id="Image13" /></a></div>
  66.           </div>
  67.         </div> 
  68.                
  69.             <div id="barralogo">
  70.                 <div id="logo">
  71.                     <div id="logocreasshop"></div>
  72.                 </div>
  73.             </div> 
  74.                
  75.         <div id="barraslider"></div>   
  76.             <div id='topwrapper'>
  77. <ul id='top'>
  78.  
  79.     <li><a href='index.php' >INDEX</a></li>
  80.     <li><a href='empresa.html' >EMPRESA</a></li>
  81.    <li><a href='servicios.html' >SERVICIOS</a>
  82.     <ul>
  83.         <li><a href='galeria5/productoslamparas.html'>Instalaciones Técnicas</a></li>
  84.                 <li><a href="galeria6/productosmuebles.html">Instalaciones Comerciales</a></li>
  85.                 <li><a href="galeria7/productostubulares.html">Instalaciones integrales</a></li>
  86.       </ul>
  87.     </li>
  88.     <li><a href='Mapa.html' >MAPA</a> </li>
  89.     <li><a href='contacto.html'>CONTACTO</a></li>
  90. </ul>
  91. </div>
  92.   <div id='contenido'>
  93.     <div class="word" id="registrarse">
  94.   <?php
  95.   if(isset($_POST['enviar'])) { // comprobamos que se hayan enviado los datos del formulario
  96.         // comprobamos que los campos usuarios_nombre y usuario_clave no estén vacíos
  97.         if(empty($_POST['usuario_nombre']) || empty($_POST['usuario_clave'])) {
  98.             echo "El usuario o la contraseña no han sido ingresados. <a href='javascript:history.back();'>Reintentar</a>";
  99.         }else {
  100.             // "limpiamos" los campos del formulario de posibles códigos maliciosos
  101.             $usuario_nombre = mysql_real_escape_string($_POST['usuario_nombre']);
  102.             $usuario_clave = mysql_real_escape_string($_POST['usuario_clave']);
  103.             $usuario_clave = md5($usuario_clave);
  104.             // comprobamos que los datos ingresados en el formulario coincidan con los de la BD
  105.             $sql = mysql_query("SELECT usuario_id, usuario_nombre, usuario_clave FROM usuarios WHERE usuario_nombre='".$usuario_nombre."' AND usuario_clave='".$usuario_clave."'");
  106.             if($row = mysql_fetch_array($sql)) {
  107.                 $_SESSION['usuario_id'] = $row['usuario_id']; // creamos la sesion "usuario_id" y le asignamos como valor el campo usuario_id
  108.                 $_SESSION['usuario_nombre'] = $row["usuario_nombre"]; // creamos la sesion "usuario_nombre" y le asignamos como valor el campo usuario_nombre
  109.                 header("Location: index.php");
  110.             }else {
  111. ?>
  112.   Error, <a href="acceso.php" class="word2">&nbsp;&nbsp;Reintentar</a>
  113. <?php
  114.             }
  115.         }
  116.     }else {
  117.         header("Location: index.php");
  118.     }
  119. ?>
  120.   </div></div>
  121.     <div id="pie">
  122.     <div id="barrapie">
  123.             <div id="titulopie" class="texto11" >PRODUCTOS Y SERVICIOS</div>.....</html>

Si podeis ayudarme estaria agradecido
  #2 (permalink)  
Antiguo 18/05/2014, 06:15
Avatar de MaNuX0218  
Fecha de Ingreso: marzo-2014
Mensajes: 787
Antigüedad: 5 años, 8 meses
Puntos: 67
Respuesta: mensaje de error Inicio Sesion

¿Qué error te aparece...?

Saludos.
  #3 (permalink)  
Antiguo 18/05/2014, 06:19
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: mensaje de error Inicio Sesion

perdon se me habia pasado.Este error:

Código HTML:
Ver original
  1. Warning: Cannot modify header information - headers already sent by (output started at /home/u416660020/public_html/comprobar.php:945) in /home/u416660020/public_html/comprobar.php on line 1006
  #4 (permalink)  
Antiguo 18/05/2014, 06:26
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: mensaje de error Inicio Sesion

Nota. Como no aprarece todo el texto del archivo informo que la linea 945 del error se refiere a la linea 48 del codigo aqui publicado.
LA linea 1006 corresponde a la 109
gracias
  #5 (permalink)  
Antiguo 18/05/2014, 07:23
Avatar de MaNuX0218  
Fecha de Ingreso: marzo-2014
Mensajes: 787
Antigüedad: 5 años, 8 meses
Puntos: 67
Respuesta: mensaje de error Inicio Sesion

El problema está en la redirección (header() línea 109). Lo mejor para redireccionar utiliza javascript o otro metodo.

Saludos.
  #6 (permalink)  
Antiguo 18/05/2014, 10:17
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: mensaje de error Inicio Sesion

No sé mucho de php, podrias ayudarme a componer el codigo javascrtipt?
saludos y gracias
  #7 (permalink)  
Antiguo 18/05/2014, 10:30
Avatar de MaNuX0218  
Fecha de Ingreso: marzo-2014
Mensajes: 787
Antigüedad: 5 años, 8 meses
Puntos: 67
Respuesta: mensaje de error Inicio Sesion

Cita:
Iniciado por priamo Ver Mensaje
No sé mucho de php, podrias ayudarme a componer el codigo javascrtipt?
saludos y gracias
Código PHP:
Ver original
  1. <?php
  2.   if(isset($_POST['enviar'])) { // comprobamos que se hayan enviado los datos del formulario
  3.         // comprobamos que los campos usuarios_nombre y usuario_clave no estén vacíos
  4.         if(empty($_POST['usuario_nombre']) || empty($_POST['usuario_clave'])) {
  5.             echo "El usuario o la contraseña no han sido ingresados. <a href='javascript:history.back();'>Reintentar</a>";
  6.         }else {
  7.             // "limpiamos" los campos del formulario de posibles códigos maliciosos
  8.             $usuario_nombre = mysql_real_escape_string($_POST['usuario_nombre']);
  9.             $usuario_clave = mysql_real_escape_string($_POST['usuario_clave']);
  10.             $usuario_clave = md5($usuario_clave);
  11.             // comprobamos que los datos ingresados en el formulario coincidan con los de la BD
  12.             $sql = mysql_query("SELECT usuario_id, usuario_nombre, usuario_clave FROM usuarios WHERE usuario_nombre='".$usuario_nombre."' AND usuario_clave='".$usuario_clave."'");
  13.             if($row = mysql_fetch_array($sql)) {
  14.                 $_SESSION['usuario_id'] = $row['usuario_id']; // creamos la sesion "usuario_id" y le asignamos como valor el campo usuario_id
  15.                 $_SESSION['usuario_nombre'] = $row["usuario_nombre"]; // creamos la sesion "usuario_nombre" y le asignamos como valor el campo usuario_nombre
  16.                
  17.  
  18.             echo '<script type="text/javascript">window.location="index.php";</script>';
  19.  
  20.             }else {
  21. ?>
  22.  
  23. ...................


También puedes intentar probar con el header() poniendo la url completa.

Código PHP:
Ver original
  1. header('Location: http://dominio.com/index.php');

Saludos.
  #8 (permalink)  
Antiguo 18/05/2014, 10:55
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 11 años, 7 meses
Puntos: 326
Respuesta: mensaje de error Inicio Sesion

El error es básicamente pq antes de usar header en php NO puedes "imprimir" nada por pantalla ... Y tienes html antes del header... asiq sólo puedes usar js! (o cambiar tu script para evaluar php primero.... y segun este, mostrar html ) ;)
__________________
>> Eleazan's Source
>> @Eleazan
  #9 (permalink)  
Antiguo 19/05/2014, 13:23
Avatar de priamo  
Fecha de Ingreso: enero-2011
Ubicación: Valencia
Mensajes: 78
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: mensaje de error Inicio Sesion

Muchas gracias, he implementado la opcion javascript y ha funcionado.
Agradecido por la rapidez y la solucion dada.
Un saludo

Etiquetas: formulario, html, inicio, mensaje, 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 08:31.