(x)html, radio button e google search [RISOLTO]

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

(x)html, radio button e google search [RISOLTO]

Messaggio da danix »

Ciao a tutti,
sto scrivendo una pagina da tenere in locale come homepage di firefox, ci ho messo vari link che uso spesso più alcuni siti che ho in locale e ho anche pensato di metterci una ricerca di google...
il form è molto semplice ma funziona, ve lo posto:

Codice: Seleziona tutto

    <div class="google">
      <form method=GET action="http://www.google.com/search">
        <table id="google">
          <tr>
            <td>
              <a href="http://www.google.com"><img src="./danix.png" border="0" alt="Google Danix" align="middle" /></a>
              <input type=text name=q size=31 maxlength=255 value="" />
              <input TYPE=hidden name=hl value=it />
              <input type=submit name=btnG value="cerca" />
            </td>
          </tr>
        </table>
      </form>
    </div>
che altro non fa se non mostrarmi una riga per la ricerca con un bottone e un'immagine che ho fatto io... fin qui è abbastanza semplice, no??
La mia domanda però riguarda la possibilità di mettere 2 radio button in modo da selezionare il tipo di ricerca, in quanto io uso spesso anche la ricerca per immagini... è possibile fare una cosa del genere senza usare php (che non conosco) o altro??
ho fatto alcune prove e l'unica differenza tra la ricerca normale e quella per immagini sta nell'indirizzo che si va a contattare
nella ricerca web normale:
www.google.com/search
mentre nella ricerca per immagini:
www.google.com/images

a dirla tutta nel secondo caso l'indirizzo corretto sarebbe images.google.com/images, ma ho provato con www.google.com/images e funziona ugualmente... le varie query e i campi nascosti funzionano allo stesso modo...

si può cambiare il valore di "action" nel tag form in semplice (x)html o devo per forza utilizzare un linguaggio di programmazione??

grazie mille a tutti...


Ciau
Ultima modifica di danix il mer 11 giu 2008, 14:51, modificato 1 volta in totale.
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Re: (x)html, radio button e google search

Messaggio da aschenaz »

Ad occhio e croce, non volendo utilizzare una tecnologia lato-server,
potresti ovviare con quella lato-client, ovvero con javascript, mettendo
nella action un qualcosa del tipo document.forms[0].nome-del-campo-radio.value.

Fai delle ricerche, però: io col javascript vado a tentativi...

Ah, un consiglio: racchiudi sempre i parametri tra doppi apici
(es. method="GET").

Ciao,
nino

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

Re: (x)html, radio button e google search

Messaggio da danix »

ciao nino, guarda se le sole scelte possibili ricadono tra javascript e php preferisco di gran lunga il secondo, quindi proverò a fare qualcosa in questo senso...

sapete darmi qualche indicazione?? potrei creare 2 variabili tramite i radio buttons, ma poi potrei passarle all'indirizzo nel tag form?? sto leggendo un po' del manuale online di php e non mi sembra nulla di particolarmente complicato...


grazie dell'aiuto...
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

Re: (x)html, radio button e google search

Messaggio da danix »

ho fatto qualche passo avanti... tramite la funzione switch riesco a gestire la scelta riguardante i radio buttons, ma non riesco a passarla al campo action del tag form...

mi direste dov'è l'errore??

Codice: Seleziona tutto

    <div class="google">
<?php
switch($_GET['research']){
  case 'web':
    $searchtype = 'http://www.google.com/search';
    break;
  case 'img':
    $searchtype = 'http://www.google.com/images';
    break;
  default:
    $searchtype = 'http://www.google.com/search';
  }
?>
      <form method="GET" action="<?php echo $_GET['searchtype']; ?>" />
        <table id="google">
          <tr>
            <td>
              <a href="http://www.google.com"><img src="./danix.png" border="0" alt="Google Danix" align="middle" /></a>
              <input type="text" name="q" size="31" maxlength="255" value="" />
              <input type="hidden" name="hl" value="it" />
              <input type="submit" name="btnG" value="cerca" />
            </td>
            <td id="gpowered">
              Powered by <a href="http://www.google.com">Google&#8482;</a>
            </td>
          </tr>
          <tr>
            <td>
              web <input type="radio" name="research" checked="checked" value="web" />
              img <input type="radio" name="research" value="img" />
            </td>
          </tr>
        </table>
      </form>
    </div>
in questo modo però cercando "qwerty" come immagini mi restituisce un indirizzo come questo:
http://localhost/?q=qwerty&hl=it&btnG=c ... search=img

è la prima volta che scrivo qualcosa in php, abbiate pietà... ;)


