Join tra tabelle + echo valori condivisi

Ciao a tutti. Ho un problemino con php-sql e database. Ho scritto un papiro per essere chiara ma dovrebbe essere un problema di facile risoluzione ;)

In una pagina php ho una tabella che tratta di backup di progetti, la tabella funge da interfaccia semi-grafica di un database.

In sostanza tutti i dati del db "Backup" sono trasferiti in lettura su questa tabella per rendere la comprensione dei dati più agevole.

L'intestazione di tabella è :

IdBackup NomeCommessa IdCliente IdTipoCommessa IdTipoBackup Data Numero Keywords

IdCliente ad esempio richiama un numero nella tabella "Backup", il nome del cliente che però corrisponde a quell' id è nella tabella "Cliente".

Mi hanno detto di provare con l'operazione di JOIN, ho provato ma non riesco ad applicarlo...

Nella mia pag ho la selezione dati:

$query = "SELECT IdBackup,NomeCommessa,IdCliente,IdTipoCommessa,IdTipoBackup,Data,Numero,Keywords FROM Backup";

poi l'invio della query..

poi ho il ciclo che prende i dati

while ($row = mysql_fetch_assoc($result)) {
    $IdBackup  = htmlentities($row['IdBackup']);
    $NomeCommessa = htmlentities($row['NomeCommessa']);
    $IdCliente = htmlentities($row['IdCliente']);
    $IdTipoCommessa = htmlentities($row['IdTipoCommessa']);
    $IdTipoBackup = htmlentities($row['IdTipoBackup']);
    $Data = htmlentities($row['Data']);
    $Numero = htmlentities($row['Numero']);
    $Keywords = htmlentities($row['Keywords']);

e la tabella con l'echo dei valori:

echo "<tr>
            <td>$IdBackup</td>
            <td>$NomeCommessa</td>
            <td>$IdCliente</td>
            <td>$IdTipoCommessa</td>
            <td>$IdTipoBackup</td>
            <td>$Data</td>
            <td>$Numero</td>
            <td>$Keywords</td>
        </tr>";
}

Usando il JOIN ho costruito a parte la formula:

$join_cliente = mysql_query("SELECT NomeCliente FROM Cliente JOIN Backup USING (IdCliente)");
        while ($row = mysql_fetch_assoc($join_cliente)) {
             echo $row['NomeCliente']." ";
              }

che sputa fuori dei nomi (corretti - cioè i nomi della tabella Cliente che corrispondono all'elenco ordinato di IdCliente nella tabella Backup) ma cmq non riesco a mescolare questa formula con la mia pagina...

I nomi dei Clienti devono comparire in corispondenza dei loro Id...

Questa è la tabella finale dove a quanto pare devo fare una marea di Join!

potete darmi una mano??

inviato 8 anni fa
BordeauxPrugna
X 0 X

Ti basta una sola query per estrarre tutti i dati:

SELECT 
   B.IdBackup, B.NomeCommessa, B.IdCliente, B.IdTipoCommessa, B.IdTipoBackup, 
   B.Data, B.Numero, B.Keywords,
   C.NomeCliente
FROM
   Backup B, Clienti C
WHERE
   B.IdCliente = C.IdCliente

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

grazie  ;D Proprio quello che cercavo!! :-[

risposto 8 anni fa
BordeauxPrugna
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda