Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Povezivanje dva ComboBox-a

[es] :: PHP :: Povezivanje dva ComboBox-a

[ Pregleda: 2100 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Marko126
Marko Stosic
Oficir, inzenjer informatike, Vojska
Srbije
Kragujevac

Član broj: 228821
Poruke: 2
85.222.178.*



Profil

icon Povezivanje dva ComboBox-a25.07.2009. u 21:38 - pre 179 meseci
Pozdrav ljudi!
Treba mi pomoc oko povezivanja vrednosti iz dve padajuce liste. Postoji baza u mySQL-u sa dve tabele iz kojih se generisu vrednosti u dve padajuce liste. Prvo se generisu podaci iz jedne tabele u prvu padajucu listu i kada se izabere vrednost, na osnovu nje generisu se podaci iz druge tabele u drugu padajucu listu. Ne mogu nikako da izvedem ovaj drugi deo, tj. druga padajuca lista mi je prazna.

Evo koda:

<html>
<head>
<title>Unos firme</title>
</head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">

<body>
<h1 align="center"><font size="7"><strong>Unos firme</strong></font></h1>
<blockquote>
<hr>
<?php

// Definisemo niz obl[] u koji smestamo nazive oblasti koje cemo kasnije koristiti
// u padajucem meniju

include "dbspoj.php";
$oblast="SELECT*FROM oblast_rada";
if ($o=mysql_query($oblast))
{
while ($red2=mysql_fetch_array($o))
{
$obl[]=$red2["naziv"];
}
}
/* Definisemo niz del[] u koji smestamo nazive delatnosti koje cemo kasnije koristiti
u padajucem meniju

$delat="SELECT*FROM delatnost WHERE ID";
if ($q=mysql_query($delat))
{
while ($red=mysql_fetch_array($q))
{
$del[]=$red["naziv"];
}
}

*/

// Definisemo niz gr[] u koji smestamo nazive gradova koje cemo kasnije koristiti
// u padajucem meniju
$gra="SELECT*FROM grad";
if ($n=mysql_query($gra))
{
while ($red1=mysql_fetch_array($n))
{
$gr[]=$red1["naziv"];
}
}
if (!$_POST["SBunos"])
{
?>
</blockquote>
<form method="post" action="">
<table width="45%" height="370" border="0">
<tr>
<td width="35%"><strong>Naziv firme: </strong></td>
<td width="65%"><input type="text" name="naziv2"></td>
</tr>
<tr>
<td><strong>Adresa firme:</strong></td>
<td><input type="text" name="adresa2"></td>
</tr>
<tr>
<td><strong>Telefon firme:</strong></td>
<td><input type="text" name="telefon2"></td>
</tr>
<tr>
<td><strong>Fax firme: </strong></td>
<td><input type="text" name="faks2"></td>
</tr>
<tr>
<td><strong>URL firme:</strong></td>
<td><input type="text" name="url2"></td>
</tr>
<tr>
<td><strong>E-mail firme:</strong></td>
<td><input type="text" name="e-mail2"></td>
</tr>
<tr>
<td><strong>Izaberi grad:</strong></td>
<td><select name="grad">
<?php
foreach ($gr as $g){
echo '<option';
echo ">$g</option>";
}
?>

</select></td>
</tr>
<tr>
<td><strong>Izaberi oblast rada:</strong></td>

<td><select name="oblast" onchange="javascript:document.forma.submit();">
<?php
foreach ($obl as $ob){
echo '<option';
echo ">$ob</option>";
}
?>
</select></td>
</tr>
<tr>
<td><strong>Izaberi delatnost:</strong></td>
<td><select name="delatnost">
<option> ---izaberi delatnost---</option>
<?php

$obl_id="SELECT ID_oblast FROM oblast_rada WHERE naziv = '$_POST[oblast]'";
if ($a1=mysql_query($obl_id))
{
while ($red3=mysql_fetch_array($a1))
{
$obl1[]=$red3[0];
}
}else{
echo "Nastala je greska pri odabiru delatnosti";
}

$del_ime="SELECT naziv FROM delatnost WHERE ID_oblast = '$obl1[0]'";
if ($a=mysql_query($del_ime))
{
while ($red=mysql_fetch_array($a))
{
$del[]=$red[0];
}
foreach ($del as $d){
echo '<option';
echo ">$d</option>";
}
}else{
echo "Nastala je greska pri odabiru delatnosti";
}
?>
</select></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="SBunos2" value="Unesi"></td>
</tr>
</table>
<?php
} else {
include "dbspoj.php";
$gr_id="SELECT ID_grad FROM grad WHERE naziv = '$_POST[grad]'";
$del_id="SELECT ID_del FROM delatnost WHERE naziv = '$_POST[delatnost]'";
if ($a=mysql_query($gr_id) and $d=mysql_query($del_id))
{
$redak=mysql_fetch_row($a);
$redak1=mysql_fetch_row($d);

$sql="INSERT INTO firma (naziv ,adresa, telefon, faks, url, e_mail, ID_del, ID_grad)
VALUES ('$_POST[naziv]','$_POST[adresa]','$_POST[telefon]', '$_POST[faks]', '$_POST[url]', '$_POST[e_mail]','$redak1[0]', '$redak[0]')";
if (mysql_query($sql))
{
echo "Firma je uspe¹no une¹ena";
?>
<hr>
<a href="file:///C|/wamp/www/portal/unos-firme.php">Unesi drugu firmu</a> </hr>
<?php
} else {
echo "Nastala je greska pri unosu firme<br>" . mysql_error();
}
}else{
echo "Nastala je gre¹ka pri unosu firme<br>" . mysql_error();
}
}
?>
</blockquote>
</body>
</html>

 
Odgovor na temu

Milos911
Serbia

Član broj: 219127
Poruke: 1230
*.telenor.co.yu.



+303 Profil

icon Re: Povezivanje dva ComboBox-a26.07.2009. u 07:47 - pre 179 meseci
Mrzi me da gledam taj kod ali ionako tu nema mnogo mudrovanja. Ako hoces sa refresh namestis da ti automatski kad korisnik izabere neku vrednost strana opet ucita ali sad sa strana.php?id=x. Posle u drugom kveriju iskoristis taj id da nadjes sta ti treba. Drugi nacin je da namestis da ti js pozove php kod koji radi taj isti kveri posle biranja vrednosti prve padajuce liste. Drugi nacin je mnogo lepsi :)
 
Odgovor na temu

Marko126
Marko Stosic
Oficir, inzenjer informatike, Vojska
Srbije
Kragujevac

Član broj: 228821
Poruke: 2
85.222.178.*



Profil

icon Re: Povezivanje dva ComboBox-a26.07.2009. u 10:09 - pre 179 meseci
Sve je to lepo, ali kako da namestim da mi JS poziva php upit?
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
93.86.0.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Povezivanje dva ComboBox-a26.07.2009. u 10:42 - pre 179 meseci
Ajax?
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

vatri
Banja Luka, RS

Član broj: 68697
Poruke: 1006
*.dynamic.dsl.t-2.net.



+18 Profil

icon Re: Povezivanje dva ComboBox-a26.07.2009. u 10:43 - pre 179 meseci
Ajax:

http://www.w3schools.com/Ajax/Default.Asp

A mozda preko jQuery (isto Ajax):

http://jquery.com
http://docs.jquery.com/Ajax
 
Odgovor na temu

beep
Srbija/Vrbas

Član broj: 19294
Poruke: 198
*.dynamic.sbb.rs.

Sajt: keselj.xyz


+1 Profil

icon Re: Povezivanje dva ComboBox-a26.07.2009. u 10:51 - pre 179 meseci
Potrebno je sa php izgenerisati niz sel_2 koji ce biti povezan sa vrednostima iz select 1

Code:

<select id="select_1" onChange="select_2()">
<option value="value_1">Option 1</option>
<option value="value_2">Option 2</option>
<option value="value_3">Option 3</option>
</select>
<select id="select_2" ></select>


<script type="text/javascript">

function select_2()
    {
    var sel1 = document.getElementById('select_1');
    var sel2 = document.getElementById('select_2');
    var sel_2 =new Array();
    sel_2['value_1']=['OPTION 1','value','OPTION 1_1','value','OPTION 1_2','value'];
    sel_2['value_2']=['OPTION 2','value','OPTION 2_1','value','OPTION 2_2','value'];
    sel_2['value_3']=['OPTION 3','value','OPTION 3_1','value','OPTION 3_2','value'];
    sel2.options.length = 0;
    for    (var i=0;i<sel_2[sel1.value].length;i +=2)
    {sel2.options[i/2]=new Option(sel_2[sel1.value][i],sel_2[sel1.value][i+1],false);}

    }
    select_2();
</script>
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
93.87.157.*



+33 Profil

icon Re: Povezivanje dva ComboBox-a26.07.2009. u 12:58 - pre 179 meseci
Pretraži malo ovaj, a i JavaScript i AJAX forum, bilo je već sličnih tema, a i sećam se da sam na nekoj baš napisao primer za to što tebi treba...
 
Odgovor na temu

[es] :: PHP :: Povezivanje dva ComboBox-a

[ Pregleda: 2100 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.