Stut wrote:
On 17 Apr 2008, at 13:33, Jason Pruim wrote:
Maybe I'm showing my ignorance here in programming... Maybe it's
because I delt with a kid who decided to scream for a good share of
the night and I'm sleep deprived :) But in my current system I have this:
echo <<<HTML
<div>
<table border="1">
<tr>
<td><a href="?order=a">First Name</a></td>
<td><a href="?order=b">Last Name</a></td>
<td><a href="?order=c">Address 1</a></td>
<td><a href="?order=d">Address 2</a></td>
<td><a href="?order=e">City</a></td>
<td><a href="?order=f">State</a></td>
<td><a href="?order=g">Zip</a></td>
<td><a href="?order=h">Code</a></td>
<td><a href="?order=i">ID #</a></td>
HTML;
while($row = mysqli_fetch_assoc($result)) {
//display the info using heredoc syntac
echo <<<HTML
<tr>
<td>{$row['FName']}</td>
<td>{$row['LName']}</td>
<td>{$row['Add1']}</td>
<td>{$row['Add2']}</td>
<td>{$row['City']}</td>
<td>{$row['State']}</td>
<td>{$row['Zip']}</td>
<td>{$row['XCode']}</td>
<td>{$row['Record']}</td>
HTML;
}
What I want to do is take that first block of code, the one with the
links for sorting, and instead of this: "<td><a href="?order=a">First
Name</a></td>" I want to put something more like this: "<td><a
href="?order=a">$FIELDNAMES[$field{$id}]</a></td>" So I can grab the
field names from the database, instead of hardcoding them into my
program.
I think I am sleep deprived because the more I tried to clarify it...
the harder it got for me to understand :)
echo <<<HTML
<div>
<table border="1">\
HTML;
$first = true;
while ($row = mysqli_fetch_assoc($result)) {
if ($first)
{
echo '<tr>';
foreach (array_keys($row) as $field) {
echo '<td>'.htmlentities($field).'</td>';
}
echo '</tr>';
$first = false;
}
// Output the row here as above
}
-Stut
Very good example, but I would remove data retrieval from the display of data.
<?php
$dataSet = array();
while ($row = mysqli_fetch_assoc($result)) {
$dataSet[] = $row;
}
# do some other stuff
# now display
# Check to see if there is anything in the dataSet
if ( count($dataSet) > 0 ) {
echo '<table>';
# Get the names of the columns from the first result set
$headers = array_keys($dataSet[0]);
# Print the column names
echo '<tr>';
foreach ( $headers AS $column_name ) {
echo "<th>{$column_name}</th>";
}
echo '</tr>';
# Now print your data
foreach ( $dataSet AS $row ) {
echo <<<ROW
<tr>
<td>{$row['FName']}</td>
<td>{$row['LName']}</td>
<td>{$row['Add1']}</td>
<td>{$row['Add2']}</td>
<td>{$row['City']}</td>
<td>{$row['State']}</td>
<td>{$row['Zip']}</td>
<td>{$row['XCode']}</td>
<td>{$row['Record']}</td>
</tr>
ROW;
}
echo '</table>';
}
?>
--
Jim Lucas
"Some men are born to greatness, some achieve greatness,
and some have greatness thrust upon them."
Twelfth Night, Act II, Scene V
by William Shakespeare
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php