Dear Mates, Please click the ads to support us.

Show dynamic data on modal popup using php

Kailash Singh

Show dynamic data on modal popup using php

Published Mar 21,2019 by Kailash Singh

1 Comment     60076 Views    


In this tutorial, we are going to learn about how to show dynamic data on modal popup using PHP MySQLi.

 

Step 1 :- Before using the Bootstrap to create modal popup, the Bootstrap and jQuery library need to be included first.

 

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

 

Step 2 :- Create table to show data.

 

<table class="table table-bordered table-striped">
   <thead>
      <tr class="btn-primary">
	    <th>S.No.</th>
	    <th>Name</th>
	    <th>Phone Number</th>
	    <th>Email</th>
	    <th></th>
	  </tr>
   </thead>
   <tbody>
      <tr>
	    <td></td>
	    <td></td>
	    <td></td>
	    <td></td>
	    <td></td>
      </tr>
    </tbody>
</table>

 

Step 3 :- Create user table in database.

 

CREATE TABLE `codingmantra`.`user` ( `id` INT(11) NOT NULL AUTO_INCREMENT , `name` VARCHAR(100) NOT NULL , `phone` VARCHAR(50) NOT NULL , `email` VARCHAR(200) NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB;

 

Step 4 :- Create connection to database in php file.

 

The mysqli_connect() function opens a new connection to the MySQL server.

Syntax : - mysqli_connect(hostname, username, password, database);

 

<?php $con = mysqli_connect('localhost','root','','codingmantra'); ?>

 

Step 5 :- Show dynamic data on table.

 

<table class="table table-bordered table-striped">
    <thead>
    	<tr class="btn-primary">
	    	<th>S.No.</th>
	    	<th>Name</th>
	    	<th>Phone Number</th>
	    	<th>Email</th>
	    	<th></th>
	    </tr>
    </thead>
    <tbody>
    	<?php 
    		$sql = 'SELECT * FROM user';    // Select table here 
    		$result = mysqli_query($con,$sql);  // here i am run the query
    		$i = 1;                             // only creates sequence of the data
    		while($row = mysqli_fetch_array($result)) // Showing all the data
    		{
    	?>
    	<tr>
	        <td><?php echo $i; ?></td>
	    	<td><?php echo $row['name']; ?></td>
	    	<td><?php echo $row['phone']; ?></td>
	    	<td><?php echo $row['email']; ?></td>
	    	<td>
	    		// Now next step... here i am creating a button to open the modal popup
	    	</td>
    	</tr>

    					
    	<?php 
    		$i++;
    	    }
    	?>
    </tbody>
</table>

 

Step 6 :- Creating a button to open a modal popup.

 

<table class="table table-bordered table-striped">
    <thead>
    	<tr class="btn-primary">
	    	<th>S.No.</th>
	    	<th>Name</th>
	    	<th>Phone Number</th>
	    	<th>Email</th>
	    	<th></th>
	    </tr>
    </thead>
    <tbody>
    	<?php 
    		$sql = 'SELECT * FROM user'; 
    		$result = mysqli_query($con,$sql);
    		$i = 1;
    		while($row = mysqli_fetch_array($result)) 
    		{
    	?>
    	<tr>
	    	<td><?php echo $i; ?></td>
	    	<td><?php echo $row['name']; ?></td>
	    	<td><?php echo $row['phone']; ?></td>
	    	<td><?php echo $row['email']; ?></td>
	    	<td>

            // here i am creating a button to open a modal popup

	    	<button type="button" class="btn btn-info" data-toggle="modal" data-target="#myModal<?php echo $row['id'] ?>">View</button>



	    	</td>
    	</tr>

        //  here i am creating a modal popup code.........

    	<div id="myModal<?php echo $row['id'] ?>" class="modal fade" role="dialog">
			<div class="modal-dialog">
			    <div class="modal-content">
					<div class="modal-header">
						 <button type="button" class="close" data-dismiss="modal">&times;</button>
						    <h4 class="modal-title">Details</h4>
				    </div>
				    <div class="modal-body">
						 <h3>Name : <?php echo $row['name']; ?></h3>
						 <h3>Mobile Number : <?php echo $row['phone']; ?></h3>
						 <h3>Email : <?php echo $row['email']; ?></h3>
				    </div>
				</div>
			</div>
		</div>

        // end modal popup code........

    	<?php 
    		$i++;
    		}
    	?>
    </tbody>
</table>

 

Two Important things you have to noticed mates :-

 

1) you have to pass id on button.

 

Like this :-

 data-target="#myModal<?php echo $row['id'] ?>"

 

2) You have to pass id on modal popup

 

Like this:-

 

<div id="myModal<?php echo $row['id'] ?>" class="modal fade" role="dialog">

 

Hope this will help our developers.


1 Comment


Muadz Mohd Rosli Oct 20, 2019

Hi, thanks for the tutorial. a follow up question if you don't mind answering. For my code, I need to display a set of buttons, that when clicked will show a table with data taken from the database. so from following your code, the button only show up when there's data for the row. so I guess my question is what do I change to get the button to appear without the need to have data in the database. I tried changing while($row = mysqli_fetch_array($result)) to while($i <10) I did get the 10 buttons, but nothing happens when they're clicked. so that's where I'm stuck, please help. and thank you for your time

SEARCH POST HERE


Support Us

Subscribe My YouTube Channel

Join Our Telegram Channel & Support Eachother

CATEGORIES

INTERVIEW QUESTIONS

PROJECT SOURCE CODE






POPULAR POSTS