Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1

    Estrarre solo un dato...

    Salve a tutti....

    Ho un piccolo problema di estrazione dei dati.

    Io ho realizzato 3 tabelle nel mio database relazionandole tutte fra loro.

    Nella 1 tabella ci sono i nomi delle regioni, nella seconda i nomi delle province e nella 3 ci sono oltre ad altri campi, i campi di regione e provincia ai quali ho associato un numero a seconda della scelta sia per la regione che per la provincia.

    Allora arrivo al dunque: Quando estraggo i dati mi ripete sempre il nome della regione e della provincia per ogni dato trovato.
    Io non voglio questo ma vorrei che quando genera la pagina con i risultati ci sia in alto il titolo così composto:

    Dati estratti dalla regione "x" della provincia "y", e sotto i risultati degli altri campi.

    Spero che qualcuno sappia la soluzione

    Grazie a tutti

    Ciao

  2. #2
    mmm vado per supposizioni perchè non so come tu abbia strutturato i lcodice, però penso che tu abbia un ciclo ricorsivo he ti faccia girare tutti i dati del tipo

    codice:
    while ($variabile=mysql_fetch_row($_query)) {
    istruzione
    }
    Un modo molto arcaico(ma che non presuppone altre conoscenze) è quello di mettere un contatore all'intenro del ciclo, e fargli stampare solo quando è uguale a 1. In questo modo otterresti che per quella determinata query (che, sempre andando per supposizioni, penso sia associata ad un unica regione) un odei testi venga ripetuto solo una volta, tramite la scelta con un if.

    Se le mie supposizioni sono errate e hai strutturato il tutto in maniera diversa...posta parte del codice o fammi capire meglio..
    http://embracesblog.mine.nu
    http://wiki.ubuntu-it.org/AndreaOlivato

  3. #3

    estrarre un solo dato...

    Grazie per la tua risposta...

    Si la tua supposizione è corretta... però nn ho ben capito come posso fare dalla tua spiegazione..
    Ora ti posto il codice:

    $query = "SELECT provincie, Provincia, Nome, DATE_FORMAT(Dal, '%d - %m - %Y') Dal , DATE_FORMAT(Al, '%d - %m - %Y') Al , Descrizione, Informazioni " .
    "FROM ".$prefix."_dati , ".$prefix."_regioni , ".$prefix."_provincie ".
    "WHERE ".$prefix."_dati.Regione = ".$prefix."_regioni.r_id " .
    "AND ".$prefix."_dati.Provincia = ".$prefix."_provincie.p_id " .
    "AND Provincia = '$_GET[prov]' " .
    "AND Regione = '$_GET[reg]' " .
    "ORDER BY Nome";

    $results = mysql_query($query)
    or die(mysql_error());


    echo "<center>"._Title."
    $provincie
    </center>

    ";

    while ($row = mysql_fetch_array($results)) {
    extract($row);
    echo "<font color=\"#003300\"><center>$Nome</center></font>";
    echo "<table width=\"90%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Data Inizio:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\">$Dal</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Data Fine:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\">$Al</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Descrizione:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\">$Descrizione</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Informazioni:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\">$Informazioni</td>"
    . " </tr>"
    . "</table>
    ";
    }

    Io vorrei estrarre la provincia e la regione come ho detto nel primo post ma non so proprio come potrei fare.

    Se riuscissi a farmi un esempio te ne sarei molto grato...

    ciao e grazie ancora

  4. #4
    se la variabile $nome corrisponde al nome della regione io farei così. Se non è così dimmi a quale variabile corrisponde ciò che vuoi far ripetere una sola volta..perchè sono un pò scemo ^_^

    codice:
    $i=1;
    while ($row = mysql_fetch_array($results)) {
    extract($row);
    if ($i==1){
    echo "<font color=\"#003300\"><center>$Nome</center></font>";
    }
    echo "<table width=\"90%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Data Inizio:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\"> $Dal</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Data Fine:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\"> $Al</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Descrizione:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\"> $Descrizione</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Informazioni:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\"> $Informazioni</td>"
    . " </tr>"
    . "</table>
    ";
    $i++;
    }
    http://embracesblog.mine.nu
    http://wiki.ubuntu-it.org/AndreaOlivato

  5. #5

    allora....

    Le variabile che voglio ottenere una sola volta sono Regione e Provincia.

    Però forse non ti ho spiegato bene una cosa ovvero:
    Il campo Provincia come quello Regione è un numero. Questo numero è associato ad altre due tabelle, ovvero provincie e regioni.
    Quando estraggo i dati li estrae dando peso anche a questo così che se nell'url scrivo www.miodominio.com\dati.php?reg=1&prov=1 associa il numero che trova alla regione e alla provincia così da scrivere al posto del numero il nome di quest'ultimi.

    Se faccio come mi hai detto credo nn vada bene, però mi posso sbagliare pure io!!

    Dimmi che ne pensi!!!

    ciao

  6. #6
    Quello che continuo a non capire è dove stampi il nome della regione, cioè qual'è di quegli echo quello che le fa visualizzare.

    Se fosse $provincie dovrebbe essere fuori dal ciclo, indi non dovrebbe ripeterlo...tuttavia...essendo all'interno del ciclo non capisco come possa esser einfluenzato da extract($row) ovvero dove viene definita $provincie?
    http://embracesblog.mine.nu
    http://wiki.ubuntu-it.org/AndreaOlivato

  7. #7

    scusa!!!

    Scusami... nel postarti il codice ho dimenticato l'echo della $regioni e della $provincie.

    Ora ti posto il codice anche con quelle variabili:


    $query = "SELECT provincie, regioni, Provincia, Nome, DATE_FORMAT(Dal, '%d - %m - %Y') Dal , DATE_FORMAT(Al, '%d - %m - %Y') Al , Descrizione, Informazioni " .
    "FROM ".$prefix."_dati , ".$prefix."_regioni , ".$prefix."_provincie ".
    "WHERE ".$prefix."_dati.Regione = ".$prefix."_regioni.r_id " .
    "AND ".$prefix."_dati.Provincia = ".$prefix."_provincie.p_id " .
    "AND Provincia = '$_GET[prov]' " .
    "AND Regione = '$_GET[reg]' " .
    "ORDER BY Nome";

    $results = mysql_query($query)
    or die(mysql_error());


    while ($row = mysql_fetch_array($results)) {
    extract($row);

    echo "<font color=\"#003300\"><center>Dati della regione $regioni provincia $provincie</center></font>";

    echo "<table width=\"90%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Data Inizio:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\"> $Dal</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Data Fine:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\"> $Al</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Descrizione:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\"> $Descrizione</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Informazioni:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\"> $Informazioni</td>"
    . " </tr>"
    . "</table>
    ";
    }


    Spero che ora ci sia tutto.... Scusami ancora non avevo notato quella mia dimenticanza...

    Grazie!!!

  8. #8
    Se è solo questo allora puoi ben fare con il metodo di prima applicandolo però all'echo delle provincie...te lo riposto

    codice:
    $i=1;
    while ($row = mysql_fetch_array($results)) {
    extract($row);
    if ($i==1) {
    echo "<font color=\"#003300\"><center>Dati della regione $regioni provincia $provincie</center></font>";
    }
    $i++
    echo "<table width=\"90%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\">"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Data Inizio:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\"> $Dal</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Data Fine:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\"> $Al</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#B0C6B8\" align=\"left\" width=\"20%\">Descrizione:</td>"
    . " <td width=\"80%\" bgcolor=\"#B0C6B8\"> $Descrizione</td>"
    . " </tr>"
    . " <tr>"
    . " <td bgcolor=\"#C1DDBA\" align=\"left\" width=\"20%\">Informazioni:</td>"
    . " <td width=\"80%\" bgcolor=\"#C1DDBA\"> $Informazioni</td>"
    . " </tr>"
    . "</table>
    ";
    }
    A mio avviso dovrebbe funzionare...però prova e sappimi ridire..
    http://embracesblog.mine.nu
    http://wiki.ubuntu-it.org/AndreaOlivato

  9. #9

    Funziona!! Grazie !!

    Ho provato ora il codice che mi hai postato... e funziona egregiamente...!!!

    Grazie!!!

    Una sola domandina però: lo stesso trucchetto lo posso applicare alle regioni!!!


    Grazie ancora e ciao!!!

  10. #10
    mmm cioè vorresti che tutte le provicnie di una stessa regione siano sotto un solo nome regione, invece che ripetere il nome della regione per tutte le sue provincie?
    http://embracesblog.mine.nu
    http://wiki.ubuntu-it.org/AndreaOlivato

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 © 2024 vBulletin Solutions, Inc. All rights reserved.