[tip] Use PAPI if you're just starting out with phpinclude
by
20 Dec 2002
Note: this is not meant to be a plug for my mod. PAPI (pronounced "pappy") is a mod I released: http://www.vbulletintemplates.com/mods/showthread.php?s=&threadid=2361 . Escentially it is a phpinclude swiss army knife although the name means phpinclude API. It is a set of wrapper functions designed to drastically simplify coding mods for use in the phpinclude template. Going back a step: the phpinclude template is a template that is special in the sense that it can contain raw PHP code. It is the only template that can; the others can only contain PHP variables. Standard vB pages are constructed in this order: 1. Execute the .php file 2. Execute the contents of phpinclude 3. Compile the final HTML to display Therefore phpinclude can only access variables that are within a global scope and only gets executed when a template is generated. Remember though that phpinclude is executed in any page, so you have to start accounting for that. Also you have to use vB's database reference methods to access the MySQL database. This is where PAPI starts to become useful. Say you want to run code that only executes on forumhome (index.php). Normally you'd put this in phpinclude: PHP Code:
if (strpos($_SERVER['PHP_SELF'], "index.php") != false)
With PAPI, this is simplified to: PHP Code:
if (thisis("index"))
PHP Code:
if (thisis("index.php"))
These may seem trivial, but it goes so far to implement mysqlmultiplequeries which can execute several queries in succession with one line of code. So PHP Code:
$DB_site->query("DELETE FROM session");
PHP Code:
mysqlmultiplequeries("DELETE FROM session; DELETE FROM word; INSERT INTO word (wordid) VALUES (1)");
There are far more features than this, however, so check out PAPI's thread for a near-full list, or at least the features from 1.0.0. Enjoy. |
Similar Mods
[release] PAPI, a phpinclude API | vBulletin 2.x Template Modifications |