Ciao a tutti e da 2 giorni che ci sto dietro e ancora non trovo la soluzione.
Premetto che la pagina in questione non la ho scritta io ma un altro programmatore che si è liceniato da qualche mese ed ora devo finirla io.
Il problema e che quando si va sul form di ricerca
Codice PHP:
$resQ = @mysql_query($sqlQ);
if (!$resQ) erroreQuery($sqlQ, __file__, __line__);
echo "<table style='width: 100%'><tr>
<td style='width: 50%;vertical-align: top;'>
[b] Cerca Artista[/b]
<form method='post' > <INPUT type='TEXT' name='cercaArtista' maxlength='30' size='30' value=''> <input type='submit' value='Cerca'> </form>
";
dopo la ricerca i risultati vengono corretti ed inseriti nel secondo menù a tendina
Codice PHP:
$groupselect = '[b]Scegli un altro artista in questo gruppo[/b]
<select name="colA_id" onChange="location=this.options[this.selectedIndex].value;">
<option>-------</option>'.$groupoptions.'</select>
';
echo $groupselect;
da qui quando si clicca un nome dovrebbe caricarlo a video sulla pagina
Ma questo non avviene perche mi prende sempre l'ultimo risultato della query e non quello selezionato.
se invece di inziore con il form di ricerca libera inizio con il primo menù a tendina tutto funzione bene e senza errori e quando mi carica i risulttati sul 2° menu quello che seleziono mi stampa a video
Qui di seguito il codice completo della parte di pagina in questione
Codice PHP:
$resQ = @mysql_query($sqlQ);
if (!$resQ) erroreQuery($sqlQ, __file__, __line__);
echo "<table style='width: 100%'><tr>
<td style='width: 50%;vertical-align: top;'>
[b] Cerca Artista[/b]
<form method='post' > <INPUT type='TEXT' name='cercaArtista' maxlength='30' size='30' value=''> <input type='submit' value='Cerca'> </form>
";
echo "
[b]Gruppi di possibili artisti duplicati[/b]
<select name='groupA_id' onChange='location=this.options[this.selectedIndex].value;'>
<option>-------</option>";
$cnt=1;
while ($item=mysql_fetch_array($resQ)) {
if ($_REQUEST['groupA_id']==$item['artista_id']) {
$groupsel=$item;
$selected="selected";
} else $selected="";
echo "<option value=\"$phpself?groupA_id={$item['artista_id']}&cerca=".$cerca."&artistaA_id={$item['artista_id']}&artistaB_id={$_REQUEST['artistaB_id']}\" $selected>".$item['num']."-".trim(stripslashes($item['nome_cognome']))." / ".$categories[$item['categoria_id']]." / (".stripslashes($item['artista_id']).")</option>\n";
}
echo "</select>
";
// trova gli artisti simili e costruisce il <select> per gli artisti dello stesso gruppo soundex
if (strlen($_REQUEST['artistaA_id'])>0 or ($cerca != '') ){
if($cerca!='') {
$sql="SELECT *, soundex(replace(pagina_artista,'_','')) as sound FROM $table WHERE (nome_cognome LIKE ('%$cerca%'));";
} else {
$sql="SELECT *, soundex(replace(pagina_artista,'_','')) as sound FROM $table WHERE soundex(replace(pagina_artista,'_',''))='{$groupsel['sound']}'";
}
$res = @mysql_query($sql);
if (!$res) erroreQuery($sql, __file__, __line__);
while ($item=mysql_fetch_assoc($res)){
// prende tutti i dati dell'item selezionato
if ($item['artista_id']==$_REQUEST['artistaA_id']) {
$selected="selected";
$itemselA=$item;
}
else $selected="";
if ($cerca!='')
{
$ID_artista=$item['artista_id'];
$itemselA=$item;
//echo $item ;
}
if ($item['artista_id']!=$_REQUEST['artistaA_id']) {
$similar.= "<tr bgcolor=\"$color\"><td><ul>[*]<a href=\"$phpself?groupA_id={$_REQUEST['groupA_id']}&cerca=".$cerca."&artistaA_id={$_REQUEST['artistaA_id']}&artistaB_id={$item['artista_id']}\">".stripslashes($item['nome_cognome'])." / {$item['city']} / ".$categories[$item['categoria_id']]." ({$item['artista_id']})</a>[/list]</td></tr>";
}
if ($_REQUEST['artistaA_id']==$item['artista_id']) $selected="selected";
$groupoptions.="<option value=\"$phpself?groupA_id={$_REQUEST['groupA_id']}&cerca=".$cerca."&artistaA_id={$item['artista_id']}&artistaB_id={$_REQUEST['artistaB_id']}\" $selected>".trim(stripslashes($item['nome_cognome']))." / ".$categories[$item['categoria_id']]." / (".stripslashes($item['artista_id']).")</option>";
}
$groupselect = '[b]Scegli un altro artista in questo gruppo[/b]
<select name="colA_id" onChange="location=this.options[this.selectedIndex].value;">
<option>-------</option>'.$groupoptions.'</select>
';
echo $groupselect;
}
if (isset($itemselA)) {
extract($itemselA);
// recupera le news associate
unset($news_corr);
$sql="SELECT * FROM news n LEFT JOIN newscatnome_artisti na ON na.newsId=n.newsId WHERE na.artista_id=$artista_id";
$res = @mysql_query($sql);
if (!$res) erroreQuery($sql, __file__, __line__);
while ($news=mysql_fetch_array($res)) $news_corr.="[*]{$news['dataInizio']} - ".stripslashes($news['newsTitolo'])." ({$news['newsId']}) ";
$news_corr="<ul>$news_corr[/list]";
// recupera gli articoli del magazine associati
unset($mag_corr);
$sql="SELECT * FROM a_magazine m LEFT JOIN magazine_artisti ma ON ma.magazine_id=m.magazine_id WHERE ma.artista_id=$artista_id";
$res = @mysql_query($sql);
if (!$res) erroreQuery($sql, __file__, __line__);
while ($article=mysql_fetch_array($res)) $mag_corr.="[*]{$article['data_pubblica']} - ".stripslashes($article['titolo'])." ({$article['magazine_id']}) ";
$mag_corr="<ul>$mag_corr[/list]";
?>
Grazie a tutti