Notizie simili PHP + MYSQL

grudge61

Nuovo Utente
11 Ago 2010
2
0
0
Salve gente, scusate ma sono nuovo sia del forum che di Mysql..Vengo subito al problema:

Sto strutturando un giornale telematico e nella scheda news sto inserendo le notizie simili, ossia notizie con gli stessi tag di quella che si sta visualizzando. Ho già buttato giù una prima bozza e già spuntano i primi problemi: Incollo la parte del codice interessato..

PHP:
<?php
//Eseguo la query di estrazione dati
$sql = mysql_query("SELECT * FROM news WHERE id_news = '$id_news'");
 	// controllo sulla presenza in tabella del record corrispondente dell'id richiesto
	if(mysql_num_rows($sql) > 0){
		//Estraggo i dati
		while ($dati = mysql_fetch_assoc($sql)) {
			//Converto il risultato in un array per la ricerca nel database
			$tag = explode("-", $dati['tag_news']);
		}
	}
$sql_tag = mysql_query("SELECT * FROM news WHERE tag_news REGEXP '$tag[0]|$tag[1]|$tag[2]' <> '$id_news' ");
	// Controllo che la ricerca tramite i tag inseriti abbia dato buon esito
	if(mysql_num_rows($sql_tag) > 0){

In pratica, partendo dall'id prelevato tramite GET estrapolo dalla colonna 'tag_news' i tag relativi alla news (nel formato "pippo-paperino-pluto"), converto il risultato in un array separando i vari tag con la funzione explode. Successivamente controllo nel DB che ci siano altre news con gli stessi tag.

Il mio problema è che da questi risultati dovrei escludere quello che sto visualizzando (ipotizzato con WHERE <> $id_news) cosa che non mi riesce in alcun modo.. Ringrazio in anticipo eventuali risposte..
 
Prova così:

PHP:
$sql_tag = mysql_query("SELECT * FROM news WHERE tag_news REGEXP '$tag[0]|$tag[1]|$tag[2]' AND id_news <> '$id_news' ");
 
Grandioso! A volte mi rendo conto di quanto le cose più semplici stiano dietro l'angolo..grazie mille per l'aiuto! Spero di essere anch'io d'aiuto per qualcun'altro con il mio stesso problema
 

Discussioni simili