Foros del Web » Programando para Internet » PHP »

Problema con Registrados y invitados

Estas en el tema de Problema con Registrados y invitados en el foro de PHP en Foros del Web. Hola buenas. Tengo un problemilla y es el siguiente: En mi página index.php tengo noticias y más cosas, y tengo un apartado en el que ...
  #1 (permalink)  
Antiguo 19/04/2011, 04:37
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Problema con Registrados y invitados

Hola buenas.

Tengo un problemilla y es el siguiente:

En mi página index.php tengo noticias y más cosas, y tengo un apartado en el que pueden escribir comentarios y hay es donde tengo el problema:

Si esta registrado me gustaria que pusiese quien lo escribio y si no que salga Invitado. Logre hacer que me pusiera el nick si restringo la página, pero si hago eso, los invitados no pueden entrar a la web ya que redirige a la zona de logeo. Entonces lo que quiero es eso, que si esta logueado ponga su nombre y si no que salga como invitado.

Un saludo y gracias por todo.
  #2 (permalink)  
Antiguo 19/04/2011, 05:08
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Comprueba en un "if" si el usuario está logueado. Si lo está pones el nick con el que logueo, sino lo está simplemente pones "Invitado". Ejemplo:

Código PHP:
if (logueado())
     
$nick /* Aquí pones el nick del usuario logueado */;
else
     
$nick "Invitado"
La función logueado() es la forma en la que tengas de saber si un usuario está logueado o no, como no muestras código no puedo saber como lo haces.
  #3 (permalink)  
Antiguo 19/04/2011, 07:18
 
Fecha de Ingreso: septiembre-2008
Ubicación: Manises,Valencia
Mensajes: 114
Antigüedad: 16 años, 2 meses
Puntos: 13
Respuesta: Problema con Registrados y invitados

Adewalt, por favor.....

...Registrados e invitados...

...escribir comentarios y ahí es donde tengo el problema...

Pasemos de los acentos y comas, vale.

Pero cuidemos un poco más esa escritura, Gracias.
  #4 (permalink)  
Antiguo 19/04/2011, 09:32
 
Fecha de Ingreso: abril-2011
Ubicación: Iquitos, Peru
Mensajes: 113
Antigüedad: 13 años, 8 meses
Puntos: 31
Respuesta: Problema con Registrados y invitados

bueno si usas sesiones (logicamente tiene que utilizar sesiones cuando es logeo xD) hazle una conficional solo a la parte en donde vas a imprimir el nombre

Código PHP:
if($_SESSION["LOGIN"] != "")
 {
     echo 
$_SESSION["LOGIN"];
 }
 else
 {
    echo 
"Invitado";
 } 
  #5 (permalink)  
Antiguo 19/04/2011, 11:30
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por JMSystem Ver Mensaje
bueno si usas sesiones (logicamente tiene que utilizar sesiones cuando es logeo xD) hazle una conficional solo a la parte en donde vas a imprimir el nombre

Código PHP:
if($_SESSION["LOGIN"] != "")
 {
     echo 
$_SESSION["LOGIN"];
 }
 else
 {
    echo 
"Invitado";
 } 
Puede ser que lo haga con cookies, o algo más complejo que comprobar si un valor es vacío.
  #6 (permalink)  
Antiguo 19/04/2011, 11:56
 
Fecha de Ingreso: abril-2011
Ubicación: Iquitos, Peru
Mensajes: 113
Antigüedad: 13 años, 8 meses
Puntos: 31
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Puede ser que lo haga con cookies, o algo más complejo que comprobar si un valor es vacío.
mmm... cierto, en ese caso podria utilizar isset

