Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][JavaScript]skrypt nie przekazuje wartości pod IE, pod Firefox tak
wariusz
post 16.08.2008, 10:33:02
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 16.07.2008

Ostrzeżenie: (0%)
-----


Skrypt poniżej działa poprawnie pod Firefoxem jednak pod IE się wysypuje dokładnie w drugim pliku.

pierwszy plik:

Kod
<script type="text/javascript">

function szukaj(formularz) {
  plik = "szukaj.php?q="+formularz.q.value;
    
   element = document.getElementById("wynik");
  
   xml = null;
   element.innerHTML="";
  
   if (window.XMLHttpRequest) { // Mozilla, Safari, Opera ...
     xml = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
     xml = new ActiveXObject("Microsoft.XMLHTTP");
}

   if (xml != null) {
     xml.onreadystatechange = function() {
       if (xml.readyState==4) {
         element.innerHTML=xml.responseText;
       }
     }
     xml.open("GET", plik, true);
  
     xml.send(null);
   }
   return false;
}

</script>
  
<form action="index.php" method="get"  onsubmit="return szukaj(this)"><div>
     <!--<input type="text" name="q" />    -->
  
  <select name="q"  >
         <option selected="selected">wybierz</option>
         <option >opcja1</option>
         <option >opcja2</option>
         <option >opcja3</option>
         <option >opcja4</option>
         <option >opcja5</option>
        
         </select>

    
      <select name="qq"  >    
<option selected="selected">wybierz</option>
         <option >opcja11</option>
         <option >opcja12</option>
         <option >opcja13</option>
         <option >opcja14</option>
         <option >opcja15</option>
         <option >opcja16</option>
        
         </select>


<input type="submit" value="filtruj" />
</div></form>

<div id="wynik"></div>



drugi plik:

Kod
<?
// tu się zaczyna błąd , nie wiem jak przekazać ją pod IE
$q = $_GET["q"]; // ta zmienna jest pusta pod IE (pod Firefox me odpowiednią wartość z formularza)

  if (get_magic_quotes_gpc()) $q = stripslashes($q);
$q = trim(htmlspecialchars($q, ENT_QUOTES));
  $db_handle = pg_connect("dbname = db user=us password=pss host=host");
//if (p$db_handle)
  

$query = "Select * from tab1 where  marka='$q' or typ='$qq'    order by lp ";
$wynik = pg_exec ($db_handle, $query);


if ($wynik and pg_numrows($wynik)<1 )
{
echo "<p>Brak danych</p>"; //$wynik and pg_numrows($wynik)<1
}
else
{
$n = pg_numrows($wynik);
echo "<p>dane: $n </p>";
for($row=0; $row< pg_numrows($wynik); $row++){
$dane = pg_fetch_array($wynik, $lp);

echo '....';

}

}
  pg_close();
?>


Próbowałem nawet zapisać wartość tej zmiennej $q do pliku w pierwszym pliku i odczytać z tego pliku w drugim pliku ale też się nie potrafiłem tego zrobić , proszę o jakieś sugestie i pomoc w rozwiązanie tego problemu

Ten post edytował wariusz 16.08.2008, 10:34:59
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
paziek
post 16.08.2008, 11:41:55
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


może dodaj value="cośtam" do opcji i/lub do selecta

poza tym, napewno wyłapuje ci tego selecta? Sprawdź przy pomocy alert(formularz.q.tagName); czy daje ci "SELECT"
Go to the top of the page
+Quote Post
wariusz
post 16.08.2008, 11:54:43
Post #3





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 16.07.2008

Ostrzeżenie: (0%)
-----


tak w przypadku alert(formularz.q.tagName); wyświetla mi się okienko tylko z "Select"
a z value próbowałem to przypisać do zmiennej:
$zmienna = formularz.q.value;
jednak nie działało.
Go to the top of the page
+Quote Post
ferrero2
post 16.08.2008, 12:05:07
Post #4





Grupa: Zarejestrowani
Postów: 171
Pomógł: 32
Dołączył: 5.08.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


próbowałeś użyć apostrofów zamiast cudzysłowów ?

Kod
#zamiast
$q = $_GET["q"];

#to

$q = $_GET['q'];

Pozatym źle przekazujesz wartości zmiennym w sql-u :

Kod
$query = "Select * from tab1 where  (([marka]= '" . $q . "') or ([typ]= '" . $qq . "'))    order by lp ";


Pozdrawiam
Mariusz


--------------------
---------------------------
"Jeżeli trzeci dzień z rzędu nie chce Ci się pracować tzn że dziś jest ŚRODA !
Algorytmy , Programowanie , Tworzenie WWW - SPRAWDŹ
Go to the top of the page
+Quote Post
wariusz
post 16.08.2008, 12:29:45
Post #5





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 16.07.2008

Ostrzeżenie: (0%)
-----


tak zamiast cudzysłowowa używałem apostrofów i na odwrót jednak bez zmian pod FF działa pod IE nie działa, co do tego warunku to po wpisanie tego co podałeś wyskakuje błąd składni jak wrócę do mojego zapisu jest ok.
Jednak problem nadal jest sciana.gif i nie umiem go przejść, dzięki że próbujesz mi pomóc.
Go to the top of the page
+Quote Post
paziek
post 16.08.2008, 12:45:41
Post #6





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


tak się zmiennej nie deklaruje w JS, ale to nie ważne.

Spróbuj tego:
Kod
         <select name="q" value="wybierz">
         <option selected="selected" value="wybierz">wybierz</option>
         <option value="opcja1">opcja1</option>
         <option value="opcja2">opcja2</option>
         <option value="opcja3">opcja3</option>
         <option value="opcja4">opcja4</option>
         <option value="opcja5">opcja5</option>        
         </select>
Go to the top of the page
+Quote Post
wariusz
post 16.08.2008, 12:57:29
Post #7





Grupa: Zarejestrowani
Postów: 49
Pomógł: 1
Dołączył: 16.07.2008

Ostrzeżenie: (0%)
-----


dzięki jesteś gość pomogło z value w środku.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 3.07.2025 - 18:04