Problema con favoritos
Hola a todos. Antes que nada un saludo puesto que soy nuevo por aquí.
Hace meses que sigo el Curso pagina web responsive y estoy atascado con el tema de favoritos, que he rescatado del Curso pagina web avanzada.
El asunto es que he resuelto con éxito incluir los post en favoritos, pero he ido más allá y lo estoy intentando con incluir autores a favoritos, que es donde estoy atascado.
Incluirlos en la base de datos no me ha supuesto problema, pero no soy capaz de mostrar en el html el recurrente "Ya favorito" y que desaparezca el link para añadir a favoritos.
La consulta para la inserción en base de datos es la siguiente (Repito que la inserción se realiza con éxito):
(id_autor_creador) es el usuario que incluye al autor en favoritos.
(id_autor) es, por lógica, el autor que se añade a la lista de favoritos.
/---------------------------------/
El código HTML es este:
/----------------------------------/
Por último, la función para determinar si el autor ya está en favoritos es esta:
Gracias y repito el saludo.
EDITO: Si fuera posible indicarme cómo mostrar un aviso de que se ha incluido en favoritos, sería igualmente de agradecer.
Editado
Hace meses que sigo el Curso pagina web responsive y estoy atascado con el tema de favoritos, que he rescatado del Curso pagina web avanzada.
El asunto es que he resuelto con éxito incluir los post en favoritos, pero he ido más allá y lo estoy intentando con incluir autores a favoritos, que es donde estoy atascado.
Incluirlos en la base de datos no me ha supuesto problema, pero no soy capaz de mostrar en el html el recurrente "Ya favorito" y que desaparezca el link para añadir a favoritos.
La consulta para la inserción en base de datos es la siguiente (Repito que la inserción se realiza con éxito):
<?php require_once('../conexion.php'); $accion_verpost = sprintf("INSERT INTO autor_favorito (id_autor_creador, id_autor) VALUES (%s, %s)", formatearcadena($_SESSION['iduser'], "int"), formatearcadena($_GET['favoritosaut'], "int")); $consulta_verpost=mysqli_query($conexion,$accion_verpost) or die(mysqli_error()); header("Location:".$_SERVER['HTTP_REFERER']); ?>(autor_favorito) es la tabla.
(id_autor_creador) es el usuario que incluye al autor en favoritos.
(id_autor) es, por lógica, el autor que se añade a la lista de favoritos.
/---------------------------------/
El código HTML es este:
$slugpost=$_GET['slug']; <p>AUTOR FAVORITO</p> <?php if (isset($_SESSION['iduser'])){?> <div id="usuario_op"> <?php if (autor_en_favoritos($_SESSION['iduser'],$slugpost)){?> <a href="<?php echo $dato[1]; ?>inc/favorito-autor.php?favoritosaut=<?php echo $datos_verpost['id_autor'] ?>">Agregar a mis favoritos</a> <?php } else echo "Añadido como favorito";?> <?php }?>NOTA: yo utilizo 'slug' en lugar de 'seo'.
/----------------------------------/
Por último, la función para determinar si el autor ya está en favoritos es esta:
//Saber si el autor ya esta en favoritos function autor_en_favoritos($iduser, $idpost) { global $conexion; $accion_AutorEnFavoritos = sprintf("SELECT * FROM autor_favorito WHERE id_autor=%s AND id_relato = %s", formatearcadena($iduser, "int"), formatearcadena($idpost, "int")); $consulta_AutorEnFavoritos=mysqli_query($conexion,$accion_AutorEnFavoritos); $datos_AutorEnFavoritos=mysqli_fetch_assoc($consulta_AutorEnFavoritos); $cantidad_AutorEnFavoritos=mysqli_num_rows($consulta_AutorEnFavoritos); if ($cantidad_AutorEnFavoritos=="") return true; else return false; mysqli_free_result($consulta_AutorEnFavoritos); }NOTA: he dejado las variables y lo incluido en el WHERE tal cual lo tengo para el post favorito. Más que nada porque aquí es donde no tengo la menor idea de cómo hacer las relaciones.
Gracias y repito el saludo.
EDITO: Si fuera posible indicarme cómo mostrar un aviso de que se ha incluido en favoritos, sería igualmente de agradecer.
Editado
0
Puntos
Puntos
1147
Visitas
Visitas
3
Resp
Resp
Por javierBM hace 85 meses
Principiante
Respuesta #1
hola, loas autores favoritos donde quieres mostrarlos? en una pagina dedicada a autores favoritos o poner todos sus artículos directamente en la pagina post favoritos?
perdona las preguntas pero algo difícil de entender tu consulta ya que no podemos ver el proyecto completo como es obvio
salu2
perdona las preguntas pero algo difícil de entender tu consulta ya que no podemos ver el proyecto completo como es obvio
salu2
1
Puntos
Puntos
Por alber hace 85 meses
Administrador
Respuesta #2
Hola, alber. Gracias por tu interes. Te explico.
yo tengo en el perfil de usuario un listado con los post favoritos y otro con los autores favoritos. Esto lo tengo hecho y funcional.
Luego, en los post tengo un boton para añadir el post a favoritos y funciona bien, ya que no solo los guarda en la base de datos, sino que tambien sustituye el típico "Añadir post a favoritos" por el "Ya en favoritos", impidiendo, por lo tanto, que vuelva a incluirlo.
El problema lo tengo con el botón "Añadir autor a favoritos" que también está en cada post. Este me guarda bien los autores en su tabla, pero no soy capaz de conseguir que "Añadir autor a favoritos" se sustituya por "Ya en favoritos" e impida que lo vueva a incluir dos, tres, o las veces que sea.
Si no estoy equivocado, creo que el problema lo tengo en la function autor_en_favoritos($iduser, $idpost) que sería la que mostrara el "Ya en favoritos" e impida que se añada varias veces el mismo autor. Obviamente, al estar el autor en favoritos, en todos sus post debería aparecer por defecto el "Ya en favoritos".
Por cierto, lamento si no me expliqué con claridad la primera vez (yo pensaba que sí).
Gracias de nuevo.
yo tengo en el perfil de usuario un listado con los post favoritos y otro con los autores favoritos. Esto lo tengo hecho y funcional.
Luego, en los post tengo un boton para añadir el post a favoritos y funciona bien, ya que no solo los guarda en la base de datos, sino que tambien sustituye el típico "Añadir post a favoritos" por el "Ya en favoritos", impidiendo, por lo tanto, que vuelva a incluirlo.
El problema lo tengo con el botón "Añadir autor a favoritos" que también está en cada post. Este me guarda bien los autores en su tabla, pero no soy capaz de conseguir que "Añadir autor a favoritos" se sustituya por "Ya en favoritos" e impida que lo vueva a incluir dos, tres, o las veces que sea.
Si no estoy equivocado, creo que el problema lo tengo en la function autor_en_favoritos($iduser, $idpost) que sería la que mostrara el "Ya en favoritos" e impida que se añada varias veces el mismo autor. Obviamente, al estar el autor en favoritos, en todos sus post debería aparecer por defecto el "Ya en favoritos".
Por cierto, lamento si no me expliqué con claridad la primera vez (yo pensaba que sí).
Gracias de nuevo.
0
Puntos
Puntos
Por javierBM hace 85 meses
Principiante
Respuesta #3
Hola de nuevo.
Regreso para decir que ya resolví el problema que, dicho sea de paso, era una tontería. Tanto como cambiar esto:
Regreso para decir que ya resolví el problema que, dicho sea de paso, era una tontería. Tanto como cambiar esto:
<?php if (autor_en_favoritos($_SESSION['iduser'],$slugpost)){?>por esto:
<?php if (autor_en_favoritos($_SESSION['iduser'],$datos_verpost['id_autor'])){?>
0
Puntos
Puntos
Por javierBM hace 85 meses
Principiante