Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][JavaScript]skrypt nie przekazuje wartości pod IE, pod Firefox tak
Forum PHP.pl > Forum > Przedszkole
wariusz
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
paziek
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"
wariusz
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.
ferrero2
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
wariusz
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.
paziek
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>
wariusz
dzięki jesteś gość pomogło z value w środku.
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.