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

    funzione per leggere solo una parte del nome file

    ciao,

    esiste un modo ( una funzione) che mi prende solo una parte del nome del file?
    mi spiego, devo far visualizzare delle img prese da una cartella, e queste img hanno come nome l'ID dei dati presenti nel DB, solo che le immagini possono essere più di una.
    perciò si presentano così:

    34_1.jpg --->prima img
    34_2.jpg--->seconda img

    dove 34 è il nome dell'ID.

    Quindi devo fare in modo che questa riga

    $ext = pathinfo("/immagini/".$file);

    dove $file = $_GET["id"]... e la funzione che non mi legge il resto del nome del file.

    mi sono spiegato?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    se nn ho capito male vuoi il nome del file senza id:

    34_1.jpg --->prima img

    $dati = explode("_", $variabile_nome_file);
    $dati[0] sara' uguale alla parte prima di _

    $dato[1] sara' uguale a 1.jpg

  3. #3
    ma i nomi delle immagini sono su db??
    cioè: _1.jpg, 2_.jpg, ... li puoi recuperare da qualche parte??

    Non ho capito molto bene di cosa hai bisogno... se puoi spiegare meglio il contesto...

    se sai quante immagini sono e sono progressive puoi fare un ciclo
    e concatenare:
    Codice PHP:
    for (i=1i<=nImgi++) {
       
    $file $_GET["id"]."_".$i.".jpg";
       
    //altre istruzioni

    però puoi fare così anche se nn sai il num delle immagini anche se non sono progressive... basta che ogni volta testi l'esistenza del file
    :tongue:

  4. #4
    in pratica ho questo codice che serve per creare le miniature al volo ( o meglio il codice per le miniature è in un altro file,ma non ci interessa)

    codice:
    $directory = opendir("./immagini");
    while(false !== ($file = readdir($directory)))
         {
         if ($file != "." && $file != "..") {
              
          
         $ext = pathinfo("/immagini/".$file);
         if($ext['extension'] == "jpg")
         echo"<img src=\"resize.php?img=".$file."\" />";
    io devo prendere tutte le img che stanno nella cartella immagini e che hanno come nome $_GET["id"].
    ma siccome oltre all'ID il file ha per nome _1.jpg, _2.jpg etc devo fare in modo che all'interno di $file legga tutte le img che iniziano per 34 e non tenga conto di _1.jpg e _2.jpg

  5. #5
    puoi fare come ha detto marco80:
    Codice PHP:
    $directory opendir("./immagini");
    while(
    false !== ($file readdir($directory))) {
         if (
    $file != "." && $file != "..") {
             
    $nome explode("_"$file); 
             if (
    $nome[0] == $_GET["id"]) {
                
    $ext pathinfo("/immagini/".$file);
                if(
    $ext['extension'] == "jpg")
                   echo
    "<img src=\"resize.php?img=".$file."\" />";
                }
             }

    spero di errere stata utile.

    Ciao
    :tongue:

  6. #6
    ah, ok!

    è vero, non avevo letto bene quello che aveva scritto marco80...


    grazie mille piccolanomade, sei stata utilissima.


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.