Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie działa enter.....
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
patigo
Nie działa enter....

  1. <script language=\"JavaScript\">
  2. function show()
  3. {
  4. obj=document.getElementById('idl');
  5. objCheck=document.getElementById('idBox');
  6. if (objCheck.checked)
  7. obj.style.display=\"\";
  8. else
  9. obj.style.display=\"none\";
  10. }
  11. </script>
  12. <table border=\"0\" width=\"500\">
  13. <form action=\"index.php\" method=\"post\">
  14. <tr><td colspan=\"3\"><input type=\"hidden\"  name=\"nr_id\" value=\"<?=$HTTP_GET_VARS['nr'];?>\"></td></tr>
  15. <tr>
  16.     <td colspan="2"><input type="text" name="zapytanie"  value="" size="65"/></td>
  17.     <td><input type="submit" name="action" value="Sprawdź"/>
  18.     </td>
  19. </tr>
  20. <tr>
  21.    <td colspan=\"3\">opcje wyszukiwania<input type=\"checkbox\" id=\"idBox\" onClick=\"show()\" />
  22. </td> </tr>
  23. <tr id=\"idl\" style=\"display:none\">
  24.     <td colspan=\"3\">pokaz wg&nbsp;<select name=\"sortuj\">
  25.     <option value=\"data\">daty
  26.     <option value=\"temat\">alfabetycznie
  27.     </select>

itd... Wszystko ładnie pięknie działa tylko jest mały problem...

Formularz bez JS działa jak należy ale po dodaniu skryptów jest coś nie tak.
Aby wyszukać jakiś wyraz należy najechać myszką na przycisk Sprawdź, dlaczego nie można poprostu kliknąć ENTER na klawiaturze?? Przed dodaniem skryptu Działało jak należy z enterem...

Pozdrawiam
revyag
Moze masz jakąś literówke gdzieś indziej w dokumencie. Bo ja sprawdziłem ten kod i działa. Ustawiam się w inpucie naciskam enter i przechodzi mi do następnej strony.
patigo
Faktycznie działa w takim razie to nie wina JS.Przepraszam. Ale problem dalej jest nie wiem dlaczego tak się dzieje ale stwórz 2 pliki:

1 plik form.php
Kod
<?
if (isset($HTTP_POST_VARS['action']))
{
echo "Hello World";
}
else
{
?>
<center>
<table border="0" width="500">
<form action="in.php" method="post">
<tr><td colspan="3"><input type="hidden"  name="nr_id" value="<?=$HTTP_GET_VARS['nr'];?>"></td></tr>
<tr>
    <td colspan="2"><input type="text" name="zapytanie"  value="" size="65"/></td>
    <td><input type="submit" name="action" value="Wyszukaj!" />
</tr>
</form>
</table></center>
<?}
?>



2 plik in.php
Kod
<?
if (isset($HTTP_GET_VARS['pub'])){echo "nic nie wybrałeś!";}
else{require ("form.php");}
?>


gdzie jest błąd??
revyag
Używasz $HTTP_POST_VARS i $HTTP_GET_VARS. Zamień to na $_POST i $_GET i będzie chodzić smile.gif
patigo
teraz wogóle nie działa ohmy.gif
Dlaczego proponujesz mi $_POST i $_GET zamiast $HTTP_POST_VARS ...questionmark.gif
revyag
$HTTP_POST_VARS i $HTTP_GET_VARS do prawidłowego działania wymagają ustawienia dyrektywy w php.ini register_globals.
A aktualne wersje php, ze względów bezpieczeństwa, mają domyślnie tę dyrektywę ustawioną na off.
Dlatego używa się tablic $_POST i $_GET zamiast tych wyżej wspomnianych, ponieważ są to zmienne superglobalne.
Co do Twojego skryptu, wkleiłem ten kod, zmieniłem register_globals na on w php.ini, żeby sprawdzić czy to chodzi i skrypt działa.
Więc problem leży chyba gdzieś indziej.
patigo
A ja dostałem polecenie od administratora serwera że mam używać $HTTP_POST_VARS tak działają wszystkie serwisy na tym serwerze i nie ma problemów, poza tym serwer działa na starej wersji apache.Na razie nie mam wpływu na serwer dlatego też szukam rozwiązania w swoim skrypcie a nie w ustawieniach na serwerze...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.