This code is for the pal boxes in Threads7 (beta1). It pull 5 pictures (default random) from the PhotoPost database and display them in pal box.
You need to set the database names according to your setup. The script switch the database to make selects from the PhotoPost db and then switch back to Threads database. You need set the cache time (I use 5 minutes) and always build off ind the Threads7 control panel.
This script works without a PhotoPost Threads7 integration. It just take the pictures from the db.
The original is from Omegatron/Chuck S. for Threads 6.5x
PHP Code
// This script should pull 5 random pictures from // PhotoPost and display it. // Please modify the two lines with the databse // connection to your settings. // // The base idea for this script comes from Chuck S. */
// Set it up to your path settings ! require_once("/home/..../ubbthreads/photopost.inc.php");
// Set this to your PhotoPost db prefix. Default is pp_ $pp_db_prefix = "pp_";
function pp_get_ext( $filename ) { return substr($filename, strrpos($filename,".")); }
if ( in_array(strtolower($ext), $mediatypes) ) $retval = 1;
return( $retval ); }
// // Featured Photos Code // Follow down to End Feature Photos Code //
// which type of images do you want to show $q_switch = "random";
switch ($q_switch) { case "most_view": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY c.views DESC"; break; case "lastest": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY date DESC"; break; case "random": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY RAND()"; break; } $result = mysql_query($query);
// One box for each feature $featured .= <<<PPPRINT <tr align="center"><td align="center" class="alt-1"> <a href="{$url_path}showphoto.php?photo={$pid}">$mthumb</a>
by {$puser} </td></tr>
PPPRINT;
$counted++; }
if ( $counted == 5 ) break; } mysql_free_result($result);
// change the dbname to your ubb7 database name // we need to switch back to Threads7 database mysql_select_db ("dbname")or die("Could not select database");
no, right now I run ubb6.5.5 with pp 5.31 and just pull the featured photos to ubb7beta1 for testing. This work without integration. I open a thread on PP support for the integration. It must be total rewritten. The database structure ist very different from ubb6.5 to ubb7. The ol PP integration can take nearly everything from the huge users table in ubb6.5 but in v7 this table is split in 5 tables. I start some tries but give up.
I compare some differents an Chuck say they need first a license for ubb7 to look in to it.
This box code works with every installed PhotoPost somewhere. The only thing you need is access to the photopost.inc.php The script connects to the Photopost database throught this file. Then select the photos and build the output. If this finished the script switch back the database connection to threads. Thats why you have to edit the both database connetions in this script matching your settings.
Its pretty simple. No integration is needet. I run Photopost with a threads V6.5 integration on my production V6.5.5 Threads board. I setup on a other webpage threads V7 for testing and pull from the PP the pictures, works very well.
Just test it - its easy and should work on your system too.
An other point is a threads V7 integration and the pppanel script hack. I look forward into this. The integration must done by PP, thats complex but I will take a closer look to the pppanel script. Maybe I bring this to work.
//* PHP CODE HERE */ // This script should pull 5 random pictures from // PhotoPost and display it. // Please modify the two lines with the databse // connection to your settings. // // The base idea for this script comes from Chuck S. */
// Set it up to your path settings ! require_once("/homepages/1/d118328893/htdocs/clubadventist/photopost/index.php");
// Set this to your PhotoPost db prefix. Default is pp_ $pp_db_prefix = "pp_";
function pp_get_ext( $filename ) { return substr($filename, strrpos($filename,".")); }
if ( in_array(strtolower($ext), $mediatypes) ) $retval = 1;
return( $retval ); }
// // Featured Photos Code // Follow down to End Feature Photos Code //
// which type of images do you want to show $q_switch = "random";
switch ($q_switch) { case "most_view": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY c.views DESC"; break; case "lastest": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY date DESC"; break; case "random": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY RAND()"; break; } $result = mysql_query($query);
if ( $counted == 5 ) break; } mysql_free_result($result);
// change the dbname to your ubb7 database name // we need to switch back to Threads7 database mysql_select_db ("db177660228")or die("Could not select database");
$body = <<$featured PPPRINT; /* BODY HERE */ $body = <<EOF;
I would have thought photopost.inc.php would have been in the /photopost/ folder.
there is a 'inc_photopost.php' in the photopost folder....
Hi Stan, do you have photopost.inc.php in your forum list? If I have the file with upload, list must be adapted only to your photopost. Then you can put the link to photopost.inc.php. I send photopost.inc.php as a photopost.txt file, am not able to do but I them uploads... Must change the ending .txt in .inc.php.
Allen.. I confim they aren't showing up on your site using I.E. here too.
I got Zarzal's code to work on my site (UBB.t V7.0.2 & PP V5.6.2) by removing the code at the bottom that asks for the ubb database:
Code
mysql_select_db ("dbname")or die("Could not select database");
So the end of my content island code looks like this:
Code
PPPRINT;
$counted++; }
if ( $counted == 5 ) break; } mysql_free_result($result);
/* DO NOT CHANGE THE LINE BELOW */
$body = <<<PPPRINT
$featured
PPPRINT;
EOF; /* DO NOT CHANGE THE LINE ABOVE */
Also note the spelling error in the script "lastest" should be "latest". In addition to the default "random", "latest" works, but "most_view" does not. I haven't played with it to determine why.
I also had to uploaded and modify the text file Zarzal posted earlier in the thread, and saved it in the PP directory as photopost.inc.php. This appears to be a file that was present in an earlier version of PP, but is not present in the latest download. inc-photopost.php appears to have much of the same code as Zaral's script.. but I was not able to figure out a way to make it work (with my very limited PHP skills).
And lastly, I set the cache to '3' on the content island to have it rebuild the random set of images every 3 minutes.
Anyway, the result is a pretty clean sidebar box which only shows the user name under each image. (your implementation has a link to the user's gallery, how many images they have and how many comments). Have a look on my site to see the result.
The only other buggy behavior I've found (and haven't yet figured it out) is the sidebar sometimes pulls random images from categories that only have copied images in them (admin copied to a feature category). In those cases, there is no thumbail in the category to pull.. so a red-X appears. Not sure if this is an issue with PP or the PAL script. You won't run into the problem unless you've set up some Admin/Mod only categories in PP (or other similar categories) that only have images that are copied into them from other categories. My "SS Exhibit" category is an example of this.
Here is everything I have in my custom portal box:
PHP Code
/* PHP CODE HERE, IF NECESSARY */ // This script should pull 5 random pictures from // PhotoPost and display it. // Please modify the two lines with the databse // connection to your settings. // // The base idea for this script comes from Chuck S. */
// Set it up to your path settings ! require_once("/home/mysite/public_html/bcforum/includes/photopost.inc.php");
// Set this to your PhotoPost db prefix. Default is pp_ $pp_db_prefix = "pp_";
function pp_get_ext( $filename ) { return substr($filename, strrpos($filename,".")); }
if ( in_array(strtolower($ext), $mediatypes) ) $retval = 1;
return( $retval ); }
// // Featured Photos Code // Follow down to End Feature Photos Code //
// which type of images do you want to show $q_switch = "random";
switch ($q_switch) { case "most_view": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY c.views DESC"; break; case "lastest": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY date DESC"; break; case "random": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY RAND()"; break; } $result = mysql_query($query);
// One box for each feature $featured .= <<<PPPRINT <tr align="center"><td align="center" class="alt-1"> <a href="{$url_path}showphoto.php?photo={$pid}">$mthumb</a>
by {$puser} </td></tr>
PPPRINT;
$counted++; }
if ( $counted == 5 ) break; } mysql_free_result($result);
// change the dbname to your ubb7 database name // we need to switch back to Threads7 database mysql_select_db ("MyDBNAME IS HERE")or die("Could not select database");
$body = <<<PPPRINT $featured PPPRINT;
/* DO NOT CHANGE THE LINE BELOW */ $body = <<<EOF
Body of the custom box here
EOF; /* DO NOT CHANGE THE LINE ABOVE */
When I try to save it, I get unxepected $END at line...blah blah (see previos post).
UPDATE - I managed to get rid of the Parse Error (I think it was an extra space after the EOF; but not the thing still does not pull in picture to my Portal. Zarzal - you mentioned over on UBBCENTRAL that you were runnning this with Threads 7.1 - is your photopost integrated with your threads or not? I did download the photopost.inc.php file you provided and point to it ini the script file, but th eprotal has nothing in it when I display it.
Can you post a link to the page throwing the error?
Hi Allen! Well, to be honest, I seem to have fixed that particular error (I think it was an extra space after the EOF;) Anyway, that's the good news. The bad news is, When I put that custom Pal on my portal, the box shows up with only the title header but nothing in it. Here is what I currently have in that Custom Pal Box:
PHP Code
/* PHP CODE HERE */ // This script should pull 5 random pictures from // PhotoPost and display it. // Please modify the two lines with the databse // connection to your settings. // // The base idea for this script comes from Chuck S. */
// Set it up to your path settings ! require_once("/home/mysite/public_html/forum/photopost/photopost.inc.php");
// Set this to your PhotoPost db prefix. Default is pp_ $pp_db_prefix = "pp_";
function pp_get_ext( $filename ) { return substr($filename, strrpos($filename,".")); }
if ( in_array(strtolower($ext), $mediatypes) ) $retval = 1;
return( $retval ); }
// // Featured Photos Code // Follow down to End Feature Photos Code //
// which type of images do you want to show $q_switch = "random";
switch ($q_switch) { case "most_view": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY c.views DESC"; break; case "lastest": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY date DESC"; break; case "random": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY RAND()"; break; } $result = mysql_query($query);
// One box for each feature $featured .= <<<PPPRINT <tr align="center"><td align="center" class="alt-1"> <a href="{$url_path}showphoto.php?photo={$pid}">$mthumb</a>
by {$puser} </td></tr>
PPPRINT;
$counted++; }
if ( $counted == 5 ) break; } mysql_free_result($result);
// change the dbname to your ubb7 database name // we need to switch back to Threads7 database mysql_select_db ("threadsv7")or die("Could not select database");
$body = <<<PPPRINT $featured PPPRINT; /* BODY HERE */ $body = <<<EOF EOF;
I'm using the photopost.inc.php file that Zarzal (I think) posted as a text file and edited to point to my photopost DB. I guess its working since I'm not getting an error that it can't connect to the DB.
I am not getting any error, but all I get when I place the pal on the Portals page is the header and the box itself is empty.
I'm running Threads 7.1(Beta 5) and Photopost 5.62 and its running in the "integrated" mode with my Threads.
Well, it *was* working on my site, now it's not. I think I overwrote my custom islands when I upgraded.
I'll have to figure it out, but basically from what I can see on your code you don't have anything displaying because you don't have anything between the:
There you go, from the first post here, your last 2 lines should look like these 3 lines:
$body = <<$featured PPPRINT;
That did it! Its working for me now! Except when I choose the "random" case it seems I have a lot of thumbnails missing, or well, thats minor - at least its working.
I've got PP "intergated" with 7.1 and I tried to copy and past the text from the first post and got nothing. I read the post with the photopost.inc.php txt file attach.
Ok I did it Allen's way with the feature2.php and got it to display. But the thumbnails are all black. If you click on them it opens the photopost window with the fullsize image.
Also, Allen, how did you make so only registered users could see the photos? I think I found this option in PP.
Last edited by Cuervo; 03/03/20077:18 AM. Reason: more info
Well I have it all working with the exception of the thumbnails showing up black inside uBBthreads. I see one other user had that issue, does anyone know a fix?
I have it working with 7.1 and PP 5.62 (integrated). I will try to provide as must information as possible. First, I am using Imagemagik instead of GD in my PP. I don't know if that makes any difference, but thought I'd mention it. Ok, here is exactly, in total, what I have in my Custom PAL (I've just changed some minor things for security reasons, but you will want to put your paths and database names in anyway):
PHP Code
/* PHP CODE HERE */ // This script should pull 5 random pictures from // PhotoPost and display it. // Please modify the two lines with the databse // connection to your settings. // // The base idea for this script comes from Chuck S. */
// Set it up to your path settings ! require_once("/home/mysite/public_html/forums/photopost/inc_photopost.php");
// Set this to your PhotoPost db prefix. Default is pp_ $pp_db_prefix = "pp_";
function pp_get_ext( $filename ) { return substr($filename, strrpos($filename,".")); }
if ( in_array(strtolower($ext), $mediatypes) ) $retval = 1;
return( $retval ); }
// // Featured Photos Code // Follow down to End Feature Photos Code //
// which type of images do you want to show $q_switch = "lastest";
switch ($q_switch) { case "most_view": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY c.views DESC"; break; case "lastest": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY date DESC"; break; case "random": $query = "SELECT p.id,p.user,p.userid,p.cat,p.title,p.bigimage,p.views FROM {$pp_db_prefix}photos p LEFT JOIN {$pp_db_prefix}categories c ON c.id=p.cat WHERE c.password = '' ORDER BY RAND()"; break; } $result = mysql_query($query);
// One box for each feature $featured .= <<<PPPRINT <tr align="center"><td align="center" class="alt-1"> <a href="{$url_path}/showphoto.php?photo={$pid}">$mthumb</a><br> by {$puser} </td></tr>
PPPRINT;
$counted++; }
if ( $counted == 5 ) break; } mysql_free_result($result);
// change the dbname to your ubb7 database name // we need to switch back to Threads7 database //MAKE SURE TO USE YOUR CORRECT THREADS 7.1 DB NAME! mysql_select_db ("threads")or die("Could not select database");
$body = <<<PPPRINT $featured PPPRINT;
Notice that I am pointing to inc_photopost.php in the "Require_Once" statement above. This is a file that now comes with PP 5.62.
Within the file inc_photopost.php you will want to uncomment the database lines near the top of the file like this:
PHP Code
$link = mysql_connect ("localhost", "usernam", "password") or die('I cannot connect to the database.'); mysql_select_db ("photopost")or die("Could not select photopost database");
Be sure to edit to reflect YOUR user name and password for the PP database. Also, make sure the "photopost" database name is what you are using in the mysql_select_db statement.
Not also, you can change this line:
// which type of images do you want to show $q_switch = "lastest"; (Yes, I know it is mispelled)
you can replace "lastest" with "random" or "most_view" depending on what category of images you want to pull from the PP database.
Well, I am using GD2 so I too am not sure if that matters. I did get it working finally.
I used Allen's post from page one. I would post my inc_features2.php but it has a copyright in it and I don't want to get in any trouble on this forum for posting it. But, if you follow Allen's post to the letter you will get it working. The is one small difference on my install. Since my PP is integrated with my ubbt I didn't have to set any of the parameters for my database. So I DIDN'T uncomment any lines of code.
My issue with the black thumbnails was fixed by adding a trailing / to the data path in my photopost config. This is located on the "edit integration" page of the admin section. The field is URL to your PhotoPost DATA directory and for me to get the thumbnails to work I had to edit the field to this
Glad you got it working. I'm not sure what the difference is in using the inc_features2 file versus the inc_photopost.php like I did, but mine works fine also.
The inc.features2.php is just photopost's current code for this mod, so I use it rather than trying to re-create the wheel
paths and url's are critical for either mod to get working, always right click on the thumbs to see where it's trying to pull the images from if your thumbnails aren't showing up.
Does the "features2.php" files just get placed in the includes dor of PP then you point to THAT instead of the inc_photopost.php like I'm doing? (and where do I get this features2.php file?)
The inc_features2.php is something Allen modded from the inc_features.php that comes with PP and is located in the /photopost dir.
I'm sure how yours or this one works, but it seems to work well. The only other thing I would like to see is the "more photos" link in at the bottom of the photos. It lets people do a refresh on the photos.
The inc.features2.php is just photopost's current code for this mod, so I use it rather than trying to re-create the wheel
paths and url's are critical for either mod to get working, always right click on the thumbs to see where it's trying to pull the images from if your thumbnails aren't showing up.
ALlen, I tried going it your way with the modified inc_features2.php file, using the directions you provided, but now I don't see any pictures at all. I'm not getting any errors either, so I'm pretty sure I'm connecting to the DB ok? The portal shows up ok, but no pictures (thumbs) are in it.
And can anyone suggest a way so that when you click on the thumbnail image it will open the larger one in its own window instead of loading over the forums?
Saw you PM and replied - I have exactly the same code in my portal as you (except the path to inc_features2.php is different of course) Plus I have the exact same code as you do in inc)features2.php file (and my PP is integrated with Threads 7.1 like yours is). Yet, when I do it that way, all I get is th ePortal Title and a small blank box with NO thumbs.
Strange, I can't think of anything else I did to get it working other then that bad path to my thumbnails. But, you had it working with the other methode so that should not be an issue for you.
Let me look at my stuff again. You are calling the $photopostfeature from inside the portal, yes? I'm sure you are, I just can't think of anything else.
Donate to UBBDev today to help aid in Operational, Server and Script Maintenance, and Development costs.
Please also see our parent organization VNC Web Services if you're in the need of a new UBB.threads Install or Upgrade, Site/Server Migrations, or Security and Coding Services.