Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Non riesco ad estrarre dati da doppia tabella

    Allora:
    Io ho due tabelle quasi uguali...

    immagini_Donne
    id id_personaggio categoria file_immagine

    video_donne
    id id_personaggio categoria file_antemprima file_video

    Il problema è che non riesco ad estrarli...mi stampa una sessantina di record (quando dovrebbero essere 9 x la tabella foto e 3 per quella video)
    Se vi puo'essere utile..mi stampa ripetutemente l' id 1,2,3 della tabella video...sempre quelle tre...

    $sql_materiale="SELECT * FROM immagini_donne,video_donne WHERE immagini_donne.id_vip='$_GET[id]' OR video_donne.id_vip='$_GET[id]' ";
    $result_materiale = mysql_query($sql_materiale) or die (mysql_error());

    <?

    while ($materiale=mysql_fetch_array($result_materiale) )
    {
    if ( $materiale[categoria]=="Foto%") { $categoria="immagini"; }
    elseif ( $materiale[categoria]=="Video%") { $categoria="video"; }
    echo "<tr>
    <td width=\"95\" height=\"88\">
    <div align=\"center\"><font size=\"2\" face=\"Verdana\"><img src=\"$donne[categoria]/$cartella/$categoria/supermini/$materiale[immagine]$materiale[nome_foto]\" width=\"54\" height=\"58\" border=\"0\"></font></div></td>
    <td width=\"405\"><div align=\"center\">
    <table width=\"300\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td colspan=\"3\"><font size=\"2\" face=\"Verdana\">Materiale:
    <a href=\"ffff\"><font color=\"#000000\">$materiale[categoria] $materiale[id]</font></a>
    </font>
    <div align=\"right\"></div></td>
    </tr>
    <tr>
    <td colspan=\"3\"><div align=\"center\"><font size=\"2\" face=\"Verdana\"><img src=\"../images/linea_380.gif\" width=\"300\" height=\"2\"></font></div></td>
    </tr>
    <tr>
    <td height=\"22\" colspan=\"3\" valign=\"top\"><div align=\"center\"><font size=\"2\" face=\"Verdana\">Voto
    4.99 | Visto 1250 | Commenti
    500</font></div></td>
    </tr>
    <tr>
    <td width=\"138\"><font size=\"2\" face=\"Verdana\">27/11/2007

    </font></td>
    <td width=\"1\"></td>
    <td width=\"161\" align=\"right\" valign=\"bottom\"><font size=\"2\" face=\"Verdana\">Segnalata
    da
    Gallo</font></td>
    </tr>
    <tr>
    <td height=\"22\" colspan=\"3\">
    <div align=\"center\"><font size=\"2\" face=\"Verdana\"><a href=\"../foto_ok.html\"><font color=\"#FF0000\">Visualizza
    Video</font></a>
    </font></div></td>
    </tr>
    </table>
    </div></td>
    </tr>
    ";
    } ?>
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  2. #2
    Mi spiego meglio:

    Allora
    Mettiamo io ho queste due tabella:

    Articoli
    ID TITOLO TESTO DATA

    REcensioni
    ID TITOLO TESTO DATA

    Allora... dovrei fare due query:

    SELECT titolo FROM articoli
    e l' altra
    SELECT titolo FROM news

    Dopo di che, stampare i record di entrambe le tabelle in ordine di data,il problema è unire i record, non voglio stampare prima i record della tabella articoli, e poi quella delle news. devono essere "mischiati" in base alla data di inserimento...ma come?
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    Originariamente inviato da pazzomania2
    Mi spiego meglio:

    Allora
    Mettiamo io ho queste due tabella:

    Articoli
    ID TITOLO TESTO DATA

    REcensioni
    ID TITOLO TESTO DATA

    Allora... dovrei fare due query:

    SELECT titolo FROM articoli
    e l' altra
    SELECT titolo FROM news

    Dopo di che, stampare i record di entrambe le tabelle in ordine di data,il problema è unire i record, non voglio stampare prima i record della tabella articoli, e poi quella delle news. devono essere "mischiati" in base alla data di inserimento...ma come?

    prova a utilizzare l'unione di sql

    Codice PHP:
    SELECT titolodata FROM articoli UNION ALL SELECT titolodata FROM news ORDER BY 2 DESC 
    Maggiori dettagli sulla union link

    ciao

  4. #4
    ok, sembra funzionare il problema è che nele tabelle che uso non hanno lo stesso numero di campi:

    The used SELECT statements have a different number of columns
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    Fai attenzione che le tabelle possono avere anche un numero di campi differente.. l'importante è che nella due SELECT ci sia lo stesso numero di campi... Infatti se vedi nel mio veloce esempio avevo messo sia a dx che a sx Titolo e Data


    ciao

  6. #6
    grazie mille..
    ma non ho capito cosa è questo:
    ORDER BY 2 pero' sembra funzionare
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  7. #7
    FUNZIOAN!!
    Scusa ma un ultima cosa...se invece che da due tabelle...fossero 4 o 5 il procedimento è uguale?
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    ORDER BY 2 singnifica ordina per l'elemento che nella select si trova alla posizione 2... perchè mi sembra che usando la union non puoi usare riferimenti al nome dei campi (su questo pero' non ci metterei la mano sul fuoco xke non ne sono convintissimo)... penso che la union la puoi fare per N tabelle.. basta che rispetti la regola del numero dei campi



    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.