Grazie a tutti...
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Re: (x)html, radio button e google search

Messaggio da aschenaz »

Io farei una pagina di raccolta dati in php, da mettere in action,
e, da questa, farei un redirect in base alle variabili passate col form.
Ad esempio, nell'action avrei raccolta.php e, poi, in tale pagina
formerei la querystring di google, da dare in pasto ad un header:
if($_POST["tiporicerca"]=="images") $querystr="images.google.com";
etc etc. (non so bene adesso come si forma la querystring di google...).
e poi...
header("Location: $querystr");

Scusa, ma vado un po' di fretta...

In caso, ci sentiamo stasera...

Avatar utente
guargua
Linux 0.x
Linux 0.x
Messaggi: 31
Iscritto il: mar 29 apr 2008, 18:41
Nome Cognome: Alessandro Guarguaglini
Slackware: 12
Kernel: 2.6.25.4
Desktop: kde
Località: Livorno
Contatta:

Re: (x)html, radio button e google search

Messaggio da guargua »

danix85 ha scritto:ciao nino, guarda se le sole scelte possibili ricadono tra javascript e php preferisco di gran lunga il secondo, quindi proverò a fare qualcosa in questo senso...
Onestamente, se lo scopo è unicamente quello che descrivi, scomodare php (e di conseguenza
apache) mi sembra un pò troppo.
Capisco d'altronde la tua ritrosia per javascript, nemmeno a me sta granchè simpatico, ma per fare una
cosa del genere va più che bene.
Eccoti un esempio funzionante :

Codice: Seleziona tutto

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<script type="text/javascript">
 function changeAction(choice) {
   var gForm=choice.form
   if (choice.id == "ch1") {
      gForm.action="http://www.google.com/search"
     }
   else {
      gForm.action="http://www.google.com/images"
     }

}
</script>
</head>
<body>
        <div class="google">
          <form method="GET" action="http://www.google.com/search">
            <table id="google">
              <tr>
                <td>
                  <a href="http://www.google.com">
                 <img src="./danix.png" border="0" 
                          alt="Google Danix" align="middle" />
                  </a>
                  <input type=text name=q size=31 maxlength=255 value="" />
                  <input type="radio" name="choice" id="ch1" 
                             onclick="changeAction(this)" checked="checked"/>
                  <label for="ch1"> cerca argomento</label>
                  <input type="radio" name="choice" id="ch2" 
                             onclick="changeAction(this)"/>
                  <label for="ch1"> cerca immagine</label>
                  <input type="hidden" name="hl" value="it" />
                  <input type="submit" name="btnG" value="cerca" />
                </td>
              </tr>
            </table>
          </form>
        </div>



</body>
</html>
Ciao.

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

Re: (x)html, radio button e google search

Messaggio da danix »

grazie per le risposte, il problema di scomodare apache e php non si pone perchè il pc su cui utilizzerei questa pagina ha un ambiente lamp configurato su cui faccio vari esperimenti con i cms più disparati ;) ... per quanto riguarda javascript forse in questo caso calza un po' meglio di php in quanto potrei tenere tutto su un'unica pagina, anche se il suggerimento di nino mi incuriosisce perchè avrei modo di fare qualche prova più approfondita con php... faccio qualche test e vediamo a cosa giungo... ;)


Grazie a tutti per l'aiuto...
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

Re: (x)html, radio button e google search

Messaggio da danix »

ho provato entrambi i metodi e sono entrambi validi, mi sono divertito un po' di più con quello in php perchè ho dovuto leggere un po' il manuale (cercare il "come si fa" nei manuali mi diverte sempre ;) ) e scrivere il tutto. La soluzione in javascript è altrettanto valida e meno macchinosa (tutto in una pagina html è veramente comodo) ma siccome js mi sta un po' sulle balle, non lo conosco proprio come linguaggio (mi sono limitato a copincollare la soluzione di guargua), alla fine mi sono deciso per la soluzione php e ho tirato fuori una pagina "data.php" in questo modo:

Codice: Seleziona tutto

<?php
if ($_POST["searchtype"]=="web") {
    $gpage="http://www.google.com/search?";
} elseif ($_POST["searchtype"]=="img") {
    $gpage="http://images.google.com/images?";
} else {
    $gpage="http://www.google.com/search?";
}

$querystr="{$gpage}q={$_POST['q']}&hl={$_POST['hl']}&btnG={$_POST['btnG']}";

header("Location: $querystr");
?>

com'è??

ancora grazie per l'aiuto che mi avete dato... ;) grandi come sempre...
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
conraid
Staff
Staff
Messaggi: 13630
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: (x)html, radio button e google search

