Sziasztok!
Tudnátok abban segíteni, hogy egy + selectel (Iskolák) bővítsem az alábbi kódot?
Az adatbázis táblái:
- Országok tábla: OrszagID, Orszagnev
Megyek tábla: MegyeID, OrszagID, Megyenev
Varosok tábla: VarosID, MegyeID, Varosnev
Iskolak tábla: IskolaID, VarosID, Iskolanev
Az alapbővítést megcsináltam:
HTML kód:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>Választás</title>
<script>
function orszagbeall(x)
{
db=document.getElementById('orszag').options.length
for(i=0;i<db;i++)
{
if (x==document.getElementById('orszag').options[i].value)
{
document.getElementById('orszag').selectedIndex=i;
orszag_csere(i)
break;
}
}
}
function megyebeall(x)
{
db=document.getElementById('megye').options.length
for(i=0;i<db;i++)
{
if (x==document.getElementById('megye').options[i].value)
{
document.getElementById('megye').selectedIndex=i;
megye_csere(i)
break;
}
}
}
function varosbeall(x)
{
db=document.getElementById('varos').options.length
for(i=0;i<db;i++)
{
if (x==document.getElementById('varos').options[i].value)
{
document.getElementById('varos').selectedIndex=i;
varos_csere(i)
break;
}
}
}
function iskolabeall(x)
{
db=document.getElementById('iskola').options.length
for(i=0;i<db;i++)
{
if (x==document.getElementById('iskola').options[i].value)
{
document.getElementById('iskola').selectedIndex=i;
break;
}
}
}
function orszag_csere(mire)
{
mire--
v=mire
// Régi megye kitörlés
db=document.getElementById('megye').options.length
for(i=0;i<db;i++)
{
document.getElementById('megye').options[0]=null
}
// Régi város kitörlés
db=document.getElementById('varos').options.length
for(i=0;i<db;i++)
{
document.getElementById('varos').options[0]=null
}
if (mire>=0)
{
newOptionName = new Option("--- Kérem válasszon ---", 0);
document.getElementById('megye').options[0] = newOptionName;
t=tomb[mire]
for(i=2;i<t.length;i++)
{
newOptionName = new Option(t[i][1], t[i][0]);
document.getElementById('megye').options[i-1] = newOptionName;
}
}
}
function megye_csere(mire)
{
mire--
// Régi megye kitörlés
db=document.getElementById('varos').options.length
for(i=0;i<db;i++)
{
document.getElementById('varos').options[0]=null
}
if (mire>=0)
{
newOptionName = new Option("--- Kérem válasszon ---", 0);
document.getElementById('varos').options[0] = newOptionName;
t=tomb[v][mire+2]
for(i=2;i<t.length;i++)
{
newOptionName = new Option(t[i][1], t[i][0]);
document.getElementById('varos').options[i-1] = newOptionName;
}
}
}
</script>
</head>
<body
<?
$onload="";
if (isset($_GET['orszag']))
{
$onload.="orszagbeall(".intval($_GET['orszag']).");";
if (isset($_GET['megye']))
{
$onload.="megyebeall(".intval($_GET['megye']).");";
if (isset($_GET['varos']))
$onload.="varosbeall(".$_GET['varos'].");";
}
echo ' onload="' .$onload.'" ';
}
?>
>
<b>JS lista</b><br>
<form>
<table border="0" >
<tr>
<td>Ország:</td>
<td>
<select name="orszag" id="orszag" size="1" onchange="orszag_csere(this.selectedIndex)" style="width:200px"></select></td>
</tr>
<tr>
<td>Megye:</td>
<td> <select name="megye" id="megye" size="1" onchange="megye_csere(this.selectedIndex)" style="width:200px"></select></td>
</tr>
<tr>
<td>Város:</td>
<td> <select name="varos" id="varos" size="1" style="width:200px"></select></td>
</tr>
<tr>
<td>Iskola:</td>
<td> <select name="iskola" id="iskola" size="1" style="width:200px"></select></td>
</tr>
</table>
<input type="submit" name="teszt" value="mehet">
</form>
<script>
<?
include('../init.php');
mysql_query('set names cp1250');
$sql="select Orszagok.OrszagID, Orszagok.Orszagnev, Megyek.MegyeID,
Megyek.MegyeNev, Varosok.VarosID, Varosok.VarosNev
FROM Orszagok Inner Join Megyek on Orszagok.OrszagID=Megyek.OrszagID
Inner Join Varosok on Megyek.MegyeID = Varosok.MegyeID
order by Orszagok.Orszagnev,Megyek.MegyeNev,Varosok.VarosNev";
$parancs = mysql_query($sql);
$Orszag_ID=0;
$Megye_ID=0;
$ki_orszag="";
$ki_megye="";
$ki_varos="";
$ki_iskola="";
$ki="tomb=new Array(\n";
while ($sor = mysql_fetch_array($parancs))
{
if ($sor['OrszagID']!=$Orszag_ID)
{
$ki.=$ki_orszag . "\t new Array(". $sor['OrszagID'].",'".$sor['Orszagnev']."',\n";
$Orszag_ID=$sor['OrszagID'];
$ki_orszag="\t\t)\t),\n";
$ki_megye="";
$ki_varos="";
};
if ($Megye_ID!=$sor['MegyeID'])
{
$ki.=$ki_megye . "\t\t new Array(". $sor['MegyeID'].",'".$sor['MegyeNev']."',\n";
$Megye_ID=$sor['MegyeID'];
$ki_megye="\t\t),\n";
$ki_varos="";
};
$ki.=$ki_varos . "\t\t\t new Array(". $sor['VarosID'].",'".$sor['VarosNev']."')\n";
$ki_varos=",";
};
$ki.="\t\t\t)\n\t\t)\n\t)\n";
echo $ki;
mysql_free_result($parancs)
?>
newOptionName = new Option("--- Kérem válasszon ---", 0);
document.getElementById('orszag').options[0] = newOptionName;
for(i=0;i<tomb.length;i++)
{
newOptionName = new Option(tomb[i][1], tomb[i][0]);
document.getElementById('orszag').options[i+1] = newOptionName;
}
v=0
</script>
</p>
</body>
</html>
Könyvjelzők