Ajax SelectBox bağlaması Sorun

Bu soru iptal edilmiştir...
S.A.
Kpss için tercih robotu yapmaya çalışıyorum. İli selectbox ile seçtikten sonra o ilde bulunan kontenjan verilmiş okullar diğer selectboxta gelsin.
Ajax ile en rahatı olacağı görünüyor. Biraz araştırma yaptım birşeyler buldum düzenledim ama ne yazık ki bir sorun var iller listeleniyor ama o İle bağlı okullar listelenmiyor başka yerde sorun verse şaşardım. Editlediğim kodlar şu şekildedir

index.php
<? include ("javascript.php"); ?>


<select id="iller" name="iller" size="1" class="form" style="width:100%;" onchange="okullari_getir()">
	<option value="">İl Seçiniz</option>
	<?php

	$connect   = mysql_connect("localhost","root");
	$select    = mysql_select_db("okullar",$connect);
	$sql   = "SELECT il_id,il_ad FROM iller ORDER BY il_ad ASC";
	$sonuc = mysql_query($sql);
	$sayi  = mysql_num_rows($sonuc);
	while ($satir = mysql_fetch_array($sonuc))
	{
	  $ilno   = $satir["il_id"];
		$iladi  = $satir["il_ad"];
	  echo '<option value="'.$ilno.'">'.$iladi.'</option>';
	}
	mysql_free_result($sonuc);
	?>
</select>

<select id="okullar" name="okullar" size="1" onchange="mahelle_getir()" class="form" style="width:100%;">
	<option value="">Okul Seçiniz</option>
</select>


<div id="mesaj"></div>


javascript.php

<script language="javascript"  type="text/javascript">
var http = getHTTPObject(); 
function handleHttpResponse() 
{
  if (http.readyState == 1)
	{
	  document.getElementById('mesaj').innerHTML = 'Sorgu Tamamlanıyor ...';
	} else if (http.readyState == 4) {
    if (http.status == 200) 
    {
      var xmlDocument = http.responseXML; 
      var etiketadi	  = xmlDocument.getElementsByTagName('okul');

      var okul_sayi   = etiketadi.length;
      if (okul_sayi>0) 
      {
        var okul_secim_kutusu = document.getElementById("okullar"); 
        var okul_no;
        var okul_adi;
        var i;
        okul_kutu_temizle(okul_secim_kutusu);
        okul_kutu_olustur(okul_secim_kutusu,'Okul Seçiniz','');
				
        for (i=0; i< okul_sayi; i++) 
        { 
          okul_adi  = etiketadi.item(i).getAttribute('okuladi'); 
          okul_no   = etiketadi.item(i).getAttribute('okulno');
          okul_kutu_olustur(okul_secim_kutusu,okul_adi,okul_no);
        }
      }
			document.getElementById('mesaj').innerHTML = 'İşlem Tamamlandı';
    } else {
      document.getElementById('mesaj').innerHTML = 'Hata Oluştu';
    }	    
  }
}
function okul_kutu_olustur(okul_secim_kutusu,isim,deger) 
{
  var new_option   = document.createElement('option');
  new_option.text  = isim;
  new_option.value = deger;
		  
  try {
    okul_secim_kutusu.add(new_option, null);
  }  
  catch(ex) {
    okul_secim_kutusu.add(new_option);
  }
}

function okul_kutu_temizle(xmlkok_etiket) 
{
  while (xmlkok_etiket.length > 0) 
  {
    xmlkok_etiket.remove(0);
  }
}
function okullari_getir() 
{
  var iller = document.getElementById("iller");
  var ilno  = iller.options[iller.selectedIndex].value;
  http.open("POST", 'okul_xml.php', true);
  http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=iso-8859-9');
  http.onreadystatechange = handleHttpResponse;
  http.send("ilno="+ilno);
}
function getHTTPObject()
{
  var retval=null;
  try
  {
    retval=new ActiveXObject("Msxml2.XMLHTTP");
  }
  catch(e)
  {
    try
    {
      retval=new ActiveXObject("Microsoft.XMLHTTP");
    } 
    catch(oc)
    {
      retval=null;
    }
  }
  if(!retval && typeof XMLHttpRequest != "undefined") 
  {
    retval=new XMLHttpRequest();
  }
  return retval;
}
</script>


okul_xml.php

<?php
ob_start();
header("Cache-Control: no-cache");
$dbHost			= "localhost";
$dbUser			= "root";
$dbPass			= "";
$dbName			= "okullar";
$connect		= @mysql_connect($dbHost, $dbUser, $dbPass) or die("Konnte keine Verbindung zum Datenbankserver aufbauen!");
$selectDB		= @mysql_select_db($dbName, $connect) or die("Konnte die Datenbank <b>$dbName</b> nicht auswählen!");
header('Content-Type: text/xml');
echo "<?xml version='1.0' encoding='iso-8859-9' standalone='yes'?>";


if (isset($_POST['ilno'])) {

echo '<okullarxml etiketadi="okul">';
@ $ilno = intval($_POST['ilno']);
if ($ilno)
{
    

	$okullar_sql = mysql_query("SELECT okul_id,okul_ad FROM okullar WHERE il_id=$ilno");
	$sayi = mysql_num_rows($okullar_sql);
	if ($sayi > 0)
	{
		while($okul = mysql_fetch_object($okullar_sql))
		{
			$okulno  = $okul->okul_id;
			$okuladi = $okul->okul_ad;
			echo '<okul okulno="'.$okulno.'" okuladi="'.$okuladi.'" />';
		}
	} 
	else
	{
		echo '<okul okulno="'.$okulno.'" okuladi="Okul Bulunamadı" />';
	}
	
}
echo '</okullarxml>';
}


?>


Sorunu bulamadım
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • teacher0610 adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    54 cevap - 29 soru
    Kodları detaylı incelemedim ama ilk satırdaki başlangıç satırı <? şeklinde olmaz. <?php şeklinde değiştir...
    • juanito adlı üyenin fotoğrafı juanito
      Hocam o farketmez diye biliyordum değiştirdim farketmedi. Kodlarda bir yerde bir sorun var ama hala bakıyorum bi sonuç çıkaramadım.
      9 yıl önce yazılmış