|
|
|
Author Sarah King
Demo http://sarahk.pcpropertymanager.com/muck/ultimate_columns.php
This example makes it easier for columns of groups of data to be arranged in columns, rather than in a standard list down the page.
There are a few extra bits in here to make it possible to run this as an example on your own servers.
Got questions? Add a comment or ask at http://www.weberforums.com
Wee function to make getting $_GET data easier
I sometimes add security checks etc in here
function getGetVar($name, $default)
|
<?php
global $_GET;
if (isset($_GET[$name])) $output = $_GET[$name];
else $output = $default;
return $output;
}//getGetVar($name, $default)
/* Used to generate some dummy data */
function getData($items, $debug=false)
{
$output = array();
$num = 0;
for ($i = 1; $i <= $items; $i++)
{
$num = rand($num, $num + 100);
$output[] = $num;
}
if ($debug) var_dump_extra($output);
return $output;
}//getData($items)
/////////////////////////////////////
/* The secret behind the generator */
/////////////////////////////////////
function getColInfo($columns, $debug=false)
{
$output = array();
for ($i = 0; $i <= $columns; $i++)
{
$output[$i] = array('next' => $i+1, 'start' => '', 'end' => '');
}
$output[0]['start'] = '<tr>';
$output[$columns]['end'] = '</tr>';
$output[$columns]['next'] = 0;
if ($debug) var_dump_extra($output);
return $output;
}
/* Normally you would have a predefined number of columns so no need
* for this part of the code
*/
$columns = getGetVar('columns',2);
$items = getGetVar('items', 10);
$columns--;
$columns = max($columns, 1);
$columns = min($columns, 8);
$items = max($items, $columns);
$items = min($items, 100);
$debug = (getGetVar('debug',0)==1);
$live = (getGetVar('live',0)==1);
/* end of "demo only" code */
//get the structural information about the data
$colInfo = getColInfo($columns, $debug);
echo "<table border='1' cellpadding='4' cellspacing='0'>";
//toggle controls the column count
$toggle = 0;
//rowclass controls the striping of the rows and requires a stylesheet to have
//classes called row0 and row1
$rowclass = 0;
if ($live)
{
//call the database with a query and get back some data
$result = getLiveResult($items);
while($row = mysql_fetch_array($result))
{
$name = stripslashes($row['name']);
$description = stripslashes($row['description']);
echo "{$colInfo[$toggle]['start']}<td align='top' class='row{$rowclass}'>
<a href='http://www.pcpropertymanager.com/wsn{$row['id']}_1display.html'
title='{$name}' target='_blank'>{$name}</a><br>
{$description}
</td>{$colInfo[$toggle]['end']}";
$toggle = $colInfo[$toggle]['next'];
if ($toggle == 0) $rowclass = 1 - $rowclass;
}
}
else
{
//this would normally be a database query
$result = getData($items, $debug);
foreach($result as $item)
{
echo "{$colInfo[$toggle]['start']}
<td class='row{$rowclass}'>{$item}</td>{$colInfo[$toggle]['end']}";
$toggle = $colInfo[$toggle]['next'];
if ($toggle == 0) $rowclass = 1 - $rowclass;
}
}
if ($toggle > 0) echo '</tr>';
echo '</table>';
?> | | |
|
| PHP3: Formmail. Just a cgi formmail, but than in PHP. It is easy to use! Categories : HTML and PHP, Email, PHP, Perl, HTML and PHP | | | Message of the Day - Random Message (Needs MySQL!) Categories : Databases, HTML and PHP, PHP, MySQL | | | a function that builds an HTML select list from any mysql table. Categories : PHP, MySQL, HTML and PHP | | | upload function using PHP's FTP abilities. Categories : PHP, Filesystem, HTML and PHP | | | Newbie Notes #1 - Making a form return to itself Categories : PHP, Beginner Guides, HTML and PHP | | | Directory TreeView - File Manager & Explorer - FTP - Utility - PHP/HTML - Categories : PHP, Directories, FTP, Filesystem, HTML and PHP | | | Control ITunes playlist via the web with PHP a full working and simple example Categories : PHP, HTML and PHP, Multimedia, User Interface | | | Required form fields that pull from MySQL database Categories : PHP, HTML and PHP, Databases, MySQL | | | Multiple Select box, Select multiple Items from Menu.List box Categories : PHP, HTML and PHP, Beginner Guides | | | Print out array key => value in colored HTML Categories : PHP, Arrays, HTML and PHP | | | mySQL/PHP/search with multientry
form and table output with colored rows Categories : PHP, Beginner Guides, MySQL, HTML and PHP, Databases | | | Calendar using Date function Categories : HTML and PHP, PHP, Date Time, Calendar | | | Tree Menu Dynamic (+Static) with Loading in Progress.. Categories : PHP, Java Script, HTML and PHP | | | OverEasy - PHP generated JavaScript to do mouseovers on
your pages. Modify one file and one function does it all
for you! Categories : PHP, Java Script, HTML and PHP, MySQL | | | Using Postgres and PHP3 Authentication from a Web application Categories : PostgreSQL, HTML and PHP, Authentication, PHP | |
|
|