This question already has an answer here:
Hi My question is how can I get the value from php script using an ajax with a onclick event.
I have a text field and a button
<button type="button" class="btn btn-primary" onclick="getid(this)">Generate ID</button>
<input type="text" name="pin" class="form-control" readonly>
And here is my php script named getrowcount.php
include_once 'conx.php';
$query ="SELECT * FROM patientprofile";
$result = $DBcon->query($query);
$count = $result->num_rows;
if ($result) {
if($count >= 0){
$count_res = $count += 1;
$idnum = $count_res;
$test = str_pad($idnum, 5, "0", STR_PAD_LEFT);
}
}
And now my problem is how can I get the value from $test
and put it in the input text field using ajax.
</div>
You can use AJAX to display the output from the query in the input field.
Step 1: Add this line of code to the bottom of getrowcount.php
:
echo $test;
Step 2: Amend your HTML so that it looks like this:
<form id="get">
<input type="text" id="pin" name="pin" class="form-control" readonly>
<input type="submit" class="btn btn-primary" value="Generate ID">
</form>
Step 3: Add this script to the bottom of the page.
<script>
$(document).ready(function(){
$("form#get").submit(function(event) {
event.preventDefault();
var input = $("#pin");
$.ajax({
type: "POST",
url: "getrowcount.php",
success: function(data) { input.val(data); }
});
});
});
</script>
For this you'd run the ajax call on button press, load the php from the ajax, in the php do an echo
with the variable you want to use, then in the ajax success section, you'd use the returned variable.
You could use the jQuery method $.get()
in your javascript script :
function getid(_this){
$.get('php_script_url.php',{},function(response){
alert(response);
$("[name=pin]").val(response);
})
}
Then in your PHP script you should add echo to the result you want to return :
echo $test;
Hope this helps.
May be this will help you
Your PHP code :
<?php
// Your database query and results store in $test
echo $test;
?>
Your ajax call should be -
$.ajax("getrowcount.php").done(function(data) {
$('.form-control').val(data);
})