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

Dinamičke liste (select element) iz baze

[es] :: PHP :: Dinamičke liste (select element) iz baze

[ Pregleda: 3875 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bmcvetic
Cvetic Branko
Beograd

Član broj: 45488
Poruke: 71
*.dialup.sezampro.yu.



+1 Profil

icon Dinamičke liste (select element) iz baze 18.01.2005. u 22:28 - pre 234 meseci
Pozdrav svim korisnicima ES!

Problem je sledeći:
Na osnovu izabrane opcije iz jedne liste (konkretno Marka vozila) treba da dobijem select element (Tip vozila) koji će svoje vrednosti popuniti iz MySQL baze. Problem lako rešavam JavaScriptom, ali je u pitanju velika baza podataka tako da mi se to rešenje ne sviđa (zbog održavanja i veličine skripta). Ideja da napravim još jednu bazu podataka u koju bi podaci bili upisani privremeno, pa zatim poslati na server i vraćeni sa izmenom samo jednog elementa (tip vozila) bi radila, ali totalno nije u programerskom duhu. Ako neko ima "elegantije" rešenje, neka izvoli.

Inače, radi se o obrascu u koji se upisuju podaci o vozilu i šalju u MySQL bazu.
Web čitač: naravno Mozilla.
 
Odgovor na temu

mordor
Vladimir Cvetic
/dev/null

Član broj: 2797
Poruke: 420
*.beotel.net.

Jabber: cvele@default.co.yu
Sajt: www.knowbies.com


Profil

icon Re: Dinamičke liste (select element) iz baze 20.01.2005. u 23:12 - pre 234 meseci
heh zivo me zanima kako pomocu javascripta pristupas mysql bazi :)))

btw
to sto trazis je extremno prosto i necudi me sto se niko nije potrudio da napise odgovor
hint: select ....... where='marka_vozila'

privremena baza ?? wtf?!
 
Odgovor na temu

bmcvetic
Cvetic Branko
Beograd

Član broj: 45488
Poruke: 71
*.ppp-bg.sezampro.yu.



+1 Profil

icon Re: Dinamičke liste (select element) iz baze 21.01.2005. u 15:40 - pre 234 meseci
Možda nisam bio dovoljno jasan.

Preko JavaScripta ne može da se pristupi MySql bazi. Želim da pristupim bazi pomoću php-a, a ne da komplet podatke iz baze unosim u skript pa odatle da pomoću JavaScripta pravim opcije. Drugo, ne radi se o prostom povlačenju podataka iz baze, već o uzimanju podataka i pravljenju lista (marka-tip) s tim da se ostali podaci sa obrasca (koji su u medjuvremenu uneti) ne upišu u bazu, ali i ne izgube. Po meni, morali bi negde da se sačuvaju (recimo u još jednoj bazi sa istim poljima).

Znači, ako korisnik izabere recimo OPEL iz select liste treba da u drugoj select listi dobije
recimo ASTRA, VECTRA, OMEGA...(i samo to) i da to bude povučeno iz baze (naravno da ostali podaci, kao što je uneta boja i godina proizvodnje, ostanu sačuvani). I tako isto ako se izabere BMW, AUDI ili bilo koji drugi.

Treba mi samo ideja kako bi to moglo da se uradi. U svakom slučaju, hvala što si odgovorio.
 
Odgovor na temu

bzero
dev null
europe

Član broj: 5907
Poruke: 371
*.nat-pool.nsad.sbb.co.yu.

Jabber: bzero@elitesecurity.org
Sajt: www.google.com/search?q=b..


Profil

icon Re: Dinamičke liste (select element) iz baze 21.01.2005. u 16:17 - pre 234 meseci
Verovatno je najbolje da kod promene select box-a (onchange), iz javascripta pomocu XMLHttpRequest-a povuces sa servera nove podatke koji su ti potrebni za drugi select box. Ovako menjas samo podatke koji i treba da se menjaju i nema potrebe da razmisljas o tome kako da sacuvas ostale podatke jer njih i ne diras.
Never trust an operating system you don't have sources for.
 
Odgovor na temu

MileG

Član broj: 28981
Poruke: 997



+7 Profil

icon Re: Dinamičke liste (select element) iz baze 21.01.2005. u 20:03 - pre 234 meseci
Da bi lakse objasnio nek pogledaju www.autoscout24.de :o)
 
Odgovor na temu

mordor
Vladimir Cvetic
/dev/null

