SitePoint Sponsor

User Tag List

Results 1 to 4 of 4
  1. #1
    SitePoint Guru
    Join Date
    Oct 2011
    Posts
    658
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Problem in getting the value in select option using ajax, php and mysql

    Hi...

    It's my first time to use ajax and I used it to get the bin_loc per lot_number where I choose in select option per ItemCode.

    And now I get the bin_loc but the problem is I only get the bin_loc of the first select option the rest was not.


    Here is my code of PickingForm.php

    PHP Code:
    <?php 
        session_start
    ();                                                                         
       
    error_reporting(0);
       
    date_default_timezone_set("Asia/Singapore"); //set the time zone  
    $con mysql_connect('localhost''root','');

    if (!
    $con) {
        echo 
    'failed';
        die();
    }

    mysql_select_db("mes"$con);
    $Date_Shelve =date('Y-m-d H:i:s');
    ?>
    <html>
    <title>Picking</title>
    <head>
    <link href="kanban.css" rel="stylesheet" type="text/css">
    <script type="text/javascript">
    var xmlhttp;  // Give the function a unique name, this is what your HTML will call to run the AJAX 
    function select_code() {      // This is all just setting up the variable, ignore it     
    if (window.XMLHttpRequest) {          // code for IE7+, Firefox, Chrome, Opera, Safari        
    xmlhttp=new XMLHttpRequest();      
    } else {          // code for IE6, IE5         
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");      
    }      
    xmlhttp.onreadystatechange = function() {          
        if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {              
            //alert(xmlhttp.responseText);
           // alert(xmlhttp.readyState+" "+xmlhttp.status);
           // alert(xmlhttp.readyState+" "+xmlhttp.status);        
        document.getElementById("bin_loc").innerHTML = xmlhttp.responseText; 
        
            //var mydata=xmlhttp.responseText;         
        }      
    };      
    var val = document.getElementById("lot_number");      
    var lot_number = val.options[val.selectedIndex].text;  

    //alert(lot_number);     
    var parameters = "lot_number="                      
                    + lot_number;       
                    xmlhttp.open("POST", "PickingFormTest.php", true);     
                    xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");     
                    xmlhttp.send(parameters);
    //var mydata=xmlhttp.responseText;   
    }

    </script>






    </head>
    <body> 


      <div id="SR_date">
    <label>Date :</label>
    <input type="text" name="date_pick" value="<?php echo $Date_Shelve?>" size="16" readonly="readonly" style="border: none;">    
    </div>

     <div id="Picking">
    <?php          
      $sr_num_ 
    $_POST['sr_num_'];


    //$sql = "SELECT sr_number "   
      
    $sql "SELECT sr_number, Items, DemandedQty, uom 
    FROM sr_main WHERE sr_number = '
    $sr_num_'";
    $res_sr_main mysql_query($sql$con);



    $row_num mysql_num_rows($res_sr_main);

    if(
    $row_num 0){

    while(
    $row_sr_main mysql_fetch_assoc($res_sr_main)){

    $sr_number_ $row_sr_main['sr_number'];
    $items $row_sr_main['Items'];
    $demandedqty $row_sr_main['DemandedQty'];
    $uom $row_sr_main['uom'];  
    echo 
    "<label> SR # :</label>";
    echo 
    "<input type='text' readonly='readonly' style='border:none;' id='sr_number_' name='sr_number_' value='$sr_number_'>";

    echo 
    "<table>";
    echo 
    "<th>Items</th>
            <th> Item Code </th>
            <th> Demanded Qty </th>
            <th> UoM </th>
            <th> Description </th>
            <th> Lot Number </th>
            <th> Bin Location </th>
            <th> Picked By </th>
            <th> Approved</th>"
    ;
    echo 
    "<tr>
            <td>
    $items</td>
            <td></td>
            <td style='text-align:right;'>
    $demandedqty</td>
            <td>
    $uom</td>
            </tr>"
    ;             
            
    $sql_sub "SELECT s.sr_number, s.Items, s.ItemCode, s.SubQty, s.UoM, s.Description 
    FROM sr_submain s WHERE s.sr_number = '
    $sr_num_' and s.Items = '$items' AND NOT EXISTS(SELECT w.stock_item FROM wms w WHERE s.ItemCode = w.stock_item AND w.sr_number = s.sr_number AND (w.qty_withdraw !='0.00' OR w.qty_withdraw = 'NULL'))";

    $res_sub mysql_query($sql_sub$con);

    while(
    $row_sub mysql_fetch_assoc($res_sub)){
     
       echo 
    "<form name='picking_lotnum' action='PickingForm.php?sr_num_=".$sr_num_."' method='POST' enctype='multipart/form-data' target='_self'>";

      
    $sr_num $row_sub['sr_number'];
      
    $Items $row_sub['Items'];
      
    $ItemCode $row_sub['ItemCode'];
      
    $SubQty $row_sub['SubQty'];
      
    $UoM $row_sub['UoM'];
      
    $Description $row_sub['Description'];

    $query "SELECT lot_number from wms WHERE (date_shelve IS NOT NULL) AND stock_item = '$ItemCode' AND (qty = orig_qty OR qty != '0.00') AND qty >= '$SubQty' ORDER BY qty";                 
    $rows mysql_query($query$con); 

     echo 
    "<tr>
            <td></td>
            <td><input type='text' name='ItemCode' id='ItemCode' value='
    $ItemCode' readonly='readonly' style='border:none;font-family: Arial, Helvetica, sans-serif;
        font-size: .9em;'></td>
            <td><input type='text' name='SubQty' id='SubQty' value='
    $SubQty' readonly = 'readonly' style='border:none; text-align:right;font-family: Arial, Helvetica, sans-serif;
        font-size: .9em;'></td>
            <td>
    $UoM</td>
            <td>
    $Description</td>";
                    
    echo 
    "<td><select name = 'lot_number' id='lot_number' onChange='select_code();'>";
     echo 
    "<option></option>";                
      while (
    $record mysql_fetch_array($rows))          
      {             
          echo 
    "<option value = '{$record['lot_number']}'";             
          if (
    $lot_number == $record['lot_number'])                 
          echo 
    "selected = 'selected'";             
           echo 
    ">{$record['lot_number']}</option>";        
      }         
      echo 
    "</select>";
      echo 
    "</td>";  
     
      echo 
    "<td id='bin_loc'></td>"
      echo 
    "<td> <input type='text' name='picked_by' id='picked_by' size='20' value=''> </td>";  
         echo 
    "<td><input type='submit' name='priority' value='Approved' id='priority'></td>";
     
         echo 
    "</tr>";
         echo 
    "<input type='hidden' name='date_pick' value='$Date_Shelve' size='16' style='border: none;'>";           
         echo 
    "<input type='hidden' readonly='readonly' style='border:none;' id='sr_num_' name='sr_num_' value='$sr_number_'>"
         echo 
    "</form>"
    }       
    }
    }
      echo 
    "</table>"
      echo 
    "</div>";     
      
    ?>
    </body>
    </html>
    and here is the PickingFormTest.php

    PHP Code:
    <?php
          session_start
    ();                                                                         
       
    error_reporting(0);
       
    date_default_timezone_set("Asia/Singapore"); //set the time zone  
    $con mysql_connect('localhost''root','');

    if (!
    $con) {
        echo 
    'failed';
        die();
    }

    mysql_select_db("mes"$con);

    $lot_number $_POST['lot_number'];

    //echo $lot_number;
      // $q=$_GET["lot_number"];    
      
    $sql_bin "SELECT bin_loc FROM wms WHERE lot_number = '$lot_number'";
      
    $res_bin mysql_query($sql_bin$con);
      
      while(
    $row_bin mysql_fetch_assoc($res_bin)){
          
    $bin_loc $row_bin['bin_loc'];
          
      echo 
    "<input type='text' value='$bin_loc' id='bin_loc'>";

      }
      
    ?>
    I attach the sample form

    Thank you so much
    Attached Images Attached Images

  2. #2
    SitePoint Wizard silver trophybronze trophy Cups's Avatar
    Join Date
    Oct 2006
    Location
    France, deep rural.
    Posts
    6,869
    Mentioned
    17 Post(s)
    Tagged
    1 Thread(s)
    It's my first time to use ajax
    Then get it all wired up and working with static hard coded example data first, then add the complexity of db calls and PHP

    PickingFormTest.php
    Code:
    <input type="text" value="test" id="idOne" name="idOne" />
    <input type="text" value="test2" id="idTwo" name="idTwo" />

  3. #3
    SitePoint Evangelist
    Join Date
    May 2006
    Location
    Austin
    Posts
    401
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Also, if you haven't looked at them, I highly recommend checking out pre-made javascript libraries. Jquery, Mootools, and Prototype are all well established and stable. They really take the guesswork and pain out of Ajax. They will consume some overhead but the benefits outweigh the negatives IMO.
    Merchant Equipment Store - Merchant Services, POS, Equipment, and supplies.
    Merchant Account Blog | Ecommerce Blog

  4. #4
    SitePoint Guru
    Join Date
    Oct 2011
    Posts
    658
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Sorry, I don't understand what you mean..

    I just want to know whats wrong in my code thats why the first select was work and the rest was not.


    I'm sorry, I don't know also the jquery


    Thank you so much


Bookmarks

Posting Permissions

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