Anteprima foto da menu a tendina

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Salve, volevo sapere se c'è la possibilità di fare l'anteprima della foto tramite un menu a tendina.
Mi serve per fare che l'utente che prima inserisca la foto può vedere la foto senza abbandonare la pagina.

prima faccio selezionare la categoria da un altro menu a tendina ed dopo esploro la cartella con questo codice tramite l'evento js con onchange:
PHP:
<tr>
    <td>Seleziona Foto</td>
    
    <td>
        <?php
		$images = array();
        if (isset($_GET['cat'])) {
           
            $pieces = explode('|', addslashes($_GET['cat']));

            $dir = "../public/media/photo/".$pieces[1]."/img_thumb/";

            if (is_dir($dir) && is_readable($dir)) {
                $files = glob("{$dir}/*");

                foreach ($files as $fname) {
                    if (
                        $fname == '.' ||
                        $fname == '..' ||
                        $fname == basename($_SERVER['PHP_SELF'])
                    ) {
                        continue;
                    }

                    if (is_dir($fname)) {
                        $images[basename($fname)] = "(Dir) {$fname}";
                    }
                    else {
                        $images[basename($fname)] = $fname;
                    }
                }
            }
        }

        echo "<select name=\"strFile\">\n";
        
        foreach ($images as $display_name => $fname) {
            ?><option value="<?php echo $display_name; ?>"<?php if($display_name=="".$strFile."") echo 'selected'?> ><?php echo $display_name; ?></option>
        <?php
		}
        
        echo "</select>\n";
        ?>
    </td>
</tr>

in poche parole vorrei fare una finestra dove l'utente vede la foto..

come posso fare?

grazie mille.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Puoi provare con una piccola funzione javascript:

Codice:
<script type="text/javascript">
    function mostraFoto(foto) {
        
        var image = "<img src='../public/media/photo/" + foto + "' alt='image'/>";
        
        document.getElementById('mostraImmagine').innerHTML = image;
    }
</script>

la richiami con onchange in questo modo:

PHP:
echo "<select name=\"strFile\" onchange=\"mostraFoto(this.options[this.selectedIndex].value)\">\n";

e crei un elemento dove mostrerai l'iimagine :

HTML:
<span id="mostraImmagine"></span>

Dovrai dare al value delle option quello che manca dell'indirizzo per trovare la foto
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ok, ho fatto delle prove e ci siamo...
solo che io recupero cosi e nella barra degli indirizzi ho questo:
index.php?m=foto&action=aggiungi&cat=2|i_fiori_del_mio_giardino

questa: i_fiori_del_mio_giardino è il nome della cartella..

mi dici come posso far passare il valore essendo che ho fatto cosi:
Codice:
<script type="text/javascript">
    function mostraFoto(dir,foto) {
        
        var image = "<img src='../public/media/photo/" + dir + "/img_thumb/" + foto + "' alt='image'/>";
        
        document.getElementById('mostraImmagine').innerHTML = image;
    }
</script>

qua come posso fare autocamente perché ora lo inserito manualmente io:
PHP:
echo "<select name=\"strFile\" onchange=\"mostraFoto('i_fiori_del_mio_giardino', this.options[this.selectedIndex].value)\">\n";

mi dici come fare e ti ringrazio molto.

buona domenica.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ma non lo recuperi già quel valore?
PHP:
$pieces = explode('|', addslashes($_GET['cat']));

cosi hai già provato?
PHP:
echo "<select name=\"strFile\" onchange=\"mostraFoto($pieces[1], this.options[this.selectedIndex].value)\">\n";
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ma non lo recuperi già quel valore?
PHP:
$pieces = explode('|', addslashes($_GET['cat']));

cosi hai già provato?
PHP:
echo "<select name=\"strFile\" onchange=\"mostraFoto($pieces[1], this.options[this.selectedIndex].value)\">\n";

ha ha.. funziona alla grande e sono io che sono fuso,
ti ringrazio molto se ho altro problema mi faccio vivo..

ciao e buona domenica.
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
autoselezionamento...

ciao, volevo dirti si come che io uso cosi il codice che mi hai scritto prima:
PHP:
 echo "<select name=\"strFile\" onchange=\"mostraFoto('$pieces[1]', this.options[this.selectedIndex].value)\">\n";

però ho un problemino... nella form di inserimento dati .. va benissimo..e fa il suo dovere..

ma quella della modifica .. non mi fa l'auto selezionamento..
come posso fare?

Io pensavo ad un if else all'istruzione mostrafoto() poi non lo so .. perché io di javascript non so nulla e lo devo imparare.

ti ringrazio molto
e spero se mi riesce ad risolvere questo piccolo problemino..

grazie mille di nuovo.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ma quella della modifica .. non mi fa l'auto selezionamento..

puoi spiegare il problema nel dettaglio? non ho capito bene
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
puoi spiegare il problema nel dettaglio? non ho capito bene

