как установить данные массива для текстового поля в php

** У меня есть файл home.php и файл superLec.php. пользователь может ввести studentUniversityId и нажать кнопку «Отправить». В частности, я хочу показать текстовое поле studentName и текстовое поле lecturerName . Я хочу передать данные в виде массива. Как установить данные массива для значения текстового поля. Пожалуйста, помогите мне. **.

home.php

 <?php session_start(); include_once 'include/class.supervisor.php'; $supervisor = new Supervisor(); if (isset($_POST['submit'])) { extract($_POST); $autofill = $supervisor->check_auto_fill($studentUniversityId); /* if ($autofill) { // Registration Success header("location:homeLecturer.php"); } else { // Registration Failed echo 'Wrong username or password'; }*/ } ?> <form action="" method="post"> <label for="studentID">Student ID</label> <input type="text" name="studentUniversityId" id="studentID" placeholder="studentID"> <!--input type="submit" id="autoFill" name="autoFill" value="Auto Fill"><br><br> <input class="btn" type="submit" name="submit" value="Auto Fill"--> <label for="studentName">Student Name</label> <input type="text" id="studentName" name="studentName" value = "<?php echo print_r($autofill);?>" placeholder="Student Name"><br><br> <label for="lecturerName">Supervisor Name</label> <input type="text" id="lecturerName" name="lecturerName" value = "<?php echo ($lecturerName) ;?>" placeholder="Supervisor Name"><br><br> <input type="submit" id="submit" name="submit" value="submit"> </form> 

** Это мой php-файл. Я хочу передать значения массива для файла home.php. может ли кто-нибудь помочь мне PLS. **

superLe.php

 public function check_auto_fill($studentUniversityId){ $query = "SELECT supervisor.lecturerName, supervisee.studentName, supervisee.studentUniversityId FROM supervisee, supervisor WHERE supervisee.lecturerId = supervisor.lecturerId AND supervisee.studentUniversityId = '$studentUniversityId' "; $result = $this->db->query($query) or die($this->db->error); $supervisor_data = $result->fetch_array(MYSQLI_ASSOC); $arr = array("lecturerName", "studentName", "studentName"); return $arr; } 

Вы должны использовать функцию JQuery для установки значения элементов формы. Post studentUniversityId через ajax получает данные в ответ и заполняет данные для формирования элемента.

Чтобы создать ответ с массивом, вам нужно извлечь извлеченные данные из запроса и поместить их в выходной массив. Я предлагаю вам использовать массив key / value.

 public function check_auto_fill($studentUniversityId){ $query = "SELECT supervisor.lecturerName, supervisee.studentName, supervisee.studentUniversityId FROM supervisee, supervisor WHERE supervisee.lecturerId = supervisor.lecturerId AND supervisee.studentUniversityId = '$studentUniversityId' "; $result = $this->db->query($query) or die($this->db->error); $supervisor_data = $result->fetch_array(MYSQLI_ASSOC); $arr = array( 'lecturerName' => $supervisor_data[0]['lecturerName'], //the "0" index depends of the query structure, but as I can see, this is a right way 'studentName' => $supervisor_data[0]['studentName'], ) //$arr = array("lecturerName", "studentName", "studentName"); return $arr; } 

После этого в вашем home.php вы можете просто извлечь данные из массива и поместить элементы в нужные поля:

 <label for="studentName">Student Name</label> <input type="text" id="studentName" name="studentName" value = "<?php echo $autofill['studentName']; ?>" placeholder="Student Name"><br><br> <label for="lecturerName">Supervisor Name</label> <input type="text" id="lecturerName" name="lecturerName" value = "<?php echo $autofill['lecturerName']; ?>" placeholder="Supervisor Name"><br><br> 

Надеюсь, это поможет вам. Marco

Из того, что я вижу и понимаю (пожалуйста, извините, если я этого не сделаю), вы хотите заполнить текстовые поля studentName и lecturerName соответствующими значениями. Для меня код выглядит корректно, кроме одного. Вам нужно отбросить линию

 $arr = array("lecturerName", "studentName", "studentName"); 

от superLe.php . Линия

 $supervisor_data = $result->fetch_array(MYSQLI_ASSOC); 

уже возвращает ассоциативный массив, который можно использовать в переменной $autofill в файле home.php как $autofill['studentName'] или $autofill['lecturerName'] .