danjapro Posted April 16, 2012 Share Posted April 16, 2012 I am trying to return all the photos in the database that has the albumid associated with that table info. I can echo the $album->id (albumid) no problem, but my query it think is somewhat off. Please anyone. <div id="photo-items" class="photo-list-item"> <?php echo $album->id.'<br>'; // fetch album photos and ids $database =& JFactory::getDBO(); $query = "SELECT * FROM jos_photos where albumid = ".$album->id." ORDER BY ASC"; $photos = mysql_query($query); //This returns and array of photos, but then needs to display all the photos in loop below, but it not retuning none, even if there is 100 photos in table and in the folder directory if($photos) { for( $i=0; $i<count($photos); $i++ ){ $row =& $photos[$i]; ?> <div class="photo-item" id="photo-<?php echo $i;?>" title="<?php echo $this->escape($row->caption);?>"> <a href="<?php echo $row->link;?>"><img class="" src="<?php echo $row->getThumbURI();?>" alt="<?php echo $this->escape($row->caption);?>" id="photoid-<?php echo $row->id;?>" /></a> <?php if( $isOwner ) { ?> <div class="photo-action"> <a href="javascript:void(0);('<?php echo $row->id;?>');" class="remove"><?php echo JText::_('CC REMOVE');?></a> </div> <?php } ?> </div> <?php } } else { ?> <div class="empty-list"><?php echo JText::_('CC NO PHOTOS UPLOADED YET');?> <button class="button button-upload" href="javascript: void(0);&userid=88" id="upload-photos-button">Start Uploading</button></div> <?php } ?> </div> Quote Link to comment https://forums.phpfreaks.com/topic/261020-need-help-getting-photos-in-array-and-display-in-loop-returning-none-now/ Share on other sites More sharing options...
requinix Posted April 16, 2012 Share Posted April 16, 2012 I just love copy/pasting the same answer across forums. //This returns and array of photos No, it doesn't. $photos is a resource that you use to get rows of data via functions like mysql_fetch_array. Quote Link to comment https://forums.phpfreaks.com/topic/261020-need-help-getting-photos-in-array-and-display-in-loop-returning-none-now/#findComment-1337734 Share on other sites More sharing options...
danjapro Posted April 16, 2012 Author Share Posted April 16, 2012 Thanks to all here, I solved this issue. I re-wrote the query to fiot joomla standard API. It worked fine. $db =& JFactory::getDBO(); /** * Cast album ID to int to prevent possible SQL injection even though data looks relatively safe. You * could also use mysql_real_escape_string but casting to an int seems simpiler and essentially provides * the same result in regards to avoiding SQL injection. */ $query = "SELECT * FROM jos_photos where albumid = ".$album->id." ORDER BY id ASC"; /** * The return value of mysql_query when selecting data is either false (failed query) or result resource (success) */ //echo $query; //$result = mysql_query($query); $db->setQuery($query); $results = $db->loadObjectList(); //This returns and array of photos, but then needs to display all the photos in loop below, //but it not retuning none, even if there is 100 photos in table and in the folder directory if(count($results)) { foreach($results as $row) { //echo $row->id; //echo $row->thumbnail; Quote Link to comment https://forums.phpfreaks.com/topic/261020-need-help-getting-photos-in-array-and-display-in-loop-returning-none-now/#findComment-1337858 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.