Messaggio da conraid »

Hai voglia di studiare qualcosa di nuovo e leggere manuali?
xforms
http://en.wikibooks.org/wiki/XForms/Search_Form

purtroppo firefox non lo supporta direttamente, ma solo tramite estensione

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

Re: (x)html, radio button e google search

Messaggio da danix »

grazie del link conraid, ma come mai FF non supporta xforms?? nemmeno FF3?? ho guardato tra gli addons di firefox e quello per gli xforms arriva fino a FF2 :(
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
conraid
Staff
Staff
Messaggi: 13630
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: (x)html, radio button e google search

Messaggio da conraid »

danix85 ha scritto:grazie del link conraid, ma come mai FF non supporta xforms?? nemmeno FF3?? ho guardato tra gli addons di firefox e quello per gli xforms arriva fino a FF2 :(
Ci speravo anche io, ma come puoi vedere direttamente da qui
http://xforms-examples.googlecode.com/s ... arch.xhtml
ancora no :-(

FF3 non supporta nemmeno CSS3 in modo completo.

La versione 3.1 invece, ancora in alpha, supporta CSS3 quasi totalmente

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Re: (x)html, radio button e google search

Messaggio da aschenaz »

danix85 ha scritto:ho provato entrambi i metodi e sono entrambi validi, mi sono divertito un po' di più con quello in php perchè ho dovuto leggere un po' il manuale (cercare il "come si fa" nei manuali mi diverte sempre ;) ) e scrivere il tutto. La soluzione in javascript è altrettanto valida e meno macchinosa (tutto in una pagina html è veramente comodo) ma siccome js mi sta un po' sulle balle, non lo conosco proprio come linguaggio (mi sono limitato a copincollare la soluzione di guargua), alla fine mi sono deciso per la soluzione php e ho tirato fuori una pagina "data.php" in questo modo:

Codice: Seleziona tutto

<?php
if ($_POST["searchtype"]=="web") {
    $gpage="http://www.google.com/search?";
} elseif ($_POST["searchtype"]=="img") {
    $gpage="http://images.google.com/images?";
} else {
    $gpage="http://www.google.com/search?";
}

$querystr="{$gpage}q={$_POST['q']}&hl={$_POST['hl']}&btnG={$_POST['btnG']}";

header("Location: $querystr");
?>

com'è??
:thumbright:

Comunque sia, anche con php puoi risolvere tutto nella stessa pagina,
mettendo action="" e, in testa alla pagina, lo script php che verifica
se sono settate la variabili passate col form:
if(isset($_POST["qualcosa"])) ...
A proposito, noto che sopra usavi il metodo GET... L'hai cambiato, vero?
Altrimenti con $_POST non funziona e devi usare $_GET (o $_REQUEST)...

Io in genere preferisco sempre usare una pagina a parte per questioni,
più che altro, di gusto...

Credo che tu lo sappia già, ma con google puoi cercare anche all'interno
del sito, con una query tipo questa:
http://www.google.it/search?q=PAROLADAC ... URLDELSITO

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 5.4.43 x86_64
Desktop: i3
Località: Siderno (RC)
Contatta:

Re: (x)html, radio button e google search

Messaggio da danix »

si nino, conoscevo quella funzione di google, mi pare però facendo qualche prova che la ricerca all'interno dei siti funzioni lo stesso anche con il mio form abbastanza spartano... ho provato ad usare questa stringa di ricerca:
gslacky site:www.slacky.eu
e mi ha restituito lo stesso identico risultato di una ricerca identica a questa ma effettuata dalla home di google... l'unica differenza sta nella formattazione delle opzioni della query:

Codice: Seleziona tutto

- mia ricerca:
http://www.google.com/search?q=gslacky%20site:www.slacky.eu&hl=it&btnG=cerca

- originale google:
http://www.google.com/search?hl=it&q=gslacky+site%3Awww.slacky.eu&btnG=Cerca&lr=
ma il risultato è identico... :)


Grazie dell'aiuto... :)
danix
myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Re: (x)html, radio button e google search

Messaggio da aschenaz »

danix85 ha scritto:si nino, conoscevo quella funzione di google, mi pare però facendo qualche prova che la ricerca all'interno dei siti funzioni lo stesso anche con il mio form abbastanza spartano... ho provato ad usare questa stringa di ricerca:
gslacky site:www.slacky.eu
...
Si, in effetti la querystring che ti dicevo io è esattamente corrispondente
a questo tipo di ricerca (anche %3A non è altro che l'urlencode di : ).

Ciao,
nino

Rispondi