Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    7

    Premendo il tasto invio non mi invia i dati del form

    Vi espongo il mio stupidissimo problema che mi sta facendo impazzire:
    Non so se va bene quasta sezione perchè il problema riguarda il form ma comunque la pagina è in PHP.
    Ho una form con metoto="GET" e action="". All'interno di una tabella usata per impaginare i campi ho un campo testo e 2 menu a tendina che pescano tramite PHP i valori da un database.
    Questi campi servono per filtrare una ricerca. Quando io ne compilo uno e premo invio non viene eseguita la parte di codice PHP per la ricerca ma mi ricarica la pagina passando i parametri della casella di testo e dei 2 menu a tendina mentre se premo il bottono con il mouse il passa correttamente anche il suo parametro.
    E' come se il bottone non fosse selezionato e non senta la pressione del tasto invio.
    Perchè???

    <form name="ricerca" method="get" action="">
    <TABLE>
    <TR>
    <TD>


    <INPUT TYPE="TEXT" NAME="search_name"></P>
    </TD>

    <TD>
    <SELECT NAME="search_societa">
    <?php
    echo "<OPTION>";
    $query="select societa from societa order by societa";
    $db->select_db('one');
    $result=$db->query($query);
    if (!$result) {
    echo "<OPTION>DB Error, could not query the database";
    }
    $num_rows=$result->num_rows;
    for($i=0;$i<$num_rows;$i++)
    {
    $row=$result->fetch_row();
    echo "<OPTION>$row[0]</OPTION>";
    }
    ?>
    </SELECT>
    </TD>
    <TD>
    <SELECT NAME="search_ufficio">
    <?php
    echo "<OPTION>";
    $query="select ufficio from ufficio order by ufficio";
    $db->select_db('one');
    $result=$db->query($query);
    if (!$result) {
    echo "<OPTION>DB Error, could not query the database";
    }
    $num_rows=$result->num_rows;
    for($i=0;$i<$num_rows;$i++)
    {
    $row=$result->fetch_row();
    echo "<OPTION>$row[0]</OPTION>";
    }
    ?>
    </SELECT>
    </TD>
    <TD>
    <INPUT type="submit" name="search" value="Ricerca">
    </TD>
    </TR>
    </TABLE>

  2. #2

    Re: Premendo il tasto invio non mi invia i dati del form

    Originariamente inviato da giuffri
    Vi espongo il mio stupidissimo problema che mi sta facendo impazzire:
    Non so se va bene quasta sezione perchè il problema riguarda il form ma comunque la pagina è in PHP.
    Ho una form con metoto="GET" e action="". All'interno di una tabella usata per impaginare i campi ho un campo testo e 2 menu a tendina che pescano tramite PHP i valori da un database.
    Questi campi servono per filtrare una ricerca. Quando io ne compilo uno e premo invio non viene eseguita la parte di codice PHP per la ricerca ma mi ricarica la pagina passando i parametri della casella di testo e dei 2 menu a tendina mentre se premo il bottono con il mouse il passa correttamente anche il suo parametro.
    E' come se il bottone non fosse selezionato e non senta la pressione del tasto invio.
    Perchè???
    (Forse) hai un po' di confusione.
    Quando una pagina &egrave; arrivata al browser, il browser stesso non ne ha l api&ugrave; pallida idea della maniera in cui il server la ha generata, che fosse php, asp o html puro.
    Quindi la frase che ho evidenziato in rosso non ha senso.
    Poi, nel tuo codice, rivedi la costruzione delle due select, perch&egrave;, se guardi al codice html che arriva al browser, vedrai che c'&egrave; un'<option> di troppo non chiusa:
    Codice PHP:
    <?php
    echo "<OPTION>"// <--- questa non ci va!
    Poi:
    Premendo il tasto invio la form viene inviata come fosse stato premuto il tasto [Submit]

    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    7
    Poi:
    Premendo il tasto invio la form viene inviata come fosse stato premuto il tasto [Submit]
    E' proprio questo il mio problema!!! Che se premo invio non è come premere il tasto SUBMIT
    Tra l'altro mi sono accorto ora che questo difetto si presenta solo con Explorer. Firefoz e Chrome si comportano correttamente.
    Questo è l'indirizzo locale della pagina http://localhost/phonebook.php

    Quando premo invio come indirizzo mi trovo questo:
    http://localhost/phonebook.php?searc...earch_ufficio=
    ci sono solo i tre campi passati come parametri e non il parametro del bottone.

    Infatti se lo premo con il mouse mi trovo questo:
    http://localhost/phonebook.php?searc...search=Ricerca

    A questo punto la ricerca tramite PHP viene eseguita poichè eseguo un controllo tramite if(isset($_GET['search']))

    Poi, nel tuo codice, rivedi la costruzione delle due select, perchè, se guardi al codice html che arriva al browser, vedrai che c'è un'<option> di troppo non chiusa:
    codice PHP:

    <?php
    echo "<OPTION>"; // <--- questa non ci va!
    Quello <OPTION> mi serve per lasciare i campi bianchi altrimenti mi seleziona automaticamente i primi valori caricati da DB. Comunque l'ho chiusa!

  4. #4
    Originariamente inviato da giuffri
    Quando premo invio come indirizzo mi trovo questo:
    http://localhost/phonebook.php?searc...earch_ufficio=
    ci sono solo i tre campi passati come parametri e non il parametro del bottone.

    Infatti se lo premo con il mouse mi trovo questo:
    http://localhost/phonebook.php?searc...search=Ricerca
    &Egrave; normale!
    La form, in ogni caso, viene inviata!
    Lato php, controllare se if(isset($_GET['search'])) significa solo chiedersi se, all'atto del submit, l'Utente ha premuto il tasto o meno. Il submit in ogni caso &egrave; stato eseguito!
    Quindi, se vuoi sapere se di submit si tratta, per esempio puoi mettere nella form un campo hidden, che viene sempre inviato:
    codice:
    <input type="hidden" name="ricerca" value"on" />
    e, lato php:
    Codice PHP:
    if (isset($_GET['ricerca']))
    .... 
    Quello <OPTION> mi serve per lasciare i campi bianchi altrimenti mi seleziona automaticamente i primi valori caricati da DB. Comunque l'ho chiusa!
    Ah, beh, allora io farei:
    codice:
    <option value="">Scegli...</option>
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    7
    Ottimo!!! Funziona alla grande.

    Sei stato gentilissimo e mille grazie per l'aiuto!!!

  6. #6
    Originariamente inviato da giuffri
    Ottimo!!! Funziona alla grande.

    Sei stato gentilissimo e mille grazie per l'aiuto!!!
    Quando si pu&ograve;, si fa!

    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

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.