Ver Mensaje Individual
  #12 (permalink)  
Antiguo 18/02/2008, 14:17
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Sistema de Noticias (aporte)

Hola... en estos momentos estoy revisando tu código. No se si sea problema de mi navegador, pero veo que en vez de comillas [" (“)] hay [”] y en vez de ['] hay [' (')]. Esto me está causando problemas a la hora de ejecutar el código.

Ahora, estoy en el archivo

add-categoria.php

Línea 5:
Código PHP:
if(isset($_POST['enviar']) && $_POST['enviar'] == 'Enviar'){ 
Podría simplemente ir:
Código PHP:
if($_POST['enviar'] == ‘Enviar'){ 
Línea 9, 10, 11, 12:
Código PHP:
$catCategoria $_POST['catCategoria'];
// hacemos el INSERT en la BD
$sqlInsertCat mysql_query("INSERT INTO sn_categorias (catCategoria)
VALUES ('$catCategoria')"
$db_link
No haces ningún tipo de prevención de SQL injection. Aunque se supone que esta página será usada sólo por unos cuantos usuarios permitidos, podría causar problemas a la hora de crear una categoría como O'Reilly si magig-quotes está desactivado (PHP6 será así por defecto). Usa la función mysql_real_escape_string() antes de insertar los datos a la base de datos.

Además, no estaría demás el uso de la función trim()

add-noticia.php

Línea 5: idem

Línea 7:
Código PHP:
if(!empty($_POST['notTitulo']) && $_POST['notTexto'] &&
$_POST['notCategoriaID']){ 
Sólo usaste empty en el primer caso. Ten en cuenta que siempre los campos existirán, por lo que no está validando el texto ni la categoria
Código PHP:
if(!empty($_POST['notTitulo']) && !empty($_POST['notTexto']) &&
!empty(
$_POST['notCategoriaID'])){ 
La misma sugerencia a la hora de insertar los campos a la base de datos que en el caso anterior.

Segunda parte del tutorial
Cita:
NOTA: El archivo list-noticia.php tiene una característica, en caso de que no se haya echo clic en ninguna categoría, se mostrarán todas las noticias, de lo contrario, se mostrarán las noticias que pertenezcan a la categoría pedida.
Segunda vez que te lo hago notar (falta una [h])

list-categoria.php

Línea 4:
Código PHP:
or die(mysql_error); 
Faltan un par de paréntesis en la función mysql_error()

list-noticia.php

Línea 18:
Verificar los datos antes de hacer la consulta

Línea 26:
Código PHP:
echo nl2br("$rowNot[notTexto]");
echo 
nl2br($rowNot['notTexto']); 


Un saludo,