Código PHP:
if(isset($_SESSION["LOGIN"])
{
     echo 
$_SESSION["LOGIN"];
 }
 else
 {
    echo 
"Invitado";
 } 
  #7 (permalink)  
Antiguo 19/04/2011, 14:53
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por fontanares Ver Mensaje
Adewalt, por favor.....

...Registrados e invitados...

...escribir comentarios y ahí es donde tengo el problema...

Pasemos de los acentos y comas, vale.

Pero cuidemos un poco más esa escritura, Gracias.

Lo siento, se me ha escapado el de ahi por el hay jeje!! un pequeño lapsus :S
  #8 (permalink)  
Antiguo 19/04/2011, 15:07
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Comprueba en un "if" si el usuario está logueado. Si lo está pones el nick con el que logueo, sino lo está simplemente pones "Invitado". Ejemplo:

Código PHP:
if (logueado())
     
$nick /* Aquí pones el nick del usuario logueado */;
else
     
$nick "Invitado"
La función logueado() es la forma en la que tengas de saber si un usuario está logueado o no, como no muestras código no puedo saber como lo haces.
Buenas.
He usado todos los que me has dejado y los de tu compañero JMSystem y nada de nada, me sale el siguiente error:
Parse error: parse error in C:\wamp\www\escalada\coger_nombre.php on line 67

o bién también este otro:

Notice: Undefined index: LOGIN in C:\wamp\www\escalada\coger_nombre.php on line 66
Invitado

Yo en la web hago lo siguiente:
Tengo una consulta SQL en el que el id_usuario=MM_Username para saber quien escribio el comentario. Entonces, la unica forma que logre hacerlo para que me inserte ese id_usuario a traves de MM_Username, es cogiendo el dreamweaver y añadir "restriccion de pagina" pero si hago eso, no podria entrar ningun invitado. Seguramente lo este haciendo mal, pero lo que queria seria eso que cualquiera pueda escribir un comentario y si esta logueado que me guarde ese id_usuario, y si no esta logeado que ponga invitado.

Espero no haberme enrollado mucho y que me haya podido explicar bien :S

Gracias a todos ;)
  #9 (permalink)  
Antiguo 19/04/2011, 15:14
 
Fecha de Ingreso: abril-2011
Ubicación: Iquitos, Peru
Mensajes: 113
Antigüedad: 13 años, 8 meses
Puntos: 31
Respuesta: Problema con Registrados y invitados

entendemos tu pregunta...restriccion de pagina solo se usa para una intranet o algo por el estilo

amigo puedes pones en que lineas te da error (pon tus lineas 66 y 67)
  #10 (permalink)  
Antiguo 19/04/2011, 15:24
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por adewalt Ver Mensaje
Buenas.
He usado todos los que me has dejado y los de tu compañero JMSystem y nada de nada, me sale el siguiente error:
Parse error: parse error in C:\wamp\www\escalada\coger_nombre.php on line 67

o bién también este otro:

Notice: Undefined index: LOGIN in C:\wamp\www\escalada\coger_nombre.php on line 66
Invitado

Yo en la web hago lo siguiente:
Tengo una consulta SQL en el que el id_usuario=MM_Username para saber quien escribio el comentario. Entonces, la unica forma que logre hacerlo para que me inserte ese id_usuario a traves de MM_Username, es cogiendo el dreamweaver y añadir "restriccion de pagina" pero si hago eso, no podria entrar ningun invitado. Seguramente lo este haciendo mal, pero lo que queria seria eso que cualquiera pueda escribir un comentario y si esta logueado que me guarde ese id_usuario, y si no esta logeado que ponga invitado.

Espero no haberme enrollado mucho y que me haya podido explicar bien :S

Gracias a todos ;)
Por los errores que muestras creo que estás copiando y pegando tal cual sin adaptar el código. El código que yo te he dado es genérico si no lo adaptas al tuyo no funcionará, igual que el código de JMSystem, en ese caso se ve claramente que no usas la variable que él ha usado en el ejemplo. Sin mostrar tu código es imposible que alguien te de un código para copiar y pegar y que funcione.

Dejando el código PHP a un lado... Dices de guardar en la base de datos el id del usuario si está logueado (entiendo que es un número y por tanto el campo será de tipo entero) y si no lo esta que ponga "Invitado", pero esto es un texto no puede guardarse como entero. Creo que tienes un error de diseño en la base de datos, no puedes usar el mismo campo para guardar un entero y una cadena de texto (salvo que guardes el entero como texto), pero igualmente habría un error de diseño en la base de datos ya que guardas como id un texto que no existe en la tabla de usuarios registrados.

Creo que deberías repasar los conceptos de diseño de bases de datos y ampliarlos/mejorarlos si fuese necesario.
  #11 (permalink)  
Antiguo 19/04/2011, 15:25
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por JMSystem Ver Mensaje
entendemos tu pregunta...restriccion de pagina solo se usa para una intranet o algo por el estilo

amigo puedes pones en que lineas te da error (pon tus lineas 66 y 67)

Madre mia que velocidades jeje, gracias.

Pues las lineas son el codigo: Codigo error (Parse error: parse error in C:\wamp\www\escalada\coger_nombre.php on line 64)

63 if(isset($_SESSION["LOGIN"])
64 {
65 echo $_SESSION["LOGIN"];
66 }
else
{
echo "Invitado";
}
?>

Error (Notice: Undefined index: LOGIN in C:\wamp\www\escalada\coger_nombre.php on line 63
Invitado )

63 if($_SESSION["LOGIN"] != "")
64 {
echo $_SESSION["LOGIN"];
}
else
{
echo "Invitado";
}
?>

Lo que no entiendo es lo siguiente. Con esto en teoria no funcionaria al 100% no? porque el problema estaria en meter el id_usuario, es decir, si esta logueado me tendria que guardar su id_usuario y si no lo esta que me ponga "0" porque tengo una consulta en la misma pagina para visualizar los comentarios y puedo añadirle que "0" es invitado. Pero aun asi, no se como guardar su id_usuario sin restriccion de pagina jeje hay tengo el problem :S

Si necesitas mas codigo avisame que te lo pego to jeje
  #12 (permalink)  
Antiguo 19/04/2011, 15:29
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Por los errores que muestras creo que estás copiando y pegando tal cual sin adaptar el código. El código que yo te he dado es genérico si no lo adaptas al tuyo no funcionará, igual que el código de JMSystem, en ese caso se ve claramente que no usas la variable que él ha usado en el ejemplo. Sin mostrar tu código es imposible que alguien te de un código para copiar y pegar y que funcione.

Dejando el código PHP a un lado... Dices de guardar en la base de datos el id del usuario si está logueado (entiendo que es un número y por tanto el campo será de tipo entero) y si no lo esta que ponga "Invitado", pero esto es un texto no puede guardarse como entero. Creo que tienes un error de diseño en la base de datos, no puedes usar el mismo campo para guardar un entero y una cadena de texto (salvo que guardes el entero como texto), pero igualmente habría un error de diseño en la base de datos ya que guardas como id un texto que no existe en la tabla de usuarios registrados.

Creo que deberías repasar los conceptos de diseño de bases de datos y ampliarlos/mejorarlos si fuese necesario.
Pues exacto, has dado en el clavo. Que es lo que tendria que modificar? y que habria que sustituir? :S es que no se como mirarlo, seguramente sea cambiar lo de lgin, pero no se por el que :S
  #13 (permalink)  
Antiguo 19/04/2011, 16:43
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por adewalt Ver Mensaje
Pues exacto, has dado en el clavo. Que es lo que tendria que modificar? y que habria que sustituir? :S es que no se como mirarlo, seguramente sea cambiar lo de lgin, pero no se por el que :S
Si quieres hacer las cosas bien te recomiendo que mires las tablas que tienes en la base de datos y como están relacionadas. Piensa en como resolver el problema de guardar el invitado sin romper la integridad referencial, así como otros problemas que creas que te pueden surgir en el futuro.

Aprende los conceptos más básicos de bases de datos como: integridad referencial, relaciones entre tablas, etc.

Si no quieres hacer eso entonces busca una solución rápida al problema que planteas aquí. Como asignarle un 0 al id si es invitado y saber que el 0 significa eso (como dijiste antes).
  #14 (permalink)  
Antiguo 20/04/2011, 01:38
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Si quieres hacer las cosas bien te recomiendo que mires las tablas que tienes en la base de datos y como están relacionadas. Piensa en como resolver el problema de guardar el invitado sin romper la integridad referencial, así como otros problemas que creas que te pueden surgir en el futuro.

Aprende los conceptos más básicos de bases de datos como: integridad referencial, relaciones entre tablas, etc.

Si no quieres hacer eso entonces busca una solución rápida al problema que planteas aquí. Como asignarle un 0 al id si es invitado y saber que el 0 significa eso (como dijiste antes).
Voy a echarle un ojo a las tablas, aunque no se me ocurre otro cosa que te dije lo del "0"
Y sabiendo una vez eso, sabrías como puedo hacer para que coja el id_usuario sin hacer restricción de pagina?

Un saludo, gracias.
  #15 (permalink)  
Antiguo 22/04/2011, 03:47
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Entonces ninguna ayuda para saber como coger valores de sesion sin restriccion de pagina??

Gracias.
  #16 (permalink)  
Antiguo 22/04/2011, 04:28
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por adewalt Ver Mensaje
Entonces ninguna ayuda para saber como coger valores de sesion sin restriccion de pagina??

Gracias.
La forma de hacerlo ya te la han dado, si no enseñas el código en el que haces el login es imposible saber en que variable guardas el nick del usuario.
  #17 (permalink)  
Antiguo 22/04/2011, 04:46
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
La forma de hacerlo ya te la han dado, si no enseñas el código en el que haces el login es imposible saber en que variable guardas el nick del usuario.
Lo siento, pense que habia quedado estancado y que no tenia que facilitar nada jeje

Aqui te dejo el codigo del login que uso:

Código PHP:
<?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['usuario'])) {
  
$loginUsername=$_POST['usuario'];
  
$password=$_POST['pass'];
  
$MM_fldUserAuthorization "";
  
$MM_redirectLoginSuccess "index.php";
  
$MM_redirectLoginFailed "login.php";
  
$MM_redirecttoReferrer false;
  
mysql_select_db($database_escalada$escalada);
  
  
$LoginRS__query=sprintf("SELECT nick, password FROM usuario WHERE nick=%s AND password=%s",
    
GetSQLValueString($loginUsername"text"), GetSQLValueString($password"text")); 
   
  
$LoginRS mysql_query($LoginRS__query$escalada) or die(mysql_error());
  
$loginFoundUser mysql_num_rows($LoginRS);
  if (
$loginFoundUser) {
     
$loginStrGroup "";
    
    
//declare two session variables and assign them
    
$_SESSION['MM_Username'] = $loginUsername;
    
$_SESSION['MM_UserGroup'] = $loginStrGroup;          

    if (isset(
$_SESSION['PrevUrl']) && false) {
      
$MM_redirectLoginSuccess $_SESSION['PrevUrl'];    
    }
    
header("Location: " $MM_redirectLoginSuccess );
  }
  else {
    
header("Location: "$MM_redirectLoginFailed );
  }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body>
<form id="form1" name="form1" method="POST" action="<?php echo $loginFormAction?>">
  <table width="746" border="1">
    <tr>
      <td>&nbsp;</td>
      <td colspan="2"><label>
        <input type="text" name="usuario" id="usuario" />
      </label></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="2"><label>
        <input type="text" name="pass" id="pass" />
      </label></td>
    </tr>
    <tr>
      <td><label>
        <input type="submit" name="button" id="button" value="Enviar" />
      </label></td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
  </table>
</form>
Gracias.
  #18 (permalink)  
Antiguo 22/04/2011, 05:45
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Viendo el código se ve claramente que guardas el nick en la variable: $_SESSION['MM_Username']

Por tanto el código que tendrías que usar para obtener el nick del usuario distinguiendo si es invitado o no es este:
Código PHP:
if (isset($_SESSION['MM_Username']))
     
$nick $_SESSION['MM_Username'];
else
     
$nick "Invitado"
Ahora en la variable $nick tendrás el nick del usuario (si está logueado) o "Invitado" si el usuario no está logueado.
  #19 (permalink)  
Antiguo 22/04/2011, 06:03
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Viendo el código se ve claramente que guardas el nick en la variable: $_SESSION['MM_Username']

Por tanto el código que tendrías que usar para obtener el nick del usuario distinguiendo si es invitado o no es este:
Código PHP:
if (isset($_SESSION['MM_Username']))
     
$nick $_SESSION['MM_Username'];
else
     
$nick "Invitado"
Ahora en la variable $nick tendrás el nick del usuario (si está logueado) o "Invitado" si el usuario no está logueado.
Muchas gracias por todo y la lata que te estoy dando :(
Pero he estado probando ese codigo y tengo unas dudillas, este codigo me almacenaria ya la variable con su ID y en caso de que no este saldria como invitado? Es que creo que lo estoy poniendo mal, he cambiado el codigo aqui por el que me has dado:
Código PHP:
$colname_insertar_tablon "-1";
if (isset(
$_SESSION['MM_Username'])) {
  
$colname_insertar_tablon $_SESSION['MM_Username'];

Te dejo mi codigo de donde estoy haciendo el insertar:

Código PHP:
<form method="post" name="form1" action="<?php echo $editFormAction?>">
                                  <table align="center">
                                    <tr valign="baseline">
                                      <td nowrap align="right">Mensaje:</td>
                                      <td><input type="text" name="mensaje" value="" size="32"></td>
                                    </tr>
                                    <tr valign="baseline">
                                      <td nowrap align="right">&nbsp;</td>
                                      <td><input type="submit" value="Insertar registro"></td>
                                    </tr>
                                  </table>
                                  <input type="hidden" name="fecha" value="">
                                  <input type="hidden" name="id_usuario" value="<?php echo $row_insertar_tablon['id_usuario']; ?>">
                                  <input type="hidden" name="MM_insert" value="form1">
                                  <?php echo $_SESSION['MM_Username']; ?>
                                </form>
Código PHP:
$colname_insertar_tablon "-1";
if (isset(
$_SESSION['MM_Username'])) {
  
$colname_insertar_tablon $_SESSION['MM_Username'];
}
mysql_select_db($database_escalada$escalada);
$query_insertar_tablon sprintf("SELECT id_usuario, nick FROM usuario WHERE nick = %s"GetSQLValueString($colname_insertar_tablon"text"));
$insertar_tablon mysql_query($query_insertar_tablon$escalada) or die(mysql_error());
$row_insertar_tablon mysql_fetch_assoc($insertar_tablon);
$totalRows_insertar_tablon mysql_num_rows($insertar_tablon);
?> 
Esto es lo que tengo actualmente, me funcionaria solo si hago restriccion de pagina. Muchas gracias por todo y en serio, perdona por no lograr entenderte :S
  #20 (permalink)  
Antiguo 22/04/2011, 06:22
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Tendrías que sustituir este código:
Código PHP:
if (isset($_SESSION['MM_Username'])) { 
  
$colname_insertar_tablon $_SESSION['MM_Username']; 

Por este:
Código PHP:
if (isset($_SESSION['MM_Username'])) { 
  
$colname_insertar_tablon $_SESSION['MM_Username']; 
} else {
  
$colname_insertar_tablon "Invitado"

Esto te podría dar como problema que no existe un usuario con nick "Invitado" en tu base de datos por tanto no tiene id y eso podría darte problemas (no estoy seguro al 100% pero creo que sí). Esto es ya un problema de diseño de la base de datos. Prueba el código, si no te da error perfecto, pero si te da error tendrás que mirar más la base de datos y ver como resolver ese problema (que el usuario "Invitado" no tenga id).
  #21 (permalink)  
Antiguo 22/04/2011, 13:21
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Tendrías que sustituir este código:
Código PHP:
if (isset($_SESSION['MM_Username'])) { 
  
$colname_insertar_tablon $_SESSION['MM_Username']; 

Por este:
Código PHP:
if (isset($_SESSION['MM_Username'])) { 
  
$colname_insertar_tablon $_SESSION['MM_Username']; 
} else {
  
$colname_insertar_tablon "Invitado"

Esto te podría dar como problema que no existe un usuario con nick "Invitado" en tu base de datos por tanto no tiene id y eso podría darte problemas (no estoy seguro al 100% pero creo que sí). Esto es ya un problema de diseño de la base de datos. Prueba el código, si no te da error perfecto, pero si te da error tendrás que mirar más la base de datos y ver como resolver ese problema (que el usuario "Invitado" no tenga id).
Buenas.
He sustituido ese codigo y nada de nada, he estado toda la tarde probando pero no lo consigo, la unica forma sigue siendo restringiendo la pagina para que me coja el id :S . He creado un usuario llamado invitado y me sigue sin ir.

Código PHP:
$colname_insertar_tablon "-1";
if (isset(
$_SESSION['MM_Username'])) { 
  
$colname_insertar_tablon $_SESSION['MM_Username']; 
} else {
  
$colname_insertar_tablon "Invitado"
}   
mysql_select_db($database_escalada$escalada);
$query_insertar_tablon "SELECT id_usuario, nick FROM usuario WHERE nick = 'MM_Username'";
$insertar_tablon mysql_query($query_insertar_tablon$escalada) or die(mysql_error());
$row_insertar_tablon mysql_fetch_assoc($insertar_tablon);
$totalRows_insertar_tablon mysql_num_rows($insertar_tablon);
?> 
Código PHP:
 <form method="post" name="form1" action="<?php echo $editFormAction?>">
                                  <table align="center">
                                    <tr valign="baseline">
                                      <td nowrap align="right">Mensaje:</td>
                                      <td><input type="text" name="mensaje" value="" size="32"></td>
                                    </tr>
                                    <tr valign="baseline">
                                      <td nowrap align="right">&nbsp;</td>
                                      <td><input type="submit" value="Insertar registro"></td>
                                    </tr>
                                  </table>
                                  <input type="hidden" name="fecha" value="">
                                  <input type="hidden" name="id_usuario" value="<?php echo $row_insertar_tablon['id_usuario']; ?>">
                                  <input type="hidden" name="MM_insert" value="form1">
                                </form>
Lo tengo todo bien no? es que es raro, parece que la unica forma para que me coja el id_usuario es restringiendo la pagina y me gustaria que funcionase tu codigo, ya que tiene logica. Si esta logeado que me guarde el id_usuario y si no que me ponga el id_usuario de invitado.
  #22 (permalink)  
Antiguo 22/04/2011, 13:44
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

También tengo el siguiente codigo que igual tiene algo que ver:

Código PHP:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO tablon (mensaje, fecha, id_usuario) VALUES (%s, %s, %s)",
                       
GetSQLValueString($_POST['mensaje'], "text"),
                       
GetSQLValueString($_POST['fecha'], "date"),
                       
GetSQLValueString($_POST['id_usuario'], "int")); 
Gracias ;)
  #23 (permalink)  
Antiguo 23/04/2011, 03:39
 
Fecha de Ingreso: enero-2008
Mensajes: 201
Antigüedad: 16 años, 11 meses
Puntos: 39
Respuesta: Problema con Registrados y invitados

Haz este último cambio ya que no entiendo porque está puesto así...

Código PHP:
$query_insertar_tablon "SELECT id_usuario, nick FROM usuario WHERE nick = 'MM_Username'"
Sustitúyelo por esto:
Código PHP:
$query_insertar_tablon "SELECT id_usuario, nick FROM usuario WHERE nick = '".$colname_insertar_tablon."'"
  #24 (permalink)  
Antiguo 24/04/2011, 06:20
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Muchas gracias.

Ha funcionado al 50% pero tamos ya casi jeje!! Ahora cuando inserto en el tablon, sale que lo ha insertado el usuario Invitado y me guarda su ID. Pero el otro 50% es que, aunque este logueado me pone que soy invitado de todos modos :S que podrá ser?

Gracias por todo ^^
  #25 (permalink)  
Antiguo 24/04/2011, 11:28
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Me he fijado, que cuando pongo <?php echo $_SESSION['MM_Username']; ?> para que me muestre el NIck del usuario, tampoco me sale. Me sale el siguiente error:

Notice: Undefined variable: _SESSION in C:\wamp\www\escalada\index.php on line 364

En esa linea de error, es donde esta para que me salga el nick del usuario.

Entonces igual es un problema del logeo que no envia bien los datos o problemas de restricciones? Porque si hago lo de restringir la pagina como te comente si que me funciona, pero claro, dejaria de funcionar lo de Invitado :S

Te dejo el codigo de logeo? o el error esta en el index?

Gracias por todo
  #26 (permalink)  
Antiguo 25/04/2011, 11:19
 
Fecha de Ingreso: agosto-2004
Mensajes: 21
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Problema con Registrados y invitados

Cita:
Iniciado por _Ruben_ Ver Mensaje
Haz este último cambio ya que no entiendo porque está puesto así...

Código PHP:
$query_insertar_tablon "SELECT id_usuario, nick FROM usuario WHERE nick = 'MM_Username'"
Sustitúyelo por esto:
Código PHP:
$query_insertar_tablon "SELECT id_usuario, nick FROM usuario WHERE nick = '".$colname_insertar_tablon."'"
Muchisimas gracias _Ruben_ ya funciona todo perfectamente :D en serio, muchas gracias por todo.

Me daba el ultimo error que te comentaba de que no estaba definida la variable de sesion, asi que tuve dandole vueltas y pensando que porque solo me funcionaba cuando "Restringia la pagina" y no sabia que tenia que meterle la variable "session_start();" pense que con el resto ya valia entonces me dio por meter esa linea y perfecto. Luego si os pasa a alguien, cuando le di la opcion de descoenctar usuario en la propia pagina me salia en ese codigo que habia un error, y es porque cuando restringia la pagina duplicaba esa linea y se hacia la picha un lio. Que contento jeje!!

Muchas gracias, no lo habria conseguido ni de coña.

Saludos.

Etiquetas: invitados, registrados
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

SíEste tema le ha gustado a 4 personas




La zona horaria es GMT -6. Ahora son las 23:29.