dai.hop Posted September 15, 2007 Share Posted September 15, 2007 Hello all, Everytime I call this function the $counter variable goes back to zero. I would like to be able to call it three times and have the counter not reset back to zero. Here is my code: function create_items($orientation) { if (isset($counter)) { } else { $counter = 0; } # specify directory to be processed $path = $_ENV['DOCUMENT_ROOT'] . '../../../images/ebay/canvas_xpress/products/'; # open the directory and save results $directory = opendir($path); # table start echo '<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#EDEDED">'; # output rows while ($file = readdir($directory)) { # exclude the first two file entries if ($file == '.' || $file == '..') { } else { # acquire and output the thumbnail file $parts = explode("-", $file); $filename = $parts[0]; $thumbnail = $parts[1]; if ($thumbnail == 'thumbnail.jpg') { # acquire image size and set list($width, $height) = getimagesize($path . $file); # determine image dimensions and set display variables accordingly switch ($orientation) { case 'landscape': if ($height < $width) { begin_ouput('width="45" height="30"', $counter, $filename, $path, $file); $counter = $counter + 1; } break; case 'portrait': if ($height > $width) { begin_ouput('width="20" height="30"', $counter, $filename, $path, $file); $counter = $counter + 1; } break; case 'square': if ($height == $width) { begin_ouput('width="30" height="30"', $counter, $filename, $path, $file); $counter = $counter + 1; } break; } } } } # table end echo '</table>'; } function begin_ouput($attributes, $counter, $filename, $path, $file) { # $filename_shortened = strlen($filename) > 25 ? substr($filename, 0, 25) . '...' : $filename; # begin output echo '<tr class="table_row_hover" onclick="document.form.image_select[' . $counter . '].checked = true;"><td>' . '<input id="image_select" name="image_select" type="radio" value="' . $filename . '" />' . '</td><td>' . '<a href="' . $path . $filename . '-closeup.jpg' . '" target="_blank"><img src="' . $path . $file . '" ' . $attributes . ' hspace="5" vspace="8" border="0" class="border_grey_light" alt="Click for larger version"></img></a>' . '</td><td>' . $filename_shortened . '</td></tr>'; } I'm sure theres a way to beat this but I just can't seem to come up with the answer! Thanks for looking! dai.hop Link to comment https://forums.phpfreaks.com/topic/69492-solved-maintaining-a-counter-variable/ Share on other sites More sharing options...
rarebit Posted September 15, 2007 Share Posted September 15, 2007 global $counter Put it in the function... Link to comment https://forums.phpfreaks.com/topic/69492-solved-maintaining-a-counter-variable/#findComment-349176 Share on other sites More sharing options...
dai.hop Posted September 15, 2007 Author Share Posted September 15, 2007 Spot on! I love a short answer! Link to comment https://forums.phpfreaks.com/topic/69492-solved-maintaining-a-counter-variable/#findComment-349249 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.