vorrei che mi appaia da sola senza che io scelga di nuovo la foto..

io ho il campo r_strFile= $row["strfile"]

ma come posso metterlo in quella funzione?

e poi dopo posso far che l'utente può cambiare la foto quando vuole..

non so come posso spiegarti perché non conosco la cosa..

in poche parole che quando io clicco su modifica mi appaia la foto autocamente.

boo..

vedi se mi capisci .

ti ringrazio molto e buon lunedì.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Forse ho capito

puoi fare cosi:

PHP:
            <span id="mostraImmagine">
            <?php
            // se è settato e non è vuoto
            if (isset($strFile) && !empty($strFile)) {
                // mostri l'immagine con il suo percorso
                echo "<img src='../percorso/" . $strFile . "' alt='image'/>";
            }
            ?>
            </span>

Se hai già l'immagine in memoria la mostri nell'elemento
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Forse ho capito

puoi fare cosi:

PHP:
            <span id="mostraImmagine">
            <?php
            // se è settato e non è vuoto
            if (isset($strFile) && !empty($strFile)) {
                // mostri l'immagine con il suo percorso
                echo "<img src='../percorso/" . $strFile . "' alt='image'/>";
            }
            ?>
            </span>

Se hai già l'immagine in memoria la mostri nell'elemento

ok.. ha funzionato alla grande..
ti ringrazio molto.

ciao e buona giornata.
 
Discussioni simili
Autore Titolo Forum Risposte Data
Alex_70 Visualizzare anteprima foto in dropdown PHP 2
F Wordpress: anteprima con foto WordPress 4
N Non Autorizzato. Dovresti rimuovere il parametro customize_messenger_channel per visualizzare l'anteprima in frontend. WordPress 1
trattorino [Javascript] Spoiler con anteprima Javascript 3
silvia88 ***Help*** - Anteprima immagine photoshop diversa da file Photoshop 3
K [Joomla] Visualizzazione anteprima diversa dalla demo del template Joomla 0
Mer556 [Javascript] IMMAGINI A SCORRIMENTO, ANTEPRIMA 3 Javascript 1
momeraths [HTML] Anteprima sito versione mobile HTML e CSS 2
L php/mysql - anteprima notizia con pulsante PHP 2
H Anteprima immagine video youtube HTML e CSS 1
B Anteprima Facebook HTML e CSS 4
S Condividere correttamente link su Facebook (immagine anteprima errata) HTML e CSS 1
F Anteprima descrizione WordPress 1
J Problema per creare anteprima dei post da un db PHP 2
F [RISOLTO] Creazione slider con anteprima con jquery jQuery 8
M Dreamweaver non visualizza file swf nell'anteprima browser Webdesign e Grafica 0
L jquery slideshow con anteprima jQuery 10
una mamma snob Modificare impostazioni di visualizzazione dell'anteprima articoli con immagini. WordPress 5
S stampare senza anteprima Javascript 0
I dissolvenza ed immagini anteprima in slide gallery Javascript 2
L anteprima immagine <input type="file"> jQuery 2
Y anteprima codice HTML in windows 7 Windows e Software 0
K onmouseover anteprima immagine come in google Javascript 2
A galleria jquery: problema nel caricamento di una immagine da un'anteprima HTML e CSS 10
L script anteprima testo e link "leggi tutto" PHP 0
T Slider immagini con anteprima Javascript 1
D Anteprima multischermo dreamweaver cs5 HTML e CSS 0
P Immagine nell'anteprima del sito HTML e CSS 7
U Creare anteprima da un video? PHP 1
I Anteprima Sito PHP 2
F Anteprima guida Visual Studio 2010 su mrwebmaster Supporto Mr.Webmaster 0
M anteprima con Microsoft Expression Web HTML e CSS 3
C Anteprima sito diversa da quando on-line HTML e CSS 2
A gif animata con photoshop senza anteprima Photoshop 1
R passare valori da una form per un'anteprima Javascript 0
borgo italia auguri (in anteprima) Discussioni Varie 5
M Link Con Immagine Anteprima Javascript 3
M Formattare testo senza anteprima Javascript 2
G Come ridurre l'anteprima cella Excel? Windows e Software 0
C Problema anteprima Flash 1
K finestrina x visualizzazione anteprima Javascript 0
N webcast per vedere in anteprima WindowsVista Windows e Software 0
S Editor freeware (anche php con possibilità anteprima) HTML e CSS 2
A FP2003: non funzionano i link nell'anteprima HTML e CSS 17
milly non si vedono in anteprima i pulsanti creati con front page HTML e CSS 15
peppoweb Windows Longhorn in anteprima? Windows e Software 0
G E' possibile dare la vividezza in un colpo solo a più foto Photoshop 1
P Prodotti, foto, titolo e descrizione E-Commerce 0
I carica foto profilo sessione utente PHP 2
G Perché il mio sito su Google news fa vedere le immagini degli articoli la mia foto profilo? WordPress 1

Discussioni simili