Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2010, 12:44
lancelotrym
 
Fecha de Ingreso: marzo-2010
Mensajes: 3
Antigüedad: 14 años, 2 meses
Puntos: 0
Problema con mysql_fetch_array

Buenas, primero quiero saludar a todos los foreros de foros del web ya que este es mi primer post.

Bueno os comento mi problema

estoy haciendo una pagina web en la que la pagina index.php del administrador muestra los ultimos registros de la base de datos (videos noticias y proyectos)

seria una cosa asi



El problema es el que veis en la IMG, en la celda de arriba a la derecha.

Os copio el codigo del index.php, omito la celda de proyectos, que la dejo como include para que sepan que esta hay

Código:
<title>CMD Index</title>
<p>
  <?php 

include("nav.inc"); 
include("../functions.php");
// Abre la conexión con la base de datos
include("../db_connect.php");
?>
<table width="80%" border="1">
  <tr>
    <td><?php


// Si delete tiene un post_id válido
$delete = (isset($_REQUEST["delete"]))?$_REQUEST["delete"]:""; 
if (preg_match("/^[0-9]+$/", $delete)) {

  $sql = "DELETE FROM posts WHERE post_id = $delete LIMIT 1";
  $result = mysql_query($sql);
  if (!$result) {
    $message = "Fallo al borrar noticia $delete. MySQL dijo" . mysql_error();
  } else {
    $message = "Noticia $delete borrada.";
    $message .= "<br />" . makerssfeed();
  }
}


// Selecciona todos los posts en db 
$sql = "SELECT post_id, title, DATE_FORMAT(postdate, '%e %b %Y at %H:%i') AS dateattime FROM posts ORDER BY postdate DESC";
$result = mysql_query($sql);
$myposts = mysql_fetch_array($result);

?><h1>Todas las Noticias </h1>

<?php
if (isset($message)) {echo "<p class='message'>".$message."</p>";}

if($myposts) {
  echo "<ol>\n";
  do {
    $post_id = $myposts["post_id"];
    $title = $myposts["title"];
    $dateattime = $myposts["dateattime"];
    echo "<li value='$post_id'>";
    echo "<a href='addnews.php?post_id=$post_id'>$title</a> posteado en $dateattime";
    echo " [<a href='".$_SERVER["PHP_SELF"]."?delete=$post_id' onclick='return confirm(\"¿Seguro?\")'>delete</a>]";
    echo "</li>\n";
  } while ($myposts = mysql_fetch_array($result));
  echo "</ol>";
} else {
  echo "<p>No hay noticias en la base de datos.</p>";
}
?></td>
    <td><?php


// Si delete tiene un post_id válido
$delete = (isset($_REQUEST["delete"]))?$_REQUEST["delete"]:""; 
if (preg_match("/^[0-9]+$/", $delete)) {

  $sql = "DELETE FROM postsvid WHERE post_id = $delete LIMIT 1";
  $resultvid = mysql_query($sql);
  if (!$result) {
    $message = "Fallo al borrar noticia $delete. MySQL dijo" . mysql_error();
  } else {
    $message = "Noticia $delete borrada.";
    $message .= "<br />" . makerssfeed();
  }
}


// Selecciona todos los posts en db 
$sql2 = "SELECT post_id, title, DATE_FORMAT(postdate, '%e %b %Y at %H:%i') AS dateattime FROM postsvid ORDER BY postdate DESC";
$result2= mysql_query($sql2);
$myposts2= mysql_fetch_array($result2);
?>
<h1>Todas los Videos </h1>

<?php
if (isset($message)) {echo "<p class='message'>".$message."</p>";}

if($myposts2) {
  echo "<ol>\n";
  do {
    $post_id = $myposts2["post_id"];
    $title = $myposts2["title"];
    $dateattime = $myposts2["dateattime"];
    echo "<li value='$post_id'>";
    echo "<a href='addpostvideos.php?post_id=$post_id'>$title</a> posteado en $dateattime";
    echo " [<a href='".$_SERVER["PHP_SELF"]."?delete=$post_id' onclick='return confirm(\"¿Seguro?\")'>delete</a>]";
    echo "</li>\n";
  } while ($myposts2 = mysql_fetch_array($result2));
  echo "</ol>";
} else {
  echo "<p>No hay videos en la base de datos.</p>";
}
?></td>
  </tr>
  <tr>
    <td><?php include("lista_proyectos.php"); ?></td>
    <td>&nbsp;</td>
  </tr>
</table>
He probado a cambiar los nombres de mypost pero nada T_T, he de decir que este codigo lo saque de un libro que tengo en casa y loq ue toy haciendo es modificarlo para adaptarlo a mis necesidades asique mis conocimientos de php son bastante basicos pero bueno creo que la sintaxis la entiendo XD

Gracias de antemano a todo el foro

EDITO:

Descubri que al ejecutar por ejemplo lista_videos.php por separado para ver si salia el error, descubro que sigue saliendo aun ejecutando el archivo de forma independiente.

os dejo el codigo de lo que seria la pagina lista_video.php

Código:
<?php

// Abre la conexión con la base de datos
include("../db_connect.php");
// Si delete tiene un post_id válido
$delete = (isset($_REQUEST["delete"]))?$_REQUEST["delete"]:""; 
if (preg_match("/^[0-9]+$/", $delete)) {

  $sql = "DELETE FROM postsvid WHERE post_id = $delete LIMIT 1";
  $result = mysql_query($sql);
  if (!$result) {
    $message = "Fallo al borrar el video $delete. MySQL dijo" . mysql_error();
  } else {
    $message = "Video $delete borrado.";
    $message .= "<br />" . makerssfeed();
  }
}


// Selecciona todos los posts en db 
$sql= "SELECT post_id, title, DATE_FORMAT(postdate, '%e %b %Y at %H:%i') AS post_id FROM postsvid ORDER BY postdate ASC";
$result = mysql_query($sql);
$myposts = mysql_fetch_array($result);
?><h1>Todos los Videos </h1>

<?php
if (isset($message)) {echo "<p class='message'>".$message."</p>";}

if($myposts) {
  echo "<ol>\n";
  do {
    $post_id = $myposts["post_id"];
    $title = $myposts["title"];
    $dateattime = $myposts["dateattime"];
    echo "<li value='$post_id'>";
    echo "<a href='addpostvideos.php?post_id=$post_id'>$title</a> posteado en $dateattime";
    echo " [<a href='".$_SERVER["PHP_SELF"]."?delete=$post_id' onclick='return confirm(\"¿Seguro?\")'>delete</a>]";
    echo "</li>\n";
  } while ($myposts = mysql_fetch_array($result));
  echo "</ol>";
} else {
  echo "<p>No hay videos en la base de datos.</p>";
}
?>

Última edición por lancelotrym; 18/03/2010 a las 12:51 Razón: Descubro otro fallo