Premetto che la struttura delle tabelle interessate non è InnoDB e quindi non posso sfruttare le funzioni di foreignkey (almeno mi sembra di aver capito che funzioni così).
Comunque, vorrei fare una query su delle tabelle del CMS Joomla.
Una, jos_comprofiler, contiene il sesso dell'utente (è testuale per il meccanismo semi-contorto di Community Builder, estensione di Joomla).
L'altra, jos_users, contiene la mail dell'utente.
Come posso quindi mostrare le mail di tutti gli utenti maschi?
Prendendo qualcosa dal web ho fatto così:
ma nella pagina compare solo "Array"Codice PHP:
// Performing SQL query
$query = "SELECT id FROM jos_comprofiler WHERE cb_sesso LIKE 'Uomo'";
$result = mysql_query($query) or die('Query failed: ' . mysql_error());
while ($ris = mysql_fetch_array($result, MYSQL_ASSOC)) {
$resultqpar = array();
foreach ($ris as $risn) {
//per ogni risultato della query precedente (ogni uomo) faccio una select sulla tabella utenti ed aggiungo il risultato all'array resultqpar
$qproc = "SELECT email FROM jos_users WHERE id = $risn";
$resultqp = mysql_query($qproc) or die('Query failed: ' . mysql_error());
$resultqpf = mysql_fetch_array($resultqp);
$resultqpar[] = $resultqpf;
mysql_free_result($resultqp);
}
}
// Printing results in HTML
echo "<table>\n";
echo "\t<tr>\n";
foreach ($resultqpar as $col_value) {
echo "\t\t<td>$col_value</td>\n";
}
echo "\t</tr>\n";
echo "</table>\n";
// Free resultset
mysql_free_result($result);
Siccome da niubbo immagino di aver complicato moltissimo il procedimento, insultatemi pure![]()