[英]dynamic form php ajax
我有這個表格。
<form id="form1" name="form1" method="post" action="">
<p>
<label for="textfield"></label>
Id:
<input type="text" name="textfield" id="textfield" />
</p>
<p>
<label for="textfield2"></label>
Name:
<input type="text" name="textfield2" id="textfield2" />
</p>
<p>
<label for="textfield3"></label>
Apellido:
<input type="text" name="textfield3" id="textfield3" />
</p>
<p>
<input type="submit" name="button" id="button" value="Enviar" />
</p>
<p> </p>
</form>
當我寫了de id,然后是pulse key選項卡時,在輸入名稱和apellido中必須獲取我的數據庫mysql此信息。
我希望你能理解我。
您的代碼將如下所示:
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#textfield').blur(function() {
var myId = $(this).val();
if (myId == '') return false;
$.ajax({
type: "POST",
url: "myFile.php",
data: "theID=" +myId,
success: function(fromPHP) {
var allRecd = fromPHP.split('|');
var name = allRecd[0];
var apel = allRecd[1];
$('#textfield2').val(name);
$('#textfield3').val(apel);
}
})
});
}); //END $(document).ready()
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
<p>
<label for="textfield"></label>
Id:
<input type="text" name="textfield" id="textfield" />
</p>
<p>
<label for="textfield2"></label>
Name:
<input type="text" name="textfield2" id="textfield2" />
</p>
<p>
<label for="textfield3"></label>
Apellido:
<input type="text" name="textfield3" id="textfield3" />
</p>
<p>
<input type="submit" name="button" id="button" value="Enviar" />
</p>
<p> </p>
</form>
</body>
</html>
PHP方面: myFile.php
<?php
$id = $_POST['theID'];
//Do your mysql query here, for example
$result = mysql_query("SELECT * FROM users WHERE user_id = '$id' ");
$n = $result['name'];
$a = $result['apellido'];
$response = $n . "|" . $a;
echo $response;
筆記:
blur()
方法檢測用戶何時離開文本字段 success
函數中處理! 您可以使用jQuery來使用AJAX並將此表單數據發送到MySQL。
$(document).ready(function(){
$('#button').on('click',function(e){
var data = $('#form1').serialize();
$.ajax({
url:'get_data.php',
type: 'post',
data: data,
success: function(response) {console.log(response);},
error: function() {console.log('Request failed.')}
});
return false;
});
});
在服務器端,您可以像下面這樣獲取此數據並保存到mysql數據庫中。 我假設您有一個表名Persons。
<?php
$textfield = $_POST['textfield'];
$textfield2= $_POST['textfield2'];
$textfield3= $_POST['textfield3'];
$con=mysqli_connect("localhost","dbusername","dbpass","dbname");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_query($con,"INSERT INTO Persons (textfield , textfield2, textfield3)
VALUES ('$textfield', '$textfield2','$textfield3')");
mysqli_close($con);
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.