Re: a little trickery

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sunday, September 09, 2012 03:02:17 PM Stuart Dallas wrote:
> On 9 Sep 2012, at 04:19, David McGlone <david@xxxxxxxxxxxxx> wrote:
> > On Saturday, September 08, 2012 03:49:27 PM you wrote:
> >> On 8 Sep 2012, at 15:35, David McGlone <david@xxxxxxxxxxxxx> wrote:
> >>> I have a function that reads a directory and gets all the file names of
> >>> images, and I am wondering if it's possible to concatinate this function
> >>> withint an image tag. Here's an example I tried.
> >>> 
> >>> function pictures() {
> >>> 
> >>>   $dir = 'images/property_pics/';
> >>>   $file = array();
> >>>   
> >>>     if(is_dir($dir)){
> >>> 	
> >>> 	if($open = opendir($dir)){
> >>> 	
> >>> 	  while (($file = readdir($open)) !== false && $file !== ".") {
> >>> 	
> >>> 	$names = substr($file, 9, 20);
> >>> 	echo $names;
> >>> 	
> >>> 	}
> >>> 	
> >>> 	}
> >>> 	
> >>>     closedir($handle);
> >>>   
> >>>   }
> >>> 
> >>> }
> >>> 
> >>> $rs = $pager->paginate();
> >>> 
> >>> if(!$rs) die(mysql_error());
> >>> while($row = mysql_fetch_assoc($rs)) {
> >>> 
> >>>   echo "<div id='record'>";
> >>>   echo "<span>";
> >>>   echo <im src = "images/$row[$MSL_No]pictures();">
> >>> 
> >>> What I am trying to do is get the last part of an image name, because I
> >>> know the $MSL_No is always a 9 character name which matches the image
> >>> name in but in the database, the last bit of characters are not there so
> >>> I'm trying to take the last characters of the image name and concatinate
> >>> them to each image name..
> >>> 
> >>> Wow this is harder to explain that I thought. Here's an example
> >>> 
> >>> In the DB I have a row MSL_No and the contents is: 123456789
> >>> 
> >>> In my images folder I have an image named 123456789_R13_1.jpg
> >>> 
> >>> My goal: get the MSL_No out of the DB and concatenate anything after it
> > 
> > so
> > 
> >>> I would end up with the whole image name..
> >>> 
> >>> I hope this all made sense. :-/
> >> 
> >> Is there just one image in the folder that starts with the 9 digit
> >> number?
> >> In that case it's dead simple (untested code):
> >> 
> >> <?php
> >> 
> >>  function completeImageFilename($prefix)
> >>  {
> >>  
> >>    $matches = glob('images/property_pics/'.$prefix.'*');
> >>    return $matches[0];
> >>  
> >>  }
> >>  
> >>  echo '<img src="'.completeImageFilename($row['MSL_No']).'" />';
> >> 
> >> ?>
> >> 
> >> If you need to extract more than one image filename you should be able to
> >> modify that pretty easily.
> > 
> > YEOW! LOL I looked at this and I'm very stumped on 1 thing. How in the
> > world did you get $prefix to contain the image name without first
> > assigning it to $prefix? I understand the rest, but..... Holy smokes,
> > that's blown my mind. :-/

> I really can't tell whether you're being sarcastic, so I'll assume you're
> not.

Sorry about that. No sarcasm here. I was so taken aback on how different your 
code was.  I thought I was never going to understand the way you did it vs the 
way I tried. Sorry about that.
> 
> Read about function arguments: http://php.net/functions.arguments

Thanks. I'll go read it now. :-)

-- 
Regards
David M.

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux