[英]how to set array data for the textbox in 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文件的傳遞數組值。 任何人都可以幫助我。 **
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函數來設置表單元素的值。 發布studentUniversityId通過ajax獲取響應數據並填充數據以形成元素。
要使用數組創建響應,您需要從查詢中提取獲取的數據並將它們放入輸出數組中。 我建議你使用鍵/值數組。
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>
希望它對你有所幫助。 馬爾科
根據我的看法和理解(請原諒,如果我不這樣做),您希望填充文本字段studentName和lecturerName及其各自的值。 對我來說,你的代碼看起來正確,除了一件事。 你需要放棄這條線
$arr = array("lecturerName", "studentName", "studentName");
來自superLe.php 。 這條線
$supervisor_data = $result->fetch_array(MYSQLI_ASSOC);
已經返回一個關聯數組,你可以在文件home.php中的變量$autofill
autofill中使用它作為$autofill['studentName']
autofill $autofill['studentName']
或$autofill['lecturerName']
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.