你好,我是PHP和ajax的新手。在选择下拉列表时,将出现单独的div函数,我必须插入两个值。我的意思是选择的选项以及单独div中的输入数据。我的英语不好。请帮帮我的朋友。 提前谢谢你
<p><label>Affiliate Type</label></p>
<p><select class="inp authInput" id="id_affiliate_type" name="affiliate_type">
<option value="" selected="selected" disabled="disabled" style="display: none;">Select</option>
<option value="I">Individual</option>
<option value="O">Organisation</option>
<div id="errorselect"></div>
</select></p>
<b button type="submit" class="btn btn-primary" onclick="return sendaccountData();" id="updateaccount" name="updateaccount">Update Account Information</b></button>
如何使用ajax和php在phpmyadmin数据库中存储它..
答案 0 :(得分:1)
您需要实现一个javascript侦听器,以便在选择选项时做出反应。然后在此侦听器中,您需要使用所选选项值作为post / get变量向服务器发送ajax请求。在您的服务器上,您需要实现相应的php文件来处理ajax请求。这个php文件必须获取post / get变量(选定的选项值)并将其插入SQL数据库中。这是一般的想法。
假设您使用的是jQuery,则侦听器必须位于您网页的javascript文件中,并且应该如下所示:
// react when the select list changes
$('#id_affiliate_type').on('change', function(e) {
// get the selected option value
var selected = $(this).find(':selected').text(); // or val(), need to confirm this...
// send the ajax request to your server
$.ajax({
// url of your php script which insert data into database
url: 'your_php_file.php',
type: 'get' // or 'post' if you prefer
// variables passed to the script
data: {selected : selected},
// callback, request is successful
success: function(result) {
console.log('success ' + result);
// do whatever you need to do after the call
}
// callback, something wrong happened
error: function(result) {
console.log('error ' + result);
// do whatever you need to do after the call
}
// process completed (success or error)
complete: function(result) {
}
}
}
在PHP文件(your_php_file.php)中,您可以通过调用以下方式访问“selected”变量:
$selected = $_GET['selected'] // (or $_POST)
...然后根据需要使用它来修改数据库。
这也是一般的想法,上面的代码只是一般设计,不是“原样”使用,而是作为灵感。
您可以在SO和其他地方找到很多关于在选择列表上实现on('change')侦听器的示例,使用变量向服务器发送ajax请求,并使用这些变量在PHP中更新数据库。
祝你好运答案 1 :(得分:1)
<强> file1.php 强>
<?php
$data=$_GET['foo'];
if($data=="option1")
{
echo "selected value is option1"; // add sql operation here if option 1
}
else if($data=="option2")
{
echo "selected value is option2"; // add sql operation here if option2
}
?>
<强> file2.php 强>
$("a").on("click", function(event){
//check the value of this.hash
if(this.hash !== ""){
event.preventDefault();
$("html, body").animate({scrollTop:$(this.hash).offset().top}, 500);
//add hash to the current scroll position
window.location.hash = this.hash;
}
});
您可以根据file2.php中的下拉选项显示数据,
答案 2 :(得分:0)
很简单。您可以进行ajax调用并在调用成功时获取值并将其插入该DIV。
您需要1个php文件,仅用于检查数据库并提供输出,例如:select_org_type.php
示例:select_org_type.php
<?php
if(!empty($_GET['affiliate_type'])){
//use mysqli commands to connect to database and fetch result and store in $result.
header();//This is very important, it will set your output as pure JSON object and javascript will find it easy to integrate
echo json_encode($result);
}
现在,在你的页面中,例如你正在使用jQuery(我建议很容易实现ajax调用)
<script type="text/javascript">
var affiliate_type = $('#id_affiliate_type').val();
$('#updateaccount').on('click',function(){
$.get('select_org_type.php',{affiliate_type:affiliate_type},function(data){
$('#errorselect').text(data['column-name']);
});
});
</script>
这是我如何进行ajax调用以填充任何select选项或将结果提供给任何div。