Ho visto su alcuni siti che quando avvio una ricerca compare una finestra di attesa e poi la pagina con il risultato.
Sapreste dirmi come devo fare per realizzare questo effetto?
Grazie,
ciao.
Ho visto su alcuni siti che quando avvio una ricerca compare una finestra di attesa e poi la pagina con il risultato.
Sapreste dirmi come devo fare per realizzare questo effetto?
Grazie,
ciao.
è 1 semplice javascript
![]()
![]()
http://e107plus.org
Chi trova un amico,trova un tesoro, ma chi trova il tesoro se ne frega dell amico!!
Prima di fare una cazzata pensaci
intendi dire l'effetto loading ?
Te lo sconsiglio perchè oltre ad essere inutile (non fa altro che ritardare l'apertura della pagina) fa innervosire gli utenti....
cmq dovresti trovare un articolo dentro html.it
credo si riferisca alla finestra intermedia che c'è anche quando fai una ricerca qui sui vBulletin "la tua ricerca è in corso tra poco ti saranno forniti i risultati"
Se lo vuoi fare per pura estetica è facile
Se lo vuoi fare perchè vuoi effettivamente che elabori in una pagina e ti fornisca i risultati in un'altra non saprei proprio cosa dirti...
Si ma non so come si fa.Originariamente inviato da Iwk_Batterio
Se lo vuoi fare per pura estetica è facile
ti faccio un esempio
la pagina che avvia la ricerca (ricerca.php) passa tramite get il termine da cercare alla pagina di redirect (redirect.php)
Quindi ricerca.php, una volta inviato il form fa azione su se stesso, fa i dovuti controlli e reindirizza con un header a redirect.php?cerca=$dacercare (dove $dacercare = $_POST['da_cercare'])
La pagina redirect.php contiene un meta che fa da redirect dopo tot secondi a esegui_ricerca.php?cerca=[quellocheglièstatopassato] e intanto stampa quello che vuoi (ad esempio "ricerca in corso...")
Infine esegui_ricerca.php prende da $_GET['cerca'] il termine da ricercare e fa quello che deve fare... (in questo caso eseguirà la ricerca)
spero di essere stato chiaro, + lo rileggo, + mi sembra di no![]()
Non tanto. :master:Originariamente inviato da Iwk_Batterio
spero di essere stato chiaro, + lo rileggo, + mi sembra di no
Se ho capito bene in questa pagina devo mettere il tag HTML:La pagina redirect.php contiene un meta che fa da redirect dopo tot secondi
La pagina che contiene il form si chiama: ricerca.phpcodice:<META HTTP-EQUIV="refresh" content="2;URL=ricerca_rs.php">
mentre, la pagina con i risultati si chiama: ricerca_rs.php
Magari se utilizzi i nomi che ho dato alle mie pagine mi puoi aiutare a capire meglio come fare.
Grazie.
Ok dai ti abbozzo qualcosina:
ricerca.php
redirect.phpcodice:<form action='ricerca.php ...> i campi del form </form> <?php if isset(un_campo_del_form) { fai i controlli che ti interessano e se vanno bene $dacercare = $_POST['dacercare]; header ("Location: redirect.php?cerca=$dacercare"); } ?>
ricerca_rs.phpcodice:<?php $dacercare = $_GET['dacercare']; ?> nell'head: <meta http-equiv="refresh" content="5;URL=<?php print('ricerca_rs.php?cerca=$dacercare'); ?>"> metti il codice html del messaggio ad esempio "ricerca in corso... attendere"
Ho solo abbozzato qualcosa, non ho neanche guardato la sintassi... Teoricamente funziona solo con una parola proveniente dal form, se ci sono + parole allora devi usare i campi nascosti (almeno non credo esistano soluzioni migliori).codice:<?php $dacercare = $_GET['cerca']; ?> adesso hai la tua bella variabile $dacercare che contiene il termine che l'utente vuole cercare e ci puoi fare quello che vuoi
Ti ringrazio, è proprio quello che volevo solo che c'è un problema. Mi da errore nella stringa:
codice:header("Location: ricerca.php?cerca=$genere");![]()
1. che errore? e lo copi/incolli?
2. perchè punti a ricerca.php e non a redirect?