Visualizzazione risultati 1 fino 5 di 5
Like Tree2Likes
  • 1 Post By dreadnaut
  • 1 Post By GraphOGLRisorse

Discussione: Conteggio record senza duplicati

  1. #1
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito Conteggio record senza duplicati

    Salve a tutti

    dovrei effettuare un conteggio tra distributor e studio e visualizzare il tutto senza duplicati


    il risultato dovrebbe essere calcolato per ogni record, in questo caso visualizzo 4 ma dovrebbe essere 2





    Codice PHP:

    <?php

    $risultato
    = explode(" , ", $row->distributor);
    foreach (
    $risultato as $res) {
    array_push($arr, $res);
    }

    $risultato = explode(" , ", $row->studio);
    foreach (
    $risultato as $res) {
    array_push($arr, $res);
    }



    ?>
    <?
    endwhile; ?>
    <?php
    natcasesort
    ($arr);

    $ok2 = array_count_values($arr);

    foreach (
    array_unique($arr) as $ok){



    ?>

    <div class="pretty p-default p-round">
    <input type="checkbox" name="distr" value="<?php echo $ok;?>">
    <div class="state p-success-o">
    <label>
    <?php echo '&nbsp;' . '<a style="color:blue">' . $ok . '</a>' . " (" . $ok2[$ok] . ")" . '&nbsp;';?>
    </label>
    </div>
    </div>


    <?php
    }

    ?>
    Ultima modifica di blackskyisback : 19-01-2022 alle ore 21.49.31

  2. #2
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    risolto

  3. #3
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,269

    Predefinito

    Se posso suggerire: array_merge() o anche solo "+" potrebbero semplificarti la vita qua:

    Codice PHP:
    <?php

    $risultato
    = explode(" , ", $row->distributor);
    foreach (
    $risultato as $res) {
    array_push($arr, $res);
    }

    $risultato = explode(" , ", $row->studio);
    foreach (
    $risultato as $res) {
    array_push($arr, $res);
    }
    Diventa

    Codice PHP:
    $arr = explode(" , ", $row->distributor) + explode(" , ", $row->studio);
    blackskyisback likes this.

  4. #4
    blackskyisback non è connesso Utente attivo
    Data registrazione
    29-05-2012
    Messaggi
    452

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    Se posso suggerire: array_merge() o anche solo "+" potrebbero semplificarti la vita qua:



    come ho scritto avevo gia' risolto prima, esattamente con array_merge

    grazie comunque

    ecco il codice funzionante

    Codice PHP:
    $risultato = explode(" , ", $row->distributor);
    $tmp = array_map('trim', $risultato);

    $risultato = explode(" , ", $row->studio);
    $tmp = array_merge($tmp, array_map('trim', $risultato));

    $arr = array_merge($arr, array_unique($tmp));
    Ultima modifica di blackskyisback : 21-01-2022 alle ore 07.34.26

  5. #5
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    4,034

    Predefinito

    Citazione Originalmente inviato da blackskyisback Visualizza messaggio
    come ho scritto avevo gia' risolto prima, esattamente con array_merge
    Salve,
    si questo è vero, però non aveva menzionato nulla sul come aveva rislto.
    Citazione Originalmente inviato da blackskyisback Visualizza messaggio
    risolto
    Quindi dreadnaut non poteva saperlo e si è basato sul codice riportato.

    Comenuque sia, in generale nel forum, sarebbe bene tenere conto anche dell'eventualità che ci possano essere altri utenti interessati alla soluziione di un problema posto. Quindi quando si trova da soli la soluzione, sarebbe buona pratica esporla.

    Cordiali saluti.
    blackskyisback likes this.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •