Salve a tutti,
ho realizzato un semplice script in php che serve per leggere un file csv sul server, e restituire i valori trovati. La ricerca avviene attraverso un form dove si inserisce un numero, che è la chiave di ricerca, e vengono restituite tutte le righe del csv che corrispondono a quel numero.
Ho creato una pagina nella quale ho integrato lo script ed il form. Volevo sapere se è possibile fare partire la ricerca direttamente da un blocco (per esempio posizionato nella barra laterale), però ottenere i risultati non nel blocco, ma nella pagina dove ho inserito lo script, che è una normalissima /node/xxxxxx con un pò di codice php nel corpo della pagina.
Grazie!
Ho risolto da solo, è bastato mettere nella action del form l'url della pagina e l'azione da eseguire! Nel mio caso l'azione si chiama "#", quindi è stato sufficiente digitare nel codice del blocco:
<form action="http://www.miosito.it/node/7676#" method="post">
Mi scuso con gli amministratori per l'inutile spreco di byte...!
..vivere non è difficile, potendo poi rinascere..
Che succede se imetti il form senza specificare un numero? Funziona?
Più imparo, più dubito.
Non ho capito; intendi dire senza specificare il node?
..vivere non è difficile, potendo poi rinascere..
Esatto. Come si comporta se c'è un errore nel form? Non so se il campo "dove si inserisce un numero, che è la chiave di ricerca" è obbligatorio, oppure viene controllato se è numerico, ecc, ecc.
Di solito la 'action' riporta alla pagina del form. Se guardi con Firebug, il form di ricerca su questa pagina 'Cerca nel sito:' ha l'action
/node/11109
- cioè questa pagina. Solo se la validazione è corretto allora viene spostato alla destinazione,. Questo tramite Form API, usando#redirect
.Se non c'è nessun controllo di validazione, qualche controllo bisogna fare nel tuo script.
Più imparo, più dubito.
Appena ho un minuto faccio due prove e controllo! Grazie!
..vivere non è difficile, potendo poi rinascere..
Ho fatto un test!
Lo script prevede già i controlli sul dato inserito, e restituisce comunque qualcosa; ovvero se qualcuno inserisce un codice sbagliato restituisce "Codice Errato". Questo fa in modo che qualsiasi sia il codice inserito, anche sbagliato, si ottenga comunque un risultato nella pagina node/qualcosa. Quindi la validazione la fa lo script.
Naturalmente cambiando action nel form, e togliendo per esempio il numero del node, e quindi inserendo un percorso del genere:
http://www.miosito.it/node/#
lo script si esegue nel blocco e restituisce comunque dati corretti.
Quindi credo che se lo script fa il suo dovere, non sia necessario il #redirect!
..vivere non è difficile, potendo poi rinascere..
Va bene, allora. Attenzione però con i bookmark: http://en.wikipedia.org/wiki/Post/Redirect/Get
Più imparo, più dubito.