Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Hai ragione, perdonami ma ho ripreso in mano da poco PHP e la memoria ha qualche buco... :-)
    Ho fatto come hai detto e questo è il risultato:

    codice:
    Array (     [0] => .     [1] => ..     [2] => HL2509_73455-111 04 GRAN EVENT Preseller DE-IT.pdf     [3] => .DS_Store     [4] => HL2509_73447-000 04 GRAN EVENT TL 116.pdf     [5] => HL2509_73445-000 04 GRAN EVENT TL 118.pdf     [6] => HL2509_73448-000 04 GRAN EVENT TL 112.pdf     [7] => HL2509_73446-000 04 GRAN EVENT TL 117.pdf     [8] => HL2509_73455-000 04 GRAN EVENT Preseller.pdf )

  2. #12
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,844
    Quindi i file ci sono tutti.
    Il problema potrebbe essere che non c'è corrispondenza esatta tra i nomi dei file recuperati e ciò con cui li confronti, quindi con
    $soggetto = $row['modulo']."_".$row['wrin'];

    Prova questa cosa:
    Codice PHP:
    // dove adesso hai il print_r() modifica così per una formattazione migliore
    echo "<pre>";
    print_r($files)
    echo 
    "</pre>"
    poi dentro il while()
    Codice PHP:
    $soggetto $row['modulo']."_".$row['wrin'];

    // aggiungi
    echo $soggetto '<br>'
    visto che hai pochi file dovrebbe essere facile fare un confronto visivo tra file recuperati e dati provenienti dal db.
    Anche un numero di spazi vuoti diverso contribuisce a far risultare diverse le stringhe, quindi potrebbe essere necessario visualizzare il sorgente della pagina per vederli, html rimuove gli spazi multipli della pagina.
    Ultima modifica di Alhazred; 18-03-2020 a 09:59

  3. #13
    Ho aggiunto quello che hai detto e il risultato è questo (posto solo il contenuto del print_r e echo)
    codice:
    Array
    (
        [0] => .
        [1] => ..
        [2] => HL2509_73455-111 04 GRAN EVENT Preseller DE-IT.pdf
        [3] => .DS_Store
        [4] => HL2509_73447-000 04 GRAN EVENT TL 116.pdf
        [5] => HL2509_73445-000 04 GRAN EVENT TL 118.pdf
        [6] => HL2509_73448-000 04 GRAN EVENT TL 112.pdf
        [7] => HL2509_73446-000 04 GRAN EVENT TL 117.pdf
        [8] => HL2509_73455-000 04 GRAN EVENT Preseller.pdf
    )
    					 					HL2509_79658-000
    HL2509_73445-000
    HL2509_73446-000
    HL2509_73447-000
    HL2509_73448-000
    HL2509_73449-000
    HL2509_73450-000
    HL2509_73451-000
    HL2509_73455-000
    HL2509_73456-000
    HL2509_73457-000
    HL2509_73450-111
    HL2509_73458-000
    HL2509_73455-111
    HL2509_73457-111

  4. #14
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,844
    Quindi come vedi non c'è corrispondenza, per questo nessuna riga viene evidenziata.

    I nomi dei file contengono più informazioni rispetto a ciò che costruisci in $soggetto.

    A questo punto modifica così dentro il while

    Codice PHP:
    while ($row mysqli_fetch_assoc($result)) 
    {
        
    $soggetto $row['modulo']."_".$row['wrin'];

        
    $class "nopdfbassa";

        foreach( 
    $files as $file )
        {
            if ( 
    stristr$file$soggettoFALSE  ) )
            {
                
    $class "pdfbassa";
                break;
            }
        }

        echo 
    "<tr class='testo_light2 " $class "'>
                    <td>"
    .$row['wrin']."</td>
                    <td>"
    .$row['descrizione']."</td>
                    <td>"
    .$row['contenuto']."</td>
                    <td>"
    .$row['quantita']."</td>
                    <td>"
    .$row['note']."</td>
                </tr>"
    ;

    Se i file sono tutti dentro lo stesso livello della cartella e non anche in sottocartelle, usa glob() come hai già provato invece di questo iteratore ricorsivo.

  5. #15
    Perfetto, funziona!

    Credo di avere capito il mio errore iniziale. Cerco di spiegarmi, così magari può servire a qualcun'altro.
    Io facevo il ciclo per recuperare tutti nomi dei files (foreach...), ma per poter fare il confronto successivo con la variante $soggetto e quindi utilizzarne il risultato, avrei dovuto mettere il contenuto della variante ottenuta, nel ciclo while. Non facendolo mi trovavo, giustamente, solo l'ultimo valore.

    Modificherò sicuramente anche il primo ciclo utilizzando Glob.

    Grazie per la tua disponibilità preziosissima.

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