Član broj: 2797
Poruke: 420
*.beotel.net.

Jabber: cvele@default.co.yu
Sajt: www.knowbies.com


Profil

icon Re: Dinamičke liste (select element) iz baze 22.01.2005. u 16:00 - pre 234 meseci
uz formu prosledi i $var za marku koju je izabrao pa pri generisanju select boxa uporedjuj
i izbaci...
 
Odgovor na temu

bmcvetic
Cvetic Branko
Beograd

Član broj: 45488
Poruke: 71
*.ppp-bg.sezampro.yu.



+1 Profil

icon Re: Dinamičke liste (select element) iz baze 27.01.2005. u 19:41 - pre 234 meseci
Izgleda da je ovo sa XMLHttpRequest-om pravo rešenje. Tako nešto sam već video, ali nije radilo. Pogledaću kako to ide pa vam javljam šta sam uradio. Hvala Bzero.
 
Odgovor na temu

broker

Član broj: 2415
Poruke: 8514
212.62.59.*



+11 Profil

icon Re: Dinamičke liste (select element) iz baze 28.01.2005. u 10:40 - pre 234 meseci
http://jibbering.com/2002/4/httprequest.html
Kanda su browseri prilicno bagoviti po ovompitanju.
 
Odgovor na temu

bmcvetic
Cvetic Branko
Beograd

Član broj: 45488
Poruke: 71
*.dialup.sezampro.yu.



+1 Profil

icon Re: Dinamičke liste (select element) iz baze 03.02.2005. u 04:44 - pre 233 meseci
Rešio sam problem. Ovaj objekat (XMLHttpRequest) ima ogroman potencijal bar po meni. Evo koda koji je meni pomogao pa pogledajte...


Code:

//  Funkcija JavaScripta koja na onChange elementa marka menja tip

function UbaciTip(marka)
{
    var tip = document.getElementById("tip");
        
    tip.length = 0;     //  prazni listu
    tip.options[0] = new Option(0);
    tip.options[0].value = -1;
    tip.options[0].text = "--------------------";
        
    if (marka != "--------------------")
    {
        var xmlhttp = new XMLHttpRequest();
        var URL = "../tip.php?marka=" + marka;
        
            xmlhttp.open("GET", URL, true);
            xmlhttp.onreadystatechange = function()
        {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
            {
                        var vrednost = xmlhttp.responseText;  //  dobijeni string iz skripta
                    
                if (vrednost != null)  //  ako ima nekih vrednosti formiraju se option elementi
                {
                    var niz = vrednost.split (",");  //  pravi niz od vrednosti
            
                    for (i=1; i<=niz.length; i++)
                    {
                        tip.options[i] = new Option(i);  //  strvara novi option
                        tip.options[i].value = niz[i-1];
                        tip.options[i].text = niz[i-1];
                    }
                }        
                   }
        }

    xmlhttp.send("marka");
    }
}



//    Pomocni php skript koji pravi string od vrednosti tipova vozila (razdvojenih zapetom) na osnovu izbrane marke

<?php
    require_once ('baza_lib.php');
    $marka = $_REQUEST['marka'];
    
    @ $veza = mysql_pconnect('localhost', nick, pass);
    mysql_select_db ('vozila');
    
    @ $tip = uzmi_vrednosti_tip($marka);
    
    echo $tip;    //    stampa rezultat (vrednosti odvojene zapetom)
?>



//    Funkcija uzmi_vrednosti_tip iz 'baza_lib.php'
function uzmi_vrednosti_tip($marka)
{
    $upit_marka_id = "select marka_id from sve_marke where marka='".$marka."'";
    $rezultat_marka_id = mysql_query($upit_marka_id);
    $vrednost = mysql_result($rezultat_marka_id, 0);  //  vrednost je index koji povezuje ime marke
    
    $upit = "select tip from t".$vrednost." order by tip asc";  //  dodajem t zbog imena tabele
    $rezultat = mysql_query($upit);
    $broj = mysql_num_rows($rezultat);

    $vrednost = mysql_result($rezultat, 0);

    for ($i=1; $i<$broj; $i++)
    {
        $red = mysql_result($rezultat, $i);
        $vrednost = $vrednost.",".$red;
    }
        
    return $vrednost;
}


Još jednom hvala svima na savetima i pomoću. Pozdrav!


 
Odgovor na temu

[es] :: PHP :: Dinamičke liste (select element) iz baze

[ Pregleda: 3875 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

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