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

    button submit non va in IE6/7

    salve a tutti, sto facendo una pagina per album fotografico, ho creato un form con button submit e un ciclo php che selezionata la directory tramite il button mi apre la certella e mi fa vedere le thumbnail dell'album

    in firefox funziona bene, in IE6/7 non va e come risultato mi fa comparire una immagine vuota e mi da il seguente errore:Warning: opendir(<IMG src=\"foto_album/abbigliamento/THN__Abbigliamento_001.jpg\">Line Abbigliamento) [function.opendir]: failed to open dir: No error in D:\WebServer\Fight&Fitness\foto_old.php on line 96


    vi posto il codice magari c'è qualche modifica per ie6/7

    <form action="foto_old.php" method="post">

    <button name="abbigliamento" type="submit" value="foto_album/abbigliamento/">
    [img]foto_album/abbigliamento/THN__Abbigliamento_001.jpg[/img]
    Line Abbigliamento</button>
    <button name="aikido" type="submit" value="foto_album/aikido">
    [img]foto_album/aikido/THN__aikido_001.jpg[/img]
    Aikido</button>
    </form>


    <?php

    // percorso della directory da leggere

    if ( isset($_POST['abbigliamento']) && $_POST['abbigliamento']!="")
    $directory = $_POST['abbigliamento'];

    else

    if ( isset($_POST['aikido']) && $_POST['aikido']!="")
    $directory = $_POST['aikido'];

    else

    if ( isset($_POST['karate_ragazzi']) && $_POST['karate_ragazzi']!="")
    $directory = $_POST['karate_ragazzi'];

    else

    $directory = $_POST['kick_boxing'];


    // apriamo la directory
    $open_handle = opendir($directory);
    $nomeAlbum=ucwords(str_replace('_',' ',$directory));
    echo "<h4><span>$nomeAlbum</span></h4>
    ";


    // impostiamo un ciclo while() per scorrere tutto il contenuto
    while($read = readdir($open_handle)) {

    // escludiamo . e ..

    if($read != "." && $read != ".." && $read != "Anteprima.jpg") {

    $iniz=substr($read,0,3);
    if($iniz == "THN") {

    // in questo esempio stampiamo a video i nomi di file e directory
    $big = str_replace('THN','BIG',$read);
    $noExt=substr($read,0,-4);
    $nome=ucwords(str_replace('_',' ',$noExt));
    echo "<a href=\"$directory/$big\" rel=\"lightbox[example]\" title=\"$nome\"><img style=\"border:1px solid #fe4e00; margin:2px;\" src=\"$directory/$read\" alt=\"$nome\" /></a>";
    }
    }
    }

    // chiudiamo la directory
    closedir($open_handle);
    ?>

  2. #2
    Ti suggerisco di utilizza il tag INPUT per creare i submit.

  3. #3
    ho provato anche come dici te ma non funziona ugualmente, forse c'è un problema con lo script php, però non trovo il problema.

    Se qualcuno lo prova mi fa un favore.forse trova il problema

    grazie

  4. #4
    E' evidente che non ti arriva in post il valore del button perchè l'errore è nel fatto che $directory è vuota.

    Fai un var_dump($_POST);

    e guarda quello che ti arriva in post probabilmente il problema è dovuto al fatto che explorer utilizza diversament il button da firefox

  5. #5
    allora ho provato a fare var_dump($_POST); come mi hai suggerito, su Firefox e su opera mi ritorna questo valore:

    array(1) { ["abbigliamento"]=> string(25) "foto_album/abbigliamento/" }

    che va bene e funziona come deve, quindi prende il percorso della directory e la apre.

    mentre su IE7 ritorna questo questo:

    array(1) { ["abbigliamento"]=> string(166) "
    Linea Abbigliamento" }
    Warning: opendir(<IMG title=\"liena abbigliamento\" height=96 alt=\"linea abbigliamento\" src=\"foto_album/abbigliamento/THN__Abbigliamento_001.jpg\" width=128>
    Linea Abbigliamento) [function.opendir]: failed to open dir: No error in D:\WebServer\Fight&Fitness\foto_old.php on line 96.

    praticamente legge il percorso della thumbnail mi sembra di capire, invece del percorso della directory.

    mi potete aiutare a risolvere il problema, sono molto ignorante in fatto di programmazione e non c capisco un gran che, ma sto imparando e sto cercando di capire come si ragiona.

    grazie

  6. #6
    Utente di HTML.it L'avatar di Leo15
    Registrato dal
    Sep 2005
    Messaggi
    307
    Anzichè usare questo:
    codice:
    <button name="abbigliamento" type="submit" value="foto_album/abbigliamento/">
    [img]foto_album/abbigliamento/THN__Abbigliamento_001.jpg[/img]
    Line Abbigliamento</button>
    Prova con questo:
    codice:
    <input type="image" name="abbigliamento" value="foto_album/abbigliamento/" src="foto_album/abbigliamento/THN__Abbigliamento_001.jpg" style="width: 128px; height: 96px">
    Line Abbigliamento</button>
    Vedi se risolvi
    La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
    Isaac Asimov

  7. #7
    no avevo già provato, il problema secondo me non risiede nel button o nell'input image ma è nello script php che segue dopo, anche usando <input type="image"... il risultato del var è lo stesso.

    poi avrei un'altra domanda: invece di fare un if else lungo e che poi aumenterà all'aumentare degli albnum fotografici che aggiungerò non si può definire una variabile del tipo name="value" in modo tale che dopo valu assuma il nome dell'indirizzo cliccato così che nello script php per leggere la cartella possa mettere solo $directory = $_POST['value'];

    ho provato a metterla all'inizio del form quindi:

    <form action="foto_old.php" method="post" name="value">

    ma così facendo non mi funziona nienet in nessun browser.

  8. #8
    Devo dirti che hai sviluppato il codice in modo scorretto perchè potrebbe essere ottimizzato molto meglio.

    Il problema non può risiedere nel file php perchè lavora lato server e se funziona in firefox significa che il problema è nel codice html. E' evidente, ti ripeto, che è errato l'invio dei dati in post tramite il button o input.

    Io farei così toglierei il button inserirei l'immagine come img e metterei dei radio sotto ogni immagine e un submit tramite testo o pulsante. Così eviti gli if e tanti altri problemi anche in php. (spero di aver capito dal codice quello che volevi fare)

  9. #9
    Utente di HTML.it L'avatar di Leo15
    Registrato dal
    Sep 2005
    Messaggi
    307
    Mi sono accorto che il codice che avevo postato è errato, la versione corretta sarebbe questa:
    codice:
    <input type="image" name="abbigliamento" value="foto_album/abbigliamento/" src="foto_album/abbigliamento/THN__Abbigliamento_001.jpg" style="width: 128px; height: 96px">
    Line Abbigliamento
    Se neanche quello funziona prova così:
    codice:
    <input type="hidden" name="abbigliamento" value="foto_album/abbigliamento/" />
    <input type="image" src="foto_album/abbigliamento/THN__Abbigliamento_001.jpg" style="width: 128px; height: 96px">
    Line Abbigliamento
    La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.
    Isaac Asimov

  10. #10
    Sono d'accordo con silverwings circa la correttezza del tuo codice.
    Ma il discorso è che per testare il tuo codice non ti serve altro che snellirlo dell'immagine da associare al bottone e vedere se nudo e crudo (senza abbellimenti di sorta insomma) funziona o meno.

    codice:
    <input type="submit" name="invia" value="INVIA" />
    Peraltro non ho neanche capito a cosa ti serva una form per andare a visualizzare alcune foto in una galleria?
    Una semplice lista di link ti piace???

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

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.