Rezultate 1 la 8 din 8

Subiect: Problema cu submiterea unui multiplu select

Afișare hibrid

  1. #1
    Avatarul lui cpcos
    cpcos este deconectat Junior SeoPedia
    Reputatie:
    0
    Data înscrierii
    21st January 2007
    Vârstă
    50
    Posturi
    3
    Putere Rep
    0


    Implicit Problema cu submiterea unui multiplu select

    Salutare tuturor,

    Iata problema mea:

    Am o forma:
    <form method="post" action="x.php" name="transfer_x">

    si cateva optiuni de trimis cu ea:

    <input name="raportant" value="<?php echo $_SESSION['var_usr_nick'];?>

    <select name="turnir_nume" size="1" style="width:150"><?php echo $turnir_selectat; ?></select> // evident si sql-ul care aduce optiunile acestui select.

    si un select de tip multiplu:

    <select name="list2" size="11" id="sel2" style="width:100%" ondblclick="opt.transferLeft()" multiple="multiple"></select>

    unde valorile ajung cu un java script dintr-un alt select:

    <select name="list1" size="11" style="width:100%" multiple="MULTIPLE" id="sel1" ondblclick="opt.transferRight()"><?php echo $regula_selectata; ?></select>

    Am am aplicat o functie de autoselect de obiecte pt selectul list2 pe butonul de submit (comandata javascript deasemenea):

    <input type="submit" value="Trimite" name="submit" onClick="checkAll(this.form.elements('list2'))">

    Si toata problema mea este ca aceasta list2 nu trimite decat ultima valoare pe acare o adaug in ea;
    Adica daca am adus din lista stanga (list1) sa zicem valorile:1, 2, 3 submite doar 3... desi la click pe trimite se vede clar cum toate se selecteaza...

    Are cineva indee ce gresesc?

    Multumesc anticipat
    Popa Cosmin

  2. #2
    Avatarul lui Chaos
    Chaos este deconectat Ambasador
    Reputatie:
    37
    Data înscrierii
    3rd April 2006
    Locaţie
    Cluj-Napoca
    Vârstă
    43
    Posturi
    389
    Putere Rep
    37


    Implicit

    Incearca sa faci name-ul de forma
    name="nume[]" ca sa ti-l faca array in $_POST.

  3. #3
    Avatarul lui cpcos
    cpcos este deconectat Junior SeoPedia
    Reputatie:
    0
    Data înscrierii
    21st January 2007
    Vârstă
    50
    Posturi
    3
    Putere Rep
    0


    Implicit re

    Am facut...si acum nu mai submite nimic... cred ca formulez gresit onclickul din final... fara paranteze executa!

    aici forma in functiune:
    lrh.ro/test/pcp.php

    <input type="submit" value="Trimite" name="submit" onClick="checkAll(this.form.elements['list2[]']); outputSelected(this.form.list2[].options); getSelected(this.form.list2[].options);">

    Si iata si scripturile:
    <SCRIPT LANGUAGE="JavaScript">
    function getSelected(opt) {
    var selected = new Array();
    var index = 0;
    for (var intLoop = 0; intLoop < opt.length; intLoop++) {
    if ((opt[intLoop].selected) ||
    (opt[intLoop].checked)) {
    index = selected.length;
    selected[index] = new Object;
    selected[index].value = opt[intLoop].value;
    selected[index].index = intLoop;
    }
    }
    return selected;
    }

    function outputSelected(opt) {
    var sel = getSelected(opt);
    var strSel = "";
    for (var item in sel)
    strSel += sel[item].value + "\n";
    alert("Selected Items:\n" + strSel);
    }
    </SCRIPT>

    <script type="text/javascript">


    function checkAll(el){
    if ( el && /select/i.test(el.nodeName) ){
    var o = el.options;
    var i = o.length;
    while ( i-- ) { o[i].selected = true; }
    }
    }
    </script>
    Ultima modificare făcută de cpcos; 21st January 2007 la 17:33.

  4. #4
    Avatarul lui dan.adrian
    dan.adrian este deconectat Junior SeoPedia
    Reputatie:
    0
    Data înscrierii
    4th June 2007
    Posturi
    2
    Putere Rep
    0


    Implicit

    te complici un pic

    <form>
    <select multiple id=dela name="dela[]" ondblclick="dbl_dela(this.form.elements['dela[]'],this.form.elements['catre[]']);
    checkAll(this.form.elements['catre[]']);">
    <option value=1>1</option>
    <option value=2>2</option>
    </select>

    <select id=catre name="catre[]" multiple ondblclick="dbl_dela(this.form.elements['catre[]'],this.form.elements['dela[]']);
    deselect(this.form.elements['dela[]']);" onclick="checkAll(this.form.elements['catre[]']); ">
    </select>
    <input type=submit value=go>


    <input type="button" onclick="move(this.form.catre,this.form.dela); deselect(this.form.elements['dela[]']);" value="<<">
    <input type="button" onclick="move(this.form.dela,this.form.catre); checkAll(this.form.elements['catre[]']);" value=">>">
    </form>


    <script type="text/javascript">
    function deselect(el){
    el.selectedIndex = -1;
    }
    function dbl_dela(el,ec){
    var selIndex = el.selectedIndex;
    ec.appendChild(el.options.item(selIndex));
    }
    function checkAll(el){
    if ( el && /select/i.test(el.nodeName)){
    var o = el.options;
    var i = o.length;
    while (i--){
    o[i].selected = true;
    }

    o.sort(compareOptionValues);
    }
    }
    function move(a,b){
    var len = a.length -1;
    for(i=len; i>=0; i--){
    b.appendChild(a.item(i));
    }



    }


    </script>


    <?php

    print_r($_REQUEST['catre']);
    ?>

  5. #5
    Avatarul lui cpcos
    cpcos este deconectat Junior SeoPedia
    Reputatie:
    0
    Data înscrierii
    21st January 2007
    Vârstă
    50
    Posturi
    3
    Putere Rep
    0


    Implicit

    Multumesc pentru replay!

    Singura problema pe care o vad, (legat de stricta mea intrebare), este ca ai folosit functia preent sa afisezi in forma continutul acelui select.

    Ideea de baza era ca eu o sa obtin o insiruire de elemente, ce ar fi trebuit transformate intr-o simpla linie de cod, astfel incat sa poata fi scrisa in baza de date.

    exemplu: daca am 1,2,3,4 de ales.
    aleg 1,3,4

    si postul trebuie sa fie 1,3,4 ($_Post['acel_select']).

    Cum am prezentat eu mai sus, selectul autoselecteaza tot continutul la apasarea butonului submit, dar submite doar prima valoare din sir. (ar fi 1)

    Cred ca asa cum a scris cineva mai sus, continutul selectului trebuie transformat in array sa poata fi perceput ca o valoare integra la submitere.(sa devina 1,3,4).

    ...

  6. #6
    Avatarul lui dan.adrian
    dan.adrian este deconectat Junior SeoPedia
    Reputatie:
    0
    Data înscrierii
    4th June 2007
    Posturi
    2
    Putere Rep
    0


    Implicit

    dupa submit faci asa:

    while(list(,$valoare)=each($_REQUEST['catre'])))
    $linie.=$valoare.",";

    daca vrei sa scapi de array (desi nu vad de ce ai face asta) poti sa definesti in input tip hidden iar la checkall pui in el valorile selectate.

  7. #7
    Avatarul lui Mascka
    Mascka este deconectat Membru SeoPedia
    Reputatie:
    38
    Data înscrierii
    30th May 2006
    Locaţie
    Braila
    Vârstă
    47
    Posturi
    496
    Putere Rep
    38


    Implicit

    poate nu faci submitul bine?? adica nu parcurgi array-ul

