|
|
|
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 | | | a function that builds an HTML select list from any mysql table. Categories : PHP, MySQL, HTML and PHP | | | Tag content retrieval from websites with preg_match Categories : PHP, Regexps, Arrays, HTML and PHP | | | Message of the Day - Random Message (Needs MySQL!) Categories : Databases, HTML and PHP, PHP, MySQL | | | Check parameters validity. Paranoia was designed to check the validity of the parameters that a php page will receive after a form submission. It can be used to check the variables sent by POST or GET Categories : Algorithms, HTML and PHP, PHP, Variables | | | Alternating background color for HTML table rows Categories : PHP, Databases, MySQL, HTML and PHP | | | Constantly refresh your PHP/HTML page data. Categories : PHP, HTML and PHP, Sybase | | | background music script for random notes in a frame Categories : PHP, Content Management, HTML and PHP | | | A very simple way to build and do a hierarchical html categories browser without javascript , just using html php and mySql
Categories : HTML and PHP, Databases, Algorithms, PHP, MySQL | | | Random Image Display Categories : PHP, Filesystem, Graphics, HTML and PHP | | | PhpView 0.1 - simple php viewer, using temporary files and frames.
Categories : PHP, PHP Options and Info, Debugging, HTML and PHP | | | Automatically printing the contents of an sql table in MySQL. Categories : MySQL, PHP, HTML and PHP, Databases | | | PHP template processing Categories : PHP, Templates, HTML and PHP | | | XDT Topsite (Gold v1.0) Categories : Databases, CSS, PHP, HTML and PHP, Sessions | | | function textwrap will wrap text to any desired width using <BR>\n as the default line break.
Default wrap width is 80 columns.
Categories : Strings, HTML and PHP, PHP | |
|
|
|