Results 1 to 8 of 8

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User DarkMoonLight's Avatar
    Join Date: Aug:2006
    Location: Varna
    Posts: 4

    Select ñ äàííè îò DB

    Çäðàâåéòå! Âúïðîñúò ìè å ñâúðçàí ñ èçâëè÷àíåòî íà äàííè îò áàçà äàííè è âìúêâàíåòî èì â select ñïèñúê. Èñêàì ñúùî òàêà ïðè èçáîð íà îïðåäåëåí çàïèñ îò ìåíþòî , äðóãî ïîëå äà ñå ïîëúëâà àâòîìàòè÷íî ñúñ ñòîéíîñò îò ñúùàòà òàáëèöà íà áàçàòà äàííè ( äðóãîòî ïîëå å îáèêíîâåííî òåêñòîâî ïîëå). Íàïðèìåð : Òàáëèöà Êîìïîíåíòè, ñúäúðæàùà ñëåäíèòå ïîëåòà : Model, SN , Price.
    Model äà èçëèçà â select ñïèñúêà, à SN äà ñå ïîïúëâà àâòîìàòè÷íî.
    Åòî è ñîðñà, êîéòî ðåàëèçèðà select-a:
    PHP Code:
    $sql "SELECT * FROM components";
    function 
    database_select($tbl_value$tbl_label$select_name$label$init_val "") {
        global 
    $sql;
        
    $result mysql_query($sql);
        
    $menu "<label for=\"".$select_name."\">".$label."</label>\n";
        
    $menu .= "<td><select name=\"".$select_name."\">\n";
        
    $curr_val = (isset($_REQUEST[$select_name])) ? $_REQUEST[$select_name] : $init_val;
        
    $menu .= ($curr_val == "") ? "  <option value=\"\" selected>----------------Ìîëÿ èçáåðåòå-----------\n" "<option value=\"\">\n";
        while (
    $obj mysql_fetch_object($result)) {
            
    $menu .= "  <option value=\"".$obj->$tbl_value."\"";
            
    $menu .= ($obj->$tbl_value == $curr_val) ? " selected" "";
            
    $menu .= ">".$obj->$tbl_label."\n";
            
            
    $result mysql_query($sql);
        
        }
        
    $menu .= "</select></td>\n";
        
    mysql_free_result($result);
        return 
    $menu;
        
    }
    echo 
    database_select("Model""Model""NewPr""Íîâ êîìïîíåíò:"); 
    Îñòàâà ñàìî àâòîìàòè÷íîòî äîáàâÿíå â ïðàçíî òåêñòîâî ïîëå. Àêî íÿêîé ìîæå äà ïîìîãíå, ùå ñúì áëàãîäàðíà. Ìåðñè ïðåäâàðèòåëíî.

  2. #2
    Registered User genn's Avatar
    Join Date: Feb:2003
    Location: Ãåðìàíèÿ
    Posts: 1,215
    Èìà íÿêîëêî íà÷èíà äà ñå íàïðàâè àâòîìàòè÷íîòî ïîïúëâàíå íà ïðàçíî òåêñòîâî ïîëå. Åäèí íà÷èí å äà ñúáìèòâàø ôîðìà ïðè èçáîð îò ìåíþòî êàòî ïîäàâàø ïàðàìåòúð êàêâî å èçáðàíî.

    Âòîðè íà÷èí å äà ïîëçâàø javascript.

    $menu .= " <option value=\"".$obj->$tbl_value."\"";

    òóê çà value ñëàãàø ñòîéíîñòòà, êîÿòî èñêàø äà îòèäå â òåêñòîâîòî ïîëå. Ñëàãàø onChagne èâåíò íà ìåíþòî, êîéòî âèêà ôóíêöèÿòà, êîÿòî ïðîìåíÿ ñòîéíîñòòà íà òåêñòîâîòî ïîëå.

    Òðåòè íà÷èí å äà ïîëçâàø ñêðèò iframe çà áóôåð è ñ íåãî äà èçâëè÷àø íóæíèòå äàííè.

    Ïúðâèÿò íà÷èí íå òè ãî ïðåïîðú÷âàì - èçëèøíî ùå ñå òîâàðè ñúðâúðà/ ïîòðåáèòåëÿ ñ òðàôèê. Âòîðèÿò íà÷èí å íàé-ëåñåí è íÿìà èçëèøåí òðàôèê. Òðåòèÿò íà÷èí ìèñëÿ, ÷å å íàé-åëåãàíòåí è íàé-óäà÷åí ÑÀÌÎ àêî ùå èçâëè÷àø ãîëÿìî êîëè÷åñòâî äàííè. Íàïðèìåð àêî íå òè òðÿáâà ñàìî öåíàòà íà ïðîäóêòà, àìè îùå äâå-òðè õàðàêòåðèñòèêè... òîãàâà òîâà å íàé-óäà÷íèÿò âàðèàíò.
    Àêî â ïðàçíîòî òåêñòîâî ïîëå ùå ïîïúëâàø ñàìî öåíàòà ïðèìåðíî, àç áèõ èçáðàë âòîðèÿò íà÷èí.

  3. #3
    Registered User DarkMoonLight's Avatar
    Join Date: Aug:2006
    Location: Varna
    Posts: 4
    Quote Originally Posted by genn

    Âòîðè íà÷èí å äà ïîëçâàø javascript.

    $menu .= " <option value=\"".$obj->$tbl_value."\"";

    òóê çà value ñëàãàø ñòîéíîñòòà, êîÿòî èñêàø äà îòèäå â òåêñòîâîòî ïîëå. Ñëàãàø onChagne èâåíò íà ìåíþòî, êîéòî âèêà ôóíêöèÿòà, êîÿòî ïðîìåíÿ ñòîéíîñòòà íà òåêñòîâîòî ïîëå.
    Ìîëÿ òå, áúäè ïî-êîíêðåòåí, íå ñúì çàïîçíàòà ñ JavaScript. Áëàãîäàðÿ ïðåäâàðèòåëíî

  4. #4
    Registered User genn's Avatar
    Join Date: Feb:2003
    Location: Ãåðìàíèÿ
    Posts: 1,215
    Ïúðâî òðÿáâà äà äîáàâèø ñëåäíîòî

    <select name="menu1" id="menu1" onChange="update_selection();">

    ïðàçíîòî òè òåêñòîâî ïîëå òðÿáâà äà èçãëåæäà ãîðå-äîëó òàêà:

    <input type="text" name="field1" id="field1">

    ñëåä òîâà â <head></head> ïðèìåðíî ñëàãàø ñëåäíîòî:

    <script>

    function update_selection( )
    {
    document.getElementById( "field1" ).value = document.getElementById( "menu1" ).value;
    }

    </script>

    Òîçè åäèíñòâåí ðåä ïðàâè ñëåäíîòî - âçèìà ñòîéíîñòòà îò èçáðàíèÿ åëåìåíò â ìåíþòî è ÿ ñëàãà è â òåêñòâîòîòî ïîëå.
    Åñòåñòâåíî òîâà å íàé-îïðîñòåíèÿ âàðèàíò è íÿìà íèêàêâè ïðîâåðêè çà ãðåøêà è äàëè å âàëèäíà ñòîéíîñòòà. Íàïðèìåð ìîæå äà ïðàâèø ïðîâåðêà äàëè å çàðåäåíà öÿëàòà ñòðàíèöà, çà äà íå ñå îêàæå, ÷å ïîòðåáèòåëÿò èçáèðà íåùî îò ìåíþòî, à òåêñòîâîòî ïîëå îùå íå å çàðåäåíî...àêî ñå ñòèãíå äî òîçè ñëó÷àé, javascript-úò ùå ãðúìíå ñ ãðåøêà. Òàçè ïðîâåðêà íàé-åëåãàíòíî ìîæå äà ñå íàïðàâè ïî ñëåäíèÿ íà÷èí:

    <body onLoad="init_form();">

    </body>

    òîãàâà ïðè ãîðíàòà ôóíêöèÿ äîáàâÿø íîâà ôóíêöèÿ, êîÿòî ùå ñå âèêà, êîãàòî öÿëàòà ñòðàíèöà å çàðåäåíà, à êúì <select> äîáàâÿø disabled="disabled".

    function init_form()
    {
    document.getElementById( "menu1" ).disabled = false;
    }

    Åñòåñòâåíî òîâà å ñàìî åäèí âàðèàíò....èìà õèëÿäè. Ìîæå ïðèìåðíî, àêî ðàáîòèø ñ div äà çàðåæäàø öÿëàòà ôîðìà â åäèí, êîéòî å ñêðèò è íå ñå âèæäà. Äîêàòî ïîòðåáèòåëÿò ÷àêà ñòðàíèöàòà äà ñå çàðåäè, ùå âèæäà äðóã div ñúñ ñúîáùåíèå, ÷å ñòðàíèöàòà ñå çàðåæäà. Êîãàòî ñå çàðåäè, ñúîáùåíèåòî ñå ñêðèâà è ñå ïîêàçâà äðóãèÿò ñ èñòèíñêîòî ñúäúðæàíèå...

    Êàæè êîé âàðèàíò íàé-ìíîãî òè õàðåñâà è àêî íå ìîæåø äà ãî íàïðàâèø, ùå òè ïîìîãíà

  5. #5
    Registered User DarkMoonLight's Avatar
    Join Date: Aug:2006
    Location: Varna
    Posts: 4
    genn, ìåðñè çà ñòàðàíèåòî è ïîäðîáíèòå îáÿñíåíèÿ, íî ìèñëÿ ÷å íå ñè ìå ðàçáðàë ïðàâèëíî. Ìîæå áè è àç íå ñúì îáÿñíèëà êàêòî òðÿáâà. Ñòîéíîñòòà, êîÿòî òðÿáâà äà èçëèçà àâòîìàòè÷íî â òåêñòîâîòî ïîëå , íå å ñúùàòà êàòî òàçè , êîÿòî ñå èçáèðà îò select ìåíþòî. Èìàì áàçà îò äàííè ñ íÿêîëêî òàáëèöè, åäíà îò òÿõ å Êîìïîíåíòè. Òÿ èìà ñëåäíèòå ïîëåòà : Model, SN, Price. Ôîðìàòà, â êîÿòî ñå îïèòâàì äà íàïðàâÿ âúïðîñíèÿ select, èçïîëçâàì çà äîáàâÿíå íà äàííè â äðóãè òàáëèöè îò áàçàòà äàííè. Ò.å èçâëè÷àì äàííè îò òàáëèöà Êîìïîíåíòè è ãè insert-âàì â äðóãà òàáëèöà(òàáëèöàòà êîìïîíåíòè ñå ÿâÿâà ïîìîùíà) . Åòî åäèí ïðèìåð:
    | Model | SN | Price |
    |HDD WD-AB | 11111111111111 | 40 |
    |CPU Intel.. | 2222222222222 | 120 |
    ............
     select-a, èçëèçàò HDD WD-AB, CPU Intel... êàêòî ñè èçëèçàò ñòàíäàðòíî â ñïèñúê. È àêî ïîòðåáèòåëÿò äà êàæåì èçáåðå HDD-òî , â òåêñòîâîòî ïîëå äà èçëèçà 11111111111111 (ò.å SN). Ñëåä submit íà öÿëàòà ôîðìà, äàííèòå îò select-à è òåêñòîâîòî ïîëå äà ñå insert-âàò â áàçàòà äàííè...òîâà ìîãà äà ãî íàïðàâÿ è ñàìà Ñ íÿêîëêî äóìè , íóæäàÿ ñå îò ïîìîù çà òåêñòîâîòî ïîëå, ïî-òî÷íî çà ïðåäàâàíåòî íà ñòîéíîñò â íåãî, êîÿòî å îáâúðçàíà ñ èçáîðà îò select ìåíþòî(ñòîéíîñòèòå ñå íàìèðàò â òàáëèöà Êîìïîíåíòè).
    Íàäÿâàì ñå äà ñúì áèëà èç÷åðïàòåëíà â îáÿñíåíèÿòà

  6. #6
    Registered User genn's Avatar
    Join Date: Feb:2003
    Location: Ãåðìàíèÿ
    Posts: 1,215
    Àõà, òîâà ÷å ùå ñúáìèòâàø ôîðìàòà è èçáîðà îò select-à òè òðÿáâà, ïðîìåíÿ ìàëêî íåùàòà... Ìèñëåõ ñè, ÷å ñåëåêòà òè ñëóæè ñàìî çà íàâèãàöèÿ è íà òåá íå òè òðÿáâà äà çíàåø êàêâî å èçáðàíî ïðè åâåíòóàëåí ñúáìèò.

    Ò.å. â ìîìåíòà ãåíåðèðàíîòî îò òåáå ìåíþ èçãëåæäà òàêà:

    <option value="HDD WD-AD">HDD WD-AD</option>

    Òàêà ëè?

    ÏÏ çàáåëÿçàõ, ÷å ïðè òåá íÿìà çàòâàðÿù </option> ... åäèí ñúâåò - àêî ïðàâèø âàëèäíà xhtml ñòðàíèöà, çàòâàðÿé íàâñÿêúäå òàãîâåòå... åäèíè÷íèòå êàòî <br> ñòàâàò <br />

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 Õàðäóåð ÁÃ. Âúçìîæíî å ñúäúðæàíèåòî íà òàçè ñòðàíèöà äà å îáåêò íà àâòîðñêè ïðàâà.
iskamPC.com | mobility.BG | Bloody's Techblog | Êðèïòîâàëóòè è ìàéíèíã | 3D Vision Blog | Ìàãàçèí çà åëåêòðîííè öèãàðè