Передача значений БД в модальные с помощью jquery

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

В настоящее время это то, что я получаю, когда нажимаю кнопку редактирования:

Теперь мне все еще не хватает одного, и это JavaScript, который я уже создал:

<script>
    $('#exampleModal').on('show.bs.modal', function (event) {
          var button = $(event.relatedTarget) // Button that triggered the modal
          var recipient = button.data('whatever') // Extract info from data-* attributes
          var modal = $(this);
          var dataString = 'id=' + recipient;

            $.ajax({
                type: "GET",
                url: "editdata.php",
                data: dataString,
                cache: false,
                success: function (data) {
                    console.info(data);
                    modal.find('.dash').html(data);
                },
                error: function(err) {
                    console.info(err);
                }
            });
    })
</script>

Мой fetch.php — это чисто PHP, и я не знаю, как добавить в него JS. Вот мой fetch.php:

<?php
$connect = mysqli_connect("localhost", "root", "", "seatrequest");
$output = '';
$colors = array();
$colors["Ongoing"] = "red";
$colors["Closed"] = "#00FF00";
if (isset($_POST["query"]))
{
	$search = mysqli_real_escape_string($connect, $_POST["query"]);
	$query = "
	SELECT * FROM request 
	WHERE req_date LIKE '%".$search."%'
	OR reqname LIKE '%".$search."%'
	OR natureofreq LIKE '%".$search."%'
	OR postitle LIKE '%".$search."%'
	OR critlevel LIKE '%".$search."%'
	OR deadline LIKE '%".$search."%'
	OR account LIKE '%".$search."%'
	OR newaccname LIKE '%".$search."%'
	OR lob LIKE '%".$search."%'
	OR site LIKE '%".$search."%'
	OR status LIKE '%".$search."%'
	";
}
else
{
	$query = "
	SELECT * FROM request ORDER BY reqnumber";
}
$result = mysqli_query($connect, $query);
if (mysqli_num_rows($result) > 0)
{
	$output .= '<div class = "table-responsive">
					<table class = "table table bordered">
						<tr>
							<th style = "background-color: #e6ecff;">Date Requested</th>
							<th style = "background-color: #e6ecff;">Requested By</th>
							<th style = "background-color: #e6ecff;">Nature of Request</th>
							<th style = "background-color: #e6ecff;">Position Title</th>
							<th style = "background-color: #e6ecff;">Critical Level</th>
							<th style = "background-color: #e6ecff;">Deadline</th>
							<th style = "background-color: #e6ecff;">Account</th>
							<th style = "background-color: #e6ecff;">Name of Account (For New Seat)</th>
							<th style = "background-color: #e6ecff;">LOB</th>
							<th style = "background-color: #e6ecff;">Site</th>
				            <th style = "background-color: #e6ecff;">Status</th>
				            <th style = "background-color: #e6ecff;">Action</th>
				            <th style = "background-color: #e6ecff;">Edit</th>
						</tr>';
	while($row = mysqli_fetch_array($result))
{
    $output .= '<tr>
    			<td>'.$row["req_date"].'</td>
    			<td>'.$row["reqname"].'</td>
    			<td>'.$row["natureofreq"].'</td>
    			<td>'.$row["postitle"].'</td>
    			<td>'.$row["critlevel"].'</td>
                <td>'.$row["deadline"].'</td>
                <td>'.$row["account"].'</td>
                <td>'.$row["newaccname"].'</td>
                <td>'.$row["lob"].'</td>
                <td>'.$row["site"].'</td>
                <td style = "color:' . $colors[$row["status"]] . ';">' .$row["status"] . '</td>
                <td>
                	<form method = "post" action = "update-work-status.php">
                		<input type = "hidden" name = "reqnumber" value = "'.$row['reqnumber'].'" />
                		<button class = "fa fa-check" style = "color: green" type = "submit" name = "approve" value = ""></button><button class = "fa fa-close" style = "color: red" type = "submit" name = "decline" value = ""></button>
                	</form>
                </td>
                <td><a class = "btn btn-small btn-primary" data-toggle = "modal" data-target = "#exampleModal" data-whatever = "'.$row['reqnumber'].' ">Edit</a></td>
            	</tr>
        ';
}  
echo $output;
}
else
{
	echo 'Data Not Found';
}
?>

Думаю, мой вопрос в том, как мне включить этот JS внутрь fetch.php? Я не совсем уверен, что это сработает после добавления JS, но я узнаю.

Изменить модальное

Обратите внимание на переменную запроса, которую вы используете. Вы делаете запрос GET и в PHP извлекаете переменную запроса POST. Также убедитесь, что расположение файла указано правильно. Для вашего сценария JS файл PHP должен находиться в той же папке, что и ваш файл HTML.

Ivan Cézanne 02.04.2019 22:04
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
52
1

Ответы 1

Чтобы передать данные в ваш fetch.php из JS, я бы создал данные array и использовал метод POST следующим образом:

var dataString = {
  id: recipient,
  other: 'string'
}
$.ajax({
  type: "POST",
  url: "fetch.php",
  data: dataString,
  cache: false,
  success: function (data) {
      console.info(data);
      modal.find('.dash').html(data);
  },
  error: function(err) {
      console.info(err);
  }
});

и в вашем php:

$id = $_POST['id'];
$other = $_POST['other'];
//Do something with your data

Дайте мне знать, если это поможет.

Хм, спасибо, но я не уверен, куда именно это поместить.

Renzo Stack 01.04.2019 21:27

Первый идёт в ваш js файл, второй можно разместить везде в fetch.php, обычно в начале.

middlelady 02.04.2019 09:52

Я имею в виду, как мне включить JS-скрипт в мой fetch.php?

Renzo Stack 02.04.2019 19:32

Я отредактировал ответ. Вы можете передать данные из js в php, просто указав параметр url. Это в основном HTTP-запрос. Вам следует прочитать больше developer.mozilla.org/en-US/docs/Web/Guide/AJAX или api.jquery.com/jquery.ajax

middlelady 02.04.2019 21:59

Другие вопросы по теме