Заполняйте значения в БД динамически в текстовом поле, основываясь на выборе выпадающего в PHP - PullRequest
0 голосов
/ 02 июля 2018

Я использовал два поля в моей БД, одно имя поля является категорией, а другое - мобильным. Я уже сделал это для отображения значений категорий в раскрывающемся списке. но мне просто нужно выбрать значение этой категории из выпадающего списка, а затем я хочу показать его номер мобильного телефона в текстовом поле. любая помощь с благодарностью.

Код выпадающего списка: -

<select name="cat" id="cat">
  <?php while($row1 = mysqli_fetch_array($result1)):?>
    <option value="<?php echo $row1[0];?>">
      <?php echo $row1[4];?>
    </option>
  <?php endwhile;?>
</select>

Код поля ввода: -

<input placeholder="Phone Number" name="phoneNumber" id="pnum"  type="text">

Javascript / AJAX POST: -

$('#cat').click(function() {
  var package = $('#cat').val();
  $.ajax({
    data: {
      'package': package
    }, //Have u tried this
    type: 'POST',
    url: 'ajax1.php',
    //dataType:'json',
    success: function(data) {
      $('#pnum').val(data);
    }
  });
});

ajax1.php: -

<?php
include('config.php');
if (isset($_POST['package'])) {
    $query = "select * from `user_content` where Category=" . $_POST['package'];
    $result1 = mysqli_query($db, $query);
    if (mysqli_num_rows($result1) > 0) {
        while ($res = mysqli_fetch_array($result1)) {
            echo $res['Mobile'];
        }   
    }
    die();
}
?>

1 Ответ

0 голосов
/ 02 июля 2018

Первое, что я заметил неправильно в вашем коде, это точка с запятой ; после цикла while.

Поэтому измените следующее:

<?php while($row1 = mysqli_fetch_array($result1)):;?>

с:

<?php while($row1 = mysqli_fetch_array($result1)):?>

Проблема неопределенного индекса связана с использованием здесь неправильного условия:

if (!isset($_POST['package']))

Это должно выглядеть так:

if (isset($_POST['package']))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...