[SOLVED] Change event not populating second dropdown

I am having trouble populating a second dropdown from a mysql result. As far as I can see, the code seems fine but obviously there is something not right.

The value is being passed correctly to $rtvcompany = $_GET[‘rtvcompany’]; from loadboxRtvaddr.php?rtvcompany= in PHP and if I run query in mysql, it returns correct data.

I would be grateful if someone could please check my code and point out my error. Many thanks

UPDATE: In colsole.log it shows data as an empty string

html

<div class="form-group">
    <label class="labelStyle" for="rtvdept">Department</label> <select class="form-control chosen-select" data-placeholder="Select a Dept..." id="rtvdept" name="rtvdept">
      <option value="">
      </option>
    </select>
    <div id="deptmessage"></div>
    <div class="servicesHelp">
      Please select a department where your box is stored for retrieval.
    </div>
</div>

JS Change event

$(function() {
  $("#rtvcompany").change(function() {
    $(this).after('<div id="loader"><img src="/logistor.new/admin/images/loader.gif" alt="loading files" /></div>');
    $.get('/domain/admin/requests/boxes/retrieve/loadboxRtvaddr.php?rtvcompany=' + $(this).val(), function(data) {
      $("#rtvdept").html(data);
      $('#loader').slideUp(200, function() {
        $(this).remove();
        $("#rtvdept").trigger("chosen:updated");
      });
    });
  });
});

PHP

<?php session_start(); ?>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/domain/admin/Connections/domain.php'); ?>

<?php
if (!$conn) {
  die("Connection failed: " . mysqli_connect_error());
}

$rtvcompany = $_GET['rtvcompany'];

$sqladdr = "SELECT * FROM departments WHERE code = '".$rtvcompany."'";
$resultaddr = mysqli_query($conn, $sqladdr) or die(mysqli_error());
if (mysqli_num_rows($resultaddr) > 0) {
  while ($row_addr = mysqli_fetch_array($resultaddr)) {
    echo "<option value='$row_addr[name]'>$row_addr[name]</option>";
}
mysqli_close($conn);
?>

Sloved it. Missing } in php if statement.

1 Like

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.