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

    Gestione get querystring

    Ciao a tutti.
    Parto con un preambolo: non conosco il linguaggio PHP! Ho già tentato di risolvere il mio problema con il solo HTML, chiedendo ai vostri colleghi della suddetta sezione (qui), ma mi hanno rimandato a voi! Ho consultato il web così come le guide di HTML.it cercando dapprima di capire cosa fosse il querystring e in secondo tempo cercando di capire come funzionasse! Ma non sarei qui se l'avessi capito, hehe, pertanto vi illustro il mio problema (spiegato in modo più dettagliato nel thread della sezione HTML sopra linkato).

    Ho inserito in una pagina html un checkbox dal quale selezionare i giorni dell'anno. In base alla scelta, si dovrebbe venire reindirizzati verso un file pdf riportante appunto la data stessa. Ma come compilo il codice PHP per far sì che il querystring mi reindirizzi al corretto pdf? L'attributo che ottengo dal GET non è da inserire in calce al link bensì in mezzo. Per meglio farvi capire: il parametro giorno deve essere inserito in un link della tipologia miosito.it/PDFfile-giorno-10-13.pdf.

    Questo il poco codice che ho scritto:

    disp.html
    codice HTML:
    Visualizza la disponibilità AW13/AI13 del magazzino in data:<br><br>
    
    <form method="GET" action="dispo.php">
    <select name="GIORNO">
    <option value="01">01</option>
    <option value="02">02</option>
    <option value="03">03</option>
    <option value="04">04</option>
    <option value="05">05</option>
    <option value="06">06</option>
    <option value="07">07</option>
    <option value="08">08</option>
    <option value="09">09</option>
    <option value="10">10</option>
    </select>
    <input type="submit" value="Conferma">
    </form>

    dispo.php
    Codice PHP:
    <?php
    $giorno 
    $_GET['GIORNO'];

    ?>

  2. #2
    Codice PHP:
     <?php
    $giorno 
    $_GET['GIORNO'];
    echo 
    "<a href='miosito.it/PDFfile-$giorno-10-13.pdf'>PDFfile-$giorno-10-13.pdf</a>"
    ?>
    Ovviamente andrebbero aggiunti dei controlli sull'effettiva esistenza del file in questione, i parametri andrebbero passati in POST per evitare che qualcuno modifichi a mano la querystring ed infine il mese e l'anno del file andrebbero ricavati automaticamente.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Quote Originariamente inviata da satifal Visualizza il messaggio
    Codice PHP:
     <?php
    $giorno 
    $_GET['GIORNO'];
    echo 
    "<a href='miosito.it/PDFfile-$giorno-10-13.pdf'>PDFfile-$giorno-10-13.pdf</a>"
    ?>
    Ovviamente andrebbero aggiunti dei controlli sull'effettiva esistenza del file in questione, i parametri andrebbero passati in POST per evitare che qualcuno modifichi a mano la querystring ed infine il mese e l'anno del file andrebbero ricavati automaticamente.
    Ciao satifal, grazie per la tua disponibilità.

    Sì, anche i tuoi colleghi della sezione HTML mi dissero di aggiungere i controlli e di rendere dinamici anche mese e anno ma, al momento, considerando che l'utilizzo di tali pagine è interno e considerando la mia poca esperienza, mi accontento di partire con poco, poi eventualmente proverò a migliorare il tutto.

    Ebbene, ho cambiato il passaggio del dato in POST come da te consigliato e ho adattato il codice PHP alle mie esigenze:
    Codice PHP:
    <?php
    $giorno 
    $_GET['GIORNO'];
    echo 
    "<a href='http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno-10-13.pdf'>DISPO ACCESSORI AW13</a>"
    ?>
    però mi produce questo link:
    codice:
    http://refusi.altervista.org/disp/SUPERDRY%20ACCESSORI%20DISP%20MAGA%20AW13%20-10-13.pdf
    ovvero non mi prende lo 04 che avevo passato come parametro dalla pagina disp.html. Perché?

  4. #4
    Se passi i dati in POST devi modificare il codice:

    Codice PHP:
    ...
    $giorno $_POST['GIORNO'];
    ... 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Quote Originariamente inviata da satifal Visualizza il messaggio
    Se passi i dati in POST devi modificare il codice:

    Codice PHP:
    ...
    $giorno $_POST['GIORNO'];
    ... 
    Pffffff, che errore banale. Grazie satifal!

    Un'ultima domanda: ho ritoccato lievemente il codice, e ho tentato di far sì che si aprissero due link al momento del click sul bottone; questo il codice che ho provato a scrivere e che, ovviamente, non funziona (mi apre solo il pdf senza considerare minimamente il secondo link):
    Codice PHP:
    <?php
    $giorno 
    $_POST['GIORNO'];
    $errori $_SERVER['QUERY_STRING'];
    $indirizzo www.google.sm;

    echo 
    "<html>
    <head>
    <title>INFO DISPONIBILITA'</title>
    </head>
    <body bgcolor='#000100'>
    <font color='#D2982F' size='5'><br>"
    ;
    echo 
    "<a href='http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno.pdf?indirizzo='.$indirizzo.''>DISPO ACCESSORI AW13</a><br><br>";
    echo 
    "</html>";
    ?>

    Avevo anche tentato di gestire le eccezioni con il $_SERVER['QUERY_STRING'], come si può vedere, ma direi che è ancora troppo prematuro!

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Codice PHP:
    "<a href='http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno.pdf' onclick='window.open(\'".$indirizzo."\',\'NewWindow\')'>DISPO ACCESSORI AW13</a><br><br>" 
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Grazie per la risposta, Andrea. Purtroppo, però, non funziona. Ho tentato anche di sostituire i doppi apici con dei semplici apici, ma nulla da fare.

    Codice PHP:
    echo "<a href='http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno.pdf' onclick='window.open(\''.$indirizzo.'\',\'NewWindow\')')'>DISPO ACCESSORI AW13</a><br><br>"

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Codice PHP:
    echo '<a href="http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno.pdf" onclick="window.open(\'$indirizzo\',\'NwWindow\'):">DISPO ACCESSORI AW13</a><br><br>'
    oppure prova anche cosi:
    Codice PHP:
    echo '<a href=http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20'.$giorno.'.pdf" onclick="window.open(\''.$indirizzo.'\',\'NwWindow\'):">DISPO ACCESSORI AW13</a><br><br>'
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Codice PHP:
    <?php
    echo "<a href=\"http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno.pdf\" onclick=\"window.open('$indirizzo', 'NewWindow')\">DISPO ACCESSORI AW13</a><br/><br/>";
    ?>
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    @Andrea: purtroppo non funzionano, grazie lo stesso per averci provato.

    @satifal: funziona, grazie mille. Ho solamente fatto in modo che il secondo link si aprisse in una nuova finestra piuttosto che in una nuova scheda.

    Questo il codice di cui mi sono servito, qualora in futuro qualcun altro si trovasse nelle mie stesse difficoltà:

    disp.html
    codice HTML:
    <form method="POST" action="dispo.php">
    <select name="GIORNO">
    <option value="08-10-13">08-10-13</option>
    <option value="11-10-13">11-10-13</option>
    </select>
    <input type="submit" value="Conferma">
    </form>
    dispo.php
    Codice PHP:
    <?php
    $giorno 
    $_POST['GIORNO'];
    $indirizzo "http://silverlinetrips.com/?usr=Wiccio";

    echo 
    "<html>
    <head>
    <title>INFO DISPONIBILITA'</title>
    </head>
    <body bgcolor='#000100'>
    <font color='#D2982F' size='5'><br>"
    ;
    echo 
    "<a href=\"http://refusi.altervista.org/disp/ACCESSORI%20DISP%20MAGA%20AW13%20$giorno.pdf\" onclick=\"window.open('$indirizzo', 'NewWindow', 'width=400,height=200')\">DISPO ACCESSORI AW13</a><br/><br/>";
    echo 
    "<a href=\"http://refusi.altervista.org/disp/DONNA%20DISP%20MAGA%20AW13%20$giorno.pdf\" onclick=\"window.open('$indirizzo', 'NewWindow', 'width=400,height=200')\">DISPO DONNA AW13</a><br/><br/>";
    echo 
    "<a href=\"http://refusi.altervista.org/disp/UOMO%20DISP%20MAGA%20AW13%20$giorno.pdf\" onclick=\"window.open('$indirizzo', 'NewWindow', 'width=400,height=200')\">DISPO UOMO AW13</a><br/><br/>";
    echo 
    "</html>";
    ?>

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.