I have a PHP
form`looks like this
<form>
<div id="inid">
National ID: <input type="text" id="individual_nid" oninput="getIndividualName(this.value)" />
</div>
<hr />
name: <div id="individual_name_fetch"></div>
<hr />
<div id="other_inputs fields" style="display: none;">
more inputs fields...
</div>
</form>
In my PHP
form I have an input textbox
where the user inserts a number
<input id="individual_nid" oninput="getIndividualName(this.value)" />
this textbox
fires on the fly the following ajax
function
function getIndividualName(val)
{
$.ajax({
type: "POST",
url:"get_individual_name.php",
data: 'individual_nid='+val,
success: function(data){
$("#individual_name_fetch").html(data);
}
});
}
in this function, I pass the user's input to the get_individual_name.php
page.
in the get_individual_name.php
page, I have a PHP
script that searches for the inserted number in the database and gets the corresponding individual name and fetches it to the id="individual_name_fetch"
div.
the PHP
script in the get_individual_name.php
page looks like this:
$q = mysqli_query($link, "SELECT * FROM table WHERE national_id = '".$_POST['individual_nid']."' ");
if(mysqli_num_rows($q) == 1)
{
while($r = mysqli_fetch_assoc($q))
{
echo $individual_name = $r['individual_name'];
}
}
else
{
echo $individual_name = 'Not in db';
}
up to here everything is fine
What I need to do now...
If the searched user founded in the db (mysqli_num_rows($q) == 1)
then I want to display the other inputs div id="other_inputs fields"
in the form. and if not, then the other_inputs fields
div hides again
How can I accomplish this?
please be aware that the ajax
function and the PHP
script run on the fly
NOTE & UPDATE
the script's output will be HTML
code, for example
- if the result found the output will be:
<span style="color: green;"><i class="fa fa-check fa-fw fa-lg"></i> <?=$individual_name;?></span>
OR
- in case no result found:
<span style="color: red;"><i class="fa fa-times fa-fw fa-lg"></i> No user found.</span>
What I am thinking about is to assign a variable e.g. $show_extra_fields = true
or $show_extra_fields = false
and pass it back to the ajax function and from there I check the value of the $show_extra_fields variable and based on the value I show/hide the other fields div.
is this possible?