Jump to content

Read Multiple Rows Sequentially


iwato

Recommended Posts

QUESTION ONE:  What is it called when you traverse an entire table in equal multiples of records?  (I ask this question, because I have been fraught with frustration in my google searches.)

QUESTION TWO:  Do you know a routine that I can copy and modify? (This would greatly simply my search.)

BACKGROUND:    Surely there must be a standard routine for performing the following procedure:

1) Use PHP to read and display the first ten records of a MySQL table.

2) Read and display the next ten records of the same data table.

3) Either return to the previously read ten records and display these or continue on to the following ten unread records and display them.

5) When you have reached the end of the table display only the remaining records.

GOAL:  Ultimately I would like to read and display 10 records in a list format.  At the bottom of the list I would place two buttons.  One that displays the previously 10 records and one that displays the next ten unread records.

WHAT I HAVE ACHIEVED SO FAR:

					<?php
						$col_name = 'item_pubdate';
						$result_obj = $mysqli_obj->query("SELECT * FROM rss2_podcast_item ORDER BY '$col_name' LIMIT 0, 10");
						while($row=$result_obj->fetch_array()) {
					?>
						<div class='table_row podcast_item'>
							<div class='flex_item num_div'><?php echo $row['podcast_no_item'] . '&nbsp'; ?></div>
							<div class='flex_item date_div'><?php echo $row['item_pubdate']; ?></div>
							<div class='flex_item title_div'><?php echo $row['item_title']; ?></div>
						</div><!-- end div.table_row -->
						<div class='table_row discover_div'>
							<div class='flex-item'>Discover more ...</div>
						</div><!-- end div.table_row -->
						<div class='table_row'>
							<div class='flex-item details_div'>
								<?php echo $row['item_description']; ?>
							</div><!-- end div.table_row -->
						</div><!-- end div.table_row -->
					<?php
						 }
					?>

With a little additional CSS and Javascript I have been able to achieve the following display.  Clicking on the phrase "Discover more ..."  reveals the hidden detail obtained from $row['item_description].

No.   Publication Date|Time    Podcast Title

60    2017-06-19 17:26:41      Title  Ten
Discover more ...

59    2017-06-18 09:50:37      Title Nine
Discover more ...

.
.
.

51    2017-09-24 11:00:17      Title One
Discover more ...

DESIRE:  If I can only achieve the above stated goal, I can likely figure out a way to get AJAX  to allow users to select podcast items by the week, month, year, and later category.  But, this is already much too far into the future.  For the moment, I would simply like to achieve my above stated goal.

Any ideas?

Roddy

Edited by iwato
Link to comment
Share on other sites

What you're asking for is called pagination and it's usually done by adding a page or offset number to the query string and putting that value into the LIMIT clause of the SQL query.

You can use AJAX to do it, but I'd recommend first using just PHP and then adding the Javascript layer on top of that for convenience.

 

  • Thanks 1
Link to comment
Share on other sites

After several hours of investigation and experimentation with two models that I found online, I finally decided upon one. Two more hours past as I sought  to make deprecated code recent.  When I went to implement the class, however, I discovered that the source file no longer existed.  So, I returned to the net and to my very pleasant surprise found the following: pagination.js.

Now, I do not want to be hasty in my appraisal, but this piece of jQuery appears to do just about everything you could imaging including an automatic implementation of JSONP.  Check out the link provided on the GiiHub page.  i am very excited.

Roddy

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...