Informații subiect

Utilizatori care navighează în acest subiect

Momentan este/sunt 1 utilizator(i) care navighează în acest subiect. (0 membrii și 1 vizitatori)

Thread-uri Similare

  1. Promovarea unui site
    De Gabriel Puscuta în forumul Comert electronic, e-Commerce
    Răspunsuri: 10
    Ultimul Post: 8th November 2010, 11:56
  2. Denumirea Unui Domeniu
    De dbk în forumul Discutii generale privind optimizarea si motoarele de cautare
    Răspunsuri: 44
    Ultimul Post: 23rd July 2009, 00:07
  3. design-ul unui website ?!?
    De Adrian Poputoaia în forumul Bar, lobby...
    Răspunsuri: 14
    Ultimul Post: 12th November 2008, 00:25
  4. Rostul Unui Director
    De Cipixxx în forumul Directoare web straine
    Răspunsuri: 22
    Ultimul Post: 20th August 2008, 23:58
  5. Rugaciunea unui SEO...
    De Ben Boingeanu în forumul Bar, lobby...
    Răspunsuri: 6
    Ultimul Post: 9th August 2005, 10:17

Permisiuni postare

  • Nu puteţi posta subiecte noi.
  • Nu puteţi răspunde la subiecte
  • Nu puteţi adăuga ataşamente
  • Nu puteţi modifica posturile proprii
  •