Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Warning: Cannot modify header information - headers already sent by

Hola, necesito ayuda con este problema, al inciar sesión me sale el error "Cannot modify header information " en la linea 75 y 76 que corresponden a el código setcookie, busque la respuesta en este foro y suele ser los espacios, pero e mirado donde me sale error y demás archivos pero los saltos de linea son comúnes, no tengo erroneos, (no que yo considere). les agradecería me ayudaran.
<?php 
//FORMATEO BASE DE DATOS
if (!function_exists("GetSQLValueString")) {
	function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
	{
	  if (PHP_VERSION < 6) {
		$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
	  }
	
	  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
	
	  switch ($theType) {
		case "text":
		  $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
		  break;    
		case "long":
		case "int":
		  $theValue = ($theValue != "") ? intval($theValue) : "NULL";
		  break;
		case "double":
		  $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
		  break;
		case "date":
		  $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
		  break;
		case "defined":
		  $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
		  break;
	  }
	  return $theValue;
	}
}

//FORMATO DE CARACTERES
    header('Content-Type: text/html; charset=iso-8859-1');
	
//CONSULTA BASE DATOS
	mysql_select_db($database_conexion, $conexion);
	$query_DatosWeb = "SELECT * FROM d_datos";
	$DatosWeb = mysql_query($query_DatosWeb, $conexion) or die(mysql_error());
	$row_DatosWeb = mysql_fetch_assoc($DatosWeb);
	$totalRows_DatosWeb = mysql_num_rows($DatosWeb);
	
	$dato= array($row_DatosWeb['url'],$row_DatosWeb['url2'],$row_DatosWeb['titulo'],$row_DatosWeb['admin']);
	
	mysql_free_result($DatosWeb);



function nombre($iduser){
	
	 global $database_conexion, $conexion;
	
	mysql_select_db($database_conexion, $conexion);
	$query_DatosFuncion = sprintf("SELECT user FROM d_users WHERE id=%s",
	
		GetSQLValueString($iduser, "int"));
	
	
	
	
	$DatosFuncion = mysql_query($query_DatosFuncion, $conexion) or die(mysql_error());
	$row_DatosFuncion = mysql_fetch_assoc($DatosFuncion);
	$totalRows_DatosFuncion = mysql_num_rows($DatosFuncion);
	
	
    return $row_DatosFuncion['user'];
    
    mysql_free_result($DatosFuncion);
	
	
}
    
 function recordarsesion($user,$pass){
	setcookie("usercookie", $user, time() + (365 * 24 * 60 * 60),"/"); 
	setcookie("passcookie", $pass, time() + (365 * 24 * 60 * 60),"/");
}

if (isset($_COOKIE['usercookie']) && isset($_COOKIE['passcookie']) && !isset($_SESSION['iduser'])) {
	
		mysql_select_db($database_conexion, $conexion);
	$query_DatosLogin = sprintf("SELECT * FROM d_users WHERE user=%s AND password=%s",
	
	
	GetSQLValueString($_COOKIE['usercookie'], "text"),
	GetSQLValueString($_COOKIE['passcookie'], "text"));
	
	
	
	
	$DatosLogin = mysql_query($query_DatosLogin, $conexion) or die(mysql_error());
	$row_DatosLogin = mysql_fetch_assoc($DatosLogin);
	$totalRows_DatosLogin = mysql_num_rows($DatosLogin);
	
	if ($totalRows_DatosLogin==1){
		$_SESSION['iduser']=$row_DatosLogin['id'];
		$_SESSION['nombreuser']=$row_DatosLogin['user'];
		} 

			
	
    mysql_free_result($DatosLogin);
}
?>
0
Puntos
1271
Visitas
6
Resp
Por andresc9410 hace 91 meses
Principiante
Respuesta #1
hola, el error no esta en este fichero (al parecer), aunque suene repetitivo el error que te marca es por un salto de linea

comprueba el fichero conexion.php y login.php es muy posible ahí este el fallo, ya de paso comprueba todos los fichero php y se ves algo como esto:
<?php 

?>
             <----------------salto de linea
<?php 

?>
elimínalo..

salu2
0
Puntos
Por alber hace 91 meses
Administrador
Respuesta #2
Nada.. no veo nada raro..
<?php
error_reporting(E_ALL ^ E_DEPRECATED);
//SESSIONES
if (!isset($_SESSION)) {
  session_start();
}
    $hostname_conexion = "localhost";
    $database_conexion = "Dacfmovies";
    $username_conexion = "root";
    $password_conexion = "root";
    $conexion = mysql_pconnect($hostname_conexion, $username_conexion, $password_conexion) or trigger_error(mysql_error(),E_USER_ERROR); 
    include('inc/funciones.php')
?>
<?php require_once('../conexion.php');
    mysql_select_db($database_conexion, $conexion);
	$query_DatosLogin = sprintf("SELECT * FROM d_users WHERE user=%s AND password=%s",
	
	
	GetSQLValueString($_POST['user'], "text"),
	GetSQLValueString(md5($_POST['pass']), "text"));

	$DatosLogin = mysql_query($query_DatosLogin, $conexion) or die(mysql_error());
	$row_DatosLogin = mysql_fetch_assoc($DatosLogin);
	$totalRows_DatosLogin = mysql_num_rows($DatosLogin);

    if ($totalRows_DatosLogin==1){
        $_SESSION['iduser']=$row_DatosLogin['id'];
		$_SESSION['nombreuser']=$row_DatosLogin['user'];
        echo 'yes';
		
		if ($_POST['recordar']=='on'){
            
			recordarsesion($row_DatosLogin['user'],$row_DatosLogin['password']);
            
			}
        
		} else {
			echo 'error';
			}

	mysql_free_result($DatosLogin);
?>
0
Puntos
Por andresc9410 hace 91 meses
Principiante
Respuesta #3
no sera por esto??
error_reporting(E_ALL ^ E_DEPRECATED);
ten en cuenta que estas usando mysql podrias pasarlo a mysqli fácil https://datoweb.com/post/2486/ejemplos-de-como-usar-mysqli-de-manera-facil
0
Puntos
Por alber hace 91 meses
Administrador
Respuesta #4
No creo.. agg no! me tocaría modificar prácticamente todo el código, no hay otra forma, será ese el error?
0
Puntos
Por andresc9410 hace 91 meses
Principiante
Respuesta #5
no tienes que cambiar todo en código solo agregar una i donde veas mysql y cambiar la conexión, el error es un salto de linea y tiene que estar en alguna parte pero para poder localizarlo tendria que ver el proyecto completo

otra solución algo chapucera es con
error_reporting(0);
salu2 y suerte
0
Puntos
Por alber hace 91 meses
Administrador
Respuesta #6
Vale gracias por la ayuda, un saludo.
0
Puntos
Por andresc9410 hace 91 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate