Hola, me gustaria hacer un script en php para que muestre las entradas relacionadas por tags, estaria bueno que entre todos aportemos idea para ir mejorando el codigo. Yo masomenos tengo algo de comos se haria. Lo ideal es que se mostrara solo las entradas relacionadas que coencidan
2 tags minimo y que solo muestre
5 entradas relacionadas.
Podriamos hacer algo com esto:
Código PHP:
// Traemos la entrada actual
$query = "SELECT * FROM `entradas` WHERE idUnico = '$_GET[idUnico]'";
$resultado = mysql_query ($query, $dbConn);
$entradaActual = mysql_fetch_assoc ($resultado);
$arrEntrada = array();
// Listamos todas las entradas
$query = "SELECT * FROM `entrada` WHERE fechaPublicado < '".date('Y-m-d H:i:s')."' ORDER BY fechaPublicado DESC LIMIT 5";
$resultado = mysql_query ($query, $dbConn);
while ( $entrada = mysql_fetch_assoc ($resultado)) {
array_push( $arrEntrada,$entrada );
}
foreach ( $arrEntrada as $entrada) {
$nombre = $entrada['nombre'];
$contenido = $entrada['contenido'];
$tags = $entrada['tag'];
// separamos los tags que se encuentran separados por ","
$tag = explode(",", $tags);
$tag2 = explode(",", $entradaActual['tag']);
if($tag[0]==$tag2[0]) {
if($tag[1]==$tag2[1]) {
// mostramos la entrada relacionada
echo $nombre;
echo $contenido;
}}
if($tag[1]==$tag2[1]) {
if($tag[2]==$tag2[2]) {
// mostramos la entrada relacionada
echo $nombre;
echo $contenido;
}}
if($tag[2]==$tag2[2]) {
if($tag[3]==$tag2[3]) {
// mostramos la entrada relacionada
echo $nombre;
echo $contenido;
}}
}
Basicamente seria algo como eso. El problema que hay ahora es las condiciones de que sean iguales dos tag, como hacer algo mas generico, y no tener que condicionar por cada tag.