estoy creando un proyecto, y para ello necesito un sistema de noticias. Me iba todo bien, iba haciéndolo a mi ritmo, pero lo fui dejando de lado hasta que ayer me puse de nuevo.
Sin tocar nada, corrí el script en el server local (localhost) desde Wamp Server y me daba un error, que lo pondré más adelante. Pero después, lo corría en otro servidor, un free server y no me salía ningún error, no sé si será porque se ha cambiado la configuración de PHP o yo que sé. Primero, el código de la página es este:
Código PHP:
Ver original
<?php // Página para mostrar las noticias que tenemos en la base de datos. // Incluimos el archivo de conexión, en este caso conect.php include("conect.php"); include("cat.php"); ?> <!-- Creamos el div de las noticias --> <div style="float:left;width:50%;"> <?php // Mostramos un titulo echo "<h1>Noticias</h1><br />"; // Seleccionamos los datos de la base de datos. // Hacemos el array de todas las celdas de la tabla de noticias. // Mostramos el título, hipervinculado a otra página donde se motrarán los comentarios. echo "<a href=m.php?id=$not[ID_noticias]><h1>$not[titulo]</h1></a>"; // Mostramos el contenido de la noticia. echo nl2br($not['noticia'])."<br /><br /> Posteado por $not[autor] el $not[fecha] a las $not[hora]"; // Hacemos un select para comprobar si el usuario está logueado o no y mostrar o no las opciones de editar o borrar. $slctsgrdd = mysql_query("select count(USR_id) from usuarios where nick_usr = '$_COOKIE[nick]' or email_usr = '$_COOKIE[email]' or pass_usr = '$_COOKIE[pass]'")or die(mysql_error); // Si la cookie, tiene el mismo valor que el de la celda de la BD, significará que está logueado, si la cookie está "vacía" significará que no está logueado. if($_COOKIE['nick'] == $not['autor'] or $_COOKIE['rango'] == 1){ echo " || <a href=editnot.php?id=$not[ID_noticias]>Editar</a> || <a href=borrar.php?id=$not[ID_noticias]>Borrar</a>."; } } echo "<br /><br />"; } ?>
El error es el siguiente:
Cita:
La línea 28 es la siguiente:Notice: Undefined index: nick in C:\wamp\www\SistemaNoticias\index.php on line 28
Código PHP:
$slctsgrdd = mysql_query("select count(USR_id) from usuarios where nick_usr = '$_COOKIE[nick]' or email_usr = '$_COOKIE[email]' or pass_usr = '$_COOKIE[pass]'")or die(mysql_error);
Si el usuario ya ha iniciado sesión en el sistema, no sale ningún error, ya que aunque este cierre sesión, seguirán existiendo las cookies mencionadas anteriormente, aunque vacías, pero seguirán estando creadas.
Muchas gracias a los usuarios de Foros del Web por la ayuda que prestan, gracias por adelantado.