|
Posted by Tyno Gendo on 04/08/07 23:24
Shooter wrote:
> I'm having trouble setting up a while loop, and I think I'm creating
> overlapping brackets. I'm trying to set up a script to check for up to 3
> images to display on a profile page, then put a notice at the bottom. My
> initial efforts either get a blank page or the notice appearing a few
> hundred times. Below is my original (working) script to display a single
> image. After that is my attempts at adding a while loop. Is there a better
> way of doing this??
>
> Thanks,
> Wm
>
>
> Original/working version:
>
> //start imagename function
> $imagename = "$lastname$firstname";
> $imagename = str_replace(" ", "","$imagename");
> //end imagename function
> //$filename = '../images/$imagename.jpg';
> $image_info =
> @getimagesize("http://www.mydomain.org/images/$imagename.jpg");
> $type=$image_info[2];
> if ($type == 0) {
> // file_exists(realpath($filename)); {
> print " ";
> } else {
> print "<IMG SRC=\"../images/$imagename.jpg\"><BR>";
> print "<FONT color=\"#000000\" face=\"Arial, Helvetica, sans-serif\"
> size=\"1\">
> © $firstname $lastname. All Rights Reserved.</FONT>";
> }
>
>
>
>
> Trying to add a loop:
>
> //start imagename function
> //begin new code
> $imagenum=1;
> while ($imagenum<4) {
> //end new code
> $imagename = "$lastname$firstname$imagenum";
> $imagename = str_replace(" ", "","$imagename");
> //end imagename function
> //$filename = '../images/$imagename.jpg';
> $image_info =
> @getimagesize("http://www.mydomain.org/images/$imagename.jpg");
> $type=$image_info[2];
> if ($type == 0) {
> // file_exists(realpath($filename)); {
> print " ";
> } else {
> print "<IMG SRC=\"../images/$imagename.jpg\"><BR>";
> $imagenum = $imagenum++;
> } // end while loop
> print "<FONT color=\"#000000\" face=\"Arial, Helvetica, sans-serif\"
> size=\"1\">
> © $firstname $lastname. All Rights Reserved.</FONT>";
> }
>
>
>
At least one of your problems here is:
$imagenum = $imagenum++;
This should simply be:
$imagenum++;
Or
$imagenum += 1;
In your $imagenum=$imagenum++ $imagenum will always end up as '1' due to
operator precedence.
You could also replace the while with a for loop:
for ( $imagenum=0; $imagenum<4; $imagenum++ {
//code here
}
Navigation:
[Reply to this message]
|