View Single Post
  #1  
Old 07-02-2006, 04:03 PM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Do you want vbJournal working in PHP 5?

Okay, from what I've seen, there are two major bugs with vbJournal and PHP 5.
  • Parse error: parse error, unexpected T_PRIVATE, expecting ']' in (place) in (the file) evaluated code in (many templates).
This is actually very easy to fix! This is yet another reason to QUOTE ARRAY KEYS IN CONDITIONS! Though template conditions are written in double quotes, they aren't parsed that way. They are parsed using the ternary operator ( ? : )

The template
Code:
<strong><if condition="$bbuserinfo['posts'] > 50">Hey Man!<else />Hey Noob!</if></strong>
is executed in the template like so:
PHP Code:
$var "<strong>" . (($bbuserinfo['posts'] > 50) ? "Hey Man!" "Hey Noob!") . "</strong>"
Writing it without the quotes around 'posts' is usually okay (well bad!) but no errors show up, though an E_NOTICE Is issued. If the quotes aren't there, PHP will use the constant 'posts' first, but if it doesn't exist, then the notice is issued, and it uses the string instead. vBulletin was made to hide these notices. However, in PHP 5, with the new OOP functionality, there was a new keyword: "private".

So now, instead of just sending out a notice (which is hidden), it is actually a fatal error, becuase that private keyword shouldn't be in that template condition.

So the fix? Whenever you see this error, just find the line in question (by journal.php) and see which template is evalulated. Then, go to that template, and find the line which is causing the error. You should see the condition like in this post, just fix it by surrounding 'private' in quotes.
  • Blank screen
I've had no spare time to look at this. Hopefully somebody else can figure it out! Just thinking about it now... do the users who get blank screens have error reporting disabled? It could just be the same problem!!

There really is no excuse for something as popular as vbJournal to not support PHP 5; these are bugs... not "incompatibilities"...
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.02195 seconds
  • Memory Usage 1,769KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code
  • (1)bbcode_php
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete