View Single Post
  #3556  
Old 04-24-2005, 06:31 PM
YLP1 YLP1 is offline
 
Join Date: Aug 2004
Posts: 417
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by rjordan
v3arcade deleted user avatar fix(?)

After you delete a user, I have found that if you (or more importantly, a search spider) tries to access the stats link for that deleted user, you likely will get something like this:

Code:
Database error in vBulletin 3.0.7:
 
Invalid SQL: 
SELECT user.avatarid, user.avatarrevision, avatarpath, NOT ISNULL(avatardata) AS hascustom, customavatar.dateline
FROM user AS user
LEFT JOIN avatar AS avatar ON avatar.avatarid = user.avatarid
LEFT JOIN customavatar AS customavatar ON customavatar.userid = user.userid
WHERE user.userid =
mysql error: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 5
 
mysql error number: 1064
There does not seem to be a check built-in to see if a user is actually a valid user. I have hopefully found a fix for this with the following:

Find:
PHP Code:
 $activitycount $DB_site->query("
         SELECT gamesessions.*, games.title FROM " 
TABLE_PREFIX "gamesessions AS gamesessions
         LEFT JOIN " 
TABLE_PREFIX "games AS games ON gamesessions.gamename = games.shortname
         WHERE userid=
$userid AND valid=1 AND $sessionclause GROUP BY sessionid ORDER BY finish DESC"); 
and above this add:
PHP Code:
 if ($user['username']=="") {
$idname $vbphrase['user'];
eval(
print_standard_error('error_invalidid'));

I suspect that the scores for the deleted user might still be there after the user is deleted. If this is correct and vBulletin allows someone else to get this user ID, they might by default get all of the high scores for the games by the previous ID owner. Looking into that.

EDIT: It looks like vB does not recycle user IDs. This SHOULD work to eliminate the error.
I applied the fix for this error but this is the error my arcade.php returns:

Code:
PHP Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in 
myISP\LPSForum\arcade.php on line 1664
I need this fix because this is the error that my members are getting:


This one:

Code:
Invalid SQL: 
SELECT user.avatarid, user.avatarrevision, avatarpath, NOT ISNULL(avatardata) AS hascustom, customavatar.dateline
FROM vb3_user AS user
LEFT JOIN vb3_avatar AS avatar ON avatar.avatarid = user.avatarid
LEFT JOIN vb3_customavatar AS customavatar ON customavatar.userid = user.userid
WHERE user.userid =

and This one:

Code:
Invalid SQL: 
SELECT gamesessions.*,user.username FROM vb3_gamesessions AS gamesessions
LEFT JOIN vb3_user AS user ON gamesessions.userid = user.userid
WHERE vb3_gamesessions.valid=1 AND gamesessions.sessiontype IN (1,2) ORDER BY gamesessions.finish DESC LIMIT 0,1

mysql error: Unknown table 'vb3_gamesessions' in where clause

mysql error number: 1109
I am fairly new to PHP and VB and am quite lost on how to fix these two errors.

Any help is greatly appreicated.
Robin
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01857 seconds
  • Memory Usage 1,791KB
  • 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
  • (4)bbcode_code
  • (2)bbcode_php
  • (1)bbcode_quote
  • (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