Solved

Why do these values not display the same way every time?

Posted on 2014-01-09
7
202 Views
Last Modified: 2014-01-09
The page in question is https://www.countryshowdown.com/new_map.php. When you pass your mouse over Nevada, you'll get a list of four radio stations. The problem is the way in which they're displayed. Instead of there being another station displayed to the right of KJRC, there's a blank cell. Now hover over Oklahoma. Perfect! No empty cells. Why do I have an empty cell over Nevada? You see the same thing in North Carolina.

I've gone out to the database and there's nothing obvious there, as far as a flaw in the data. There's just something about the way those two queries are running where I'm getting a cell and then a </tr></tr>.

Here's my code:

$allie = "select station_name from dbo_radio_stations where state_id='$bruce_row[state_id]'";
	$allie_query=mysqli_query($cxn, $allie);
		if(!$allie_query)
		{
		$whatever=mysqli_errno($cxn).': '.mysqli_error($cxn);
		die($whatever);
		$count++; // increment count
		}
		?>
<table style='width:100px; border-spacing: 1px; border-collapse: separate;'><tr>
<?php while($allie_row=mysqli_fetch_assoc($allie_query))
{
$count++; // increment count
extract($allie_row);
?>
<td class='station'><?php echo stripslashes($allie_row['station_name']);?></td><?php
	if ($count % $maxcols == 0)
	 { // if modulus of count is = 0 then end row
	echo "</tr><tr>"; 
	 }
}
if ($count)
	{ // data exists
	 $fill = ($count % $maxcols); // current column
	if ($fill){ // if not last column already fill in blank columns
	for ($i = $fill; $i <= ($maxcols -1); $i++){
	echo "<td>&nbsp;</td>";
	}
	echo "</tr>";
	 }
	 echo "</table>";
	}
?>

Open in new window


What am I missing?
0
Comment
Question by:brucegust
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 58

Expert Comment

by:Gary
ID: 39769069
This is your code
<tr><td class='station'>KRJC</td></tr><tr><td class='station'>KOWA</td><td class='station'>KIXW/KIXF</td></tr><tr>

KRJC is on its own row then you start a new row with KOWA
0
 
LVL 58

Expert Comment

by:Gary
ID: 39769092
What is the value of maxcols
0
 

Author Comment

by:brucegust
ID: 39769120
Yo, Gary! The value of my maxcols is 2. The code that you refer to above is correct with the exception that it should be:

<tr><td class='station'>KRJC</td><td class='station'>KOWA</td><td class='station'>KIXW/KIXF</td></tr><tr>

...in other words, two columns and then a new row. In some instances, I'm getting a new row after only one cell / column and I can't figure out why.
0
Don't Cry: How Liquid Web is Ensuring Security

WannaCry is just the start. Read how Liquid Web is protecting itself and its customers against new threats.

 
LVL 58

Accepted Solution

by:
Gary earned 500 total points
ID: 39769183
Is your counter starting at 0

Not really sure
Add an echo
echo $count."-".$maxcols;
if ($count % $maxcols == 0)
0
 

Author Comment

by:brucegust
ID: 39769222
It is. But you made me just think of something. The $count is is defined at the top of the page. Is it possible that after each iteration of the code, I need to reset the count? I'm smelling there, Gary, what do you think?
0
 
LVL 58

Expert Comment

by:Gary
ID: 39769239
Me thinks you've hit the nail on the head - the echo would show the counter is not what it should be.
0
 

Author Comment

by:brucegust
ID: 39769284
That did it!

Thank you, sir!
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Things That Drive Us Nuts Have you noticed the use of the reCaptcha feature at EE and other web sites?  It wants you to read and retype something that looks like this. Insanity!  It's not EE's fault - that's just the way reCaptcha works.  But it i…
3 proven steps to speed up Magento powered sites. The article focus is on optimizing time to first byte (TTFB), full page caching and configuring server for optimal performance.
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question