Cita:
Iniciado por naikon101 Código PHP:
$query = "SELECT cat_id FROM cat2post WHERE post_id='$id'";
$result2 = mysql_query ($query);
for ($f=0; $f<3; $f++){
$cat_id_array = mysql_fetch_array($result2);
$cat_id = $cat_id_array[$f];
......
¿Cual puede ser el problema? Agradecería cualquier ayuda, pues estoy completamente bloqueado.
Gracias
Cita:
Iniciado por naikon101 He intentado reescribir el código por completo y se ha solucionado, pero no tengo muy claro porqué o cual era el fallo. Este fue el resultado por si a alguien le sirve:
Código PHP:
$query = "SELECT category_id FROM post2cat WHERE post_id='$id'";
$result = mysql_query ($query);
while ($cat_id_array = mysql_fetch_array($result)){
$cat_id = $cat_id_array ["category_id"];
$query = "SELECT cat_name FROM categories WHERE cat_ID='$cat_id'";
$result2 = mysql_query($query);
$cat_name_array = mysql_fetch_array($result2);
$cat_name_temp = $cat_name_array[0];
$cat_name = $cat_name." ".$cat_name_temp;
}
bueno para empezar si que cambiaste mucho tu código, en especial esto "SELECT cat_id FROM cat2post WHERE post_id='$id'" por esto "SELECT category_id FROM post2cat WHERE post_id='$id'", pero en fin si dices que te devolvia un valor supongo que estaba bien, sin embargo creo que tu error estaba aquí
Código PHP:
for ($f=0; $f<3; $f++){
$cat_id_array = mysql_fetch_array($result2);
$cat_id = $cat_id_array[$f];
......
el problema radica en el mysql_fetch_array() debería estar fuera del for para poder recorrer el arreglo posteriormente, ya que al ejecutar este comando se crea un arreglo con todos los resultados de tu consulta y al tenerlo dentro del for incrementara el arreglo con los mismos resultados(lo mas probable es tener inconsistencias en el resultado), por tanto te debia de quedar así
Código PHP:
$cat_id_array = mysql_fetch_array($result2);
for ($f=0; $f<3; $f++){
$cat_id = $cat_id_array[$f];
......