|
|
|
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 | | | phpFormGenerator for Dynamic Form Generation from MySQL Categories : PHP, PHP Classes, MySQL, Databases, HTML and PHP | | | Form Security - Match A Value For Success Categories : PHP, Authentication, HTML and PHP, Sessions, Security | |
| | Functions for loading images into a MySQL database and displaying them. Categories : Graphics, HTML and PHP, MySQL, PHP, Databases | | | Sql Builder Categories : PHP, HTML and PHP, Databases, General SQL, Form Processing | | | A simple class with some HTML output functions that would come in handy for consistent page layout etc. Categories : PHP, PHP Classes, HTML and PHP, HTML, Navigation | | | Simple script to passing persistent and growing array between recalls of one page (manipulate little stack). Categories : Arrays, Global Variables, PHP, HTML and PHP, Variables | | | Tag content retrieval from websites with preg_match Categories : PHP, Regexps, Arrays, HTML and PHP | | | Display Slashdot headers on your own site Categories : HTML and PHP, HTML, PHP | | | Website colour changer Categories : PHP, HTML and PHP, Date Time | | | Dynamically generated pop-ups (Select items) Categories : PHP, HTML and PHP, MySQL, Databases | | | Select with current month Categories : PHP, HTML and PHP, Date Time, Arrays | | | class formHTML build your HTML Forms from PHP Categories : PHP, PHP Classes, HTML and PHP, HTML | | | A quick way set data from a form to a function or other places where you can lose scope. Categories : PHP, HTML and PHP, Variables | |
|
|