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

Problema con session_regenerate_id

lo que pasa es casi en todas las paginas aparece un tipo de error como esto la solución de jose era
salta esa pare poniendo echo '<script language="javascript">window.location="'.$MM_redirectLoginSuccess.'"</script>';

Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent in /home/tiendad/public_html/apuntes/login.php on line 62

Warning: Cannot modify header information - headers already sent by (output started at /home/tiendad/public_html/apuntes/inc/funciones.php:90) in /home/tiendad/public_html/apuntes/login.php on line 71

estoy haciendo esto y hay errrores
http://tiendaslibres.com/apuntes/verpost.php?recordID=33
0
Puntos
3366
Visitas
5
Resp
Por bladedeybis hace 128 meses
Avanzado
Respuesta #1
en tu pagina web no podemos ver los códigos php que tienes ponlos en una respuesta a este tema las dos paginas que tienes que poner aquí con las que te salen en error osea funciones.php y login.php

en cuanto veamos el código te ayudo
0
Puntos
Por zeuskx hace 128 meses
Administrador Sitio web
Respuesta #2
codigo login
<?php require_once('Connections/conexion.php');

// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}
$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}
if (isset($_POST['usuarios'])) {
$loginUsername=$_POST['usuarios'];
$password=($_POST['contrasena']);
$MM_fldUserAuthorization = "";
$MM_redirectLoginSuccess = "login_ok.php";
$MM_redirectLoginFailed = "login_error.php";
$MM_redirecttoReferrer = false;
mysql_select_db($database_conexion, $conexion);
$LoginRS__query=sprintf("SELECT idUsuario,strNombre, strPassword FROM tblusuario WHERE strNombre=%s AND strPassword=%s",
GetSQLValueString($loginUsername, "text"), GetSQLValueString($password, "text"));
$LoginRS = mysql_query($LoginRS__query, $conexion) or die(mysql_error());
$row_LoginRS = mysql_fetch_assoc($LoginRS);
$loginFoundUser = mysql_num_rows($LoginRS);
if ($loginFoundUser) {
$loginStrGroup = "";
if (PHP_VERSION >= 5.1) {session_regenerate_id(true);} else {session_regenerate_id();}
//declare two session variables and assign them
$_SESSION['MM_Username'] = $loginUsername;
$_SESSION['MM_UserGroup'] = $loginStrGroup;
$_SESSION['MM_IdUsuario'] = $row_LoginRS["idUsuario"];
if (isset($_SESSION['PrevUrl']) && false) {
$MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
}
echo '<script language="javascript">window.location="'.$MM_redirectLoginSuccess.'"</script>';
}
else {
echo '<script language="javascript">window.location="'.$MM_redirectLoginFailed.'"</script>';
}
}
?>


codigo funciones
​<?php
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;
}
}
//sacar los datos de la pagina webbbb
mysql_select_db($database_conexion, $conexion);
$query_datosweb = "SELECT * FROM datosweb";
$datosweb = mysql_query($query_datosweb, $conexion) or die(mysql_error());
$row_datosweb = mysql_fetch_assoc($datosweb);
$totalRows_datosweb = mysql_num_rows($datosweb);
$nombreweb=$row_datosweb['nombre'];
$urlweb=$row_datosweb['url'];
$tituloweb=$row_datosweb['titulo'];
$descripcionweb=$row_datosweb['descripcion'];
$palabraclaveweb=$row_datosweb['keywords'];
mysql_free_result($datosweb);
//desconecatr usuario
if (!isset($_SESSION)) {
session_start();
}
// ** Logout the current user. **
$logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
$logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
//to fully log out a visitor we need to clear the session varialbles
$_SESSION['MM_Username'] = NULL;
$_SESSION['MM_UserGroup'] = NULL;
$_SESSION['PrevUrl'] = NULL;
unset($_SESSION['MM_Username']);
unset($_SESSION['MM_UserGroup']);
unset($_SESSION['PrevUrl']);

$logoutGoTo = $urlweb;
if ($logoutGoTo) {
echo '<script language="javascript">window.location="'.$logoutGoTo.'"</script>';
exit;
}
}
function ObtenerNombreUsuario($identificador)
{
global $database_conexion, $conexion;
mysql_select_db($database_conexion, $conexion);
$query_ConsultaFuncion = sprintf("SELECT tblusuario.strNombre FROM tblusuario WHERE tblusuario.idUsuario = %s", $identificador);
$ConsultaFuncion = mysql_query($query_ConsultaFuncion, $conexion) or die(mysql_error());
$row_ConsultaFuncion = mysql_fetch_assoc($ConsultaFuncion);
$totalRows_ConsultaFuncion = mysql_num_rows($ConsultaFuncion);
return $row_ConsultaFuncion['strNombre'];
mysql_free_result($ConsultaFuncion);
}
function ObtenerNombreCategoria($identificador)
{
global $database_conexion, $conexion;
mysql_select_db($database_conexion, $conexion);
$query_ConsultaFuncion = sprintf("SELECT tblcategoria.strDescripcion FROM tblcategoria WHERE tblcategoria.idCategoria = %s", $identificador);
$ConsultaFuncion = mysql_query($query_ConsultaFuncion, $conexion) or die(mysql_error());
$row_ConsultaFuncion = mysql_fetch_assoc($ConsultaFuncion);
$totalRows_ConsultaFuncion = mysql_num_rows($ConsultaFuncion);

return $row_ConsultaFuncion['strDescripcion'];
mysql_free_result($ConsultaFuncion);
}
?>
0
Puntos
Por bladedeybis hace 128 meses
Avanzado
Respuesta #3
tienes una tabla para la categoria? tbl.categoria no lo entiendo ademas en el cerrar sesión tienes que cerrar otra variable de sesión que es la id mira

tu tienes estas 3
$_SESSION['MM_Username'] = NULL;
$_SESSION['MM_UserGroup'] = NULL;
$_SESSION['PrevUrl'] = NULL;
y son 4 en total
$_SESSION['MM_Username'] = NULL;
$_SESSION['MM_UserGroup'] = NULL;
$_SESSION['PrevUrl'] = NULL;
$_SESSION['MM_IdUsuario'] = NULL;
te recomiendo que vuelvas a hacer el tema del login en tu maquina local y repasando los videos para hacerlo todo igual, piensa que si a todos le funciona a ti también

a veces las prisas para tenerlas online de forma urgente no sale bien
0
Puntos
Por zeuskx hace 128 meses
Administrador Sitio web
Respuesta #4
ok gracias...... repasare de nuevoooooooooooooooooo
0
Puntos
Por bladedeybis hace 128 meses
Avanzado
Respuesta #5
tengo la solución mira haz lo siguiente deja el login tal cual esta en los vídeos que viste y sustituye esto
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}
por esto
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  session_start();
}
error_reporting (0);
con eso lo tienes listo lo puedes probar en esta demo http://d1.datoweb.com/
user:demo
password:demo
email:demo@hotmail.com
0
Puntos
Por zeuskx hace 128 meses
Administrador Sitio web
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate