vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   Update $post['rank'] (https://vborg.vbsupport.ru/showthread.php?t=297020)

DaveNGU 04-09-2013 12:16 PM

Update $post['rank']
 
How could I update a user's $post['rank'] with a file which is outside the /forums directory?

Basically we'd like to have a page where users can change their $post['rank'], but as I said the file is going to be outside of the /forums directory and not in plugins.

Thanks.

kh99 04-09-2013 12:49 PM

You could update the user's rank field in the usertextfield table, but the rank gets recalculated whenever any user data is updated, so it's not meant to be set to an aribitrary value.

DaveNGU 04-10-2013 08:53 AM

Quote:

Originally Posted by kh99 (Post 2415300)
You could update the user's rank field in the usertextfield table, but the rank gets recalculated whenever any user data is updated, so it's not meant to be set to an aribitrary value.

How would I do this? :p

--------------- Added [DATE]1365602699[/DATE] at [TIME]1365602699[/TIME] ---------------

Quote:

Originally Posted by kh99 (Post 2415300)
You could update the user's rank field in the usertextfield table, but the rank gets recalculated whenever any user data is updated, so it's not meant to be set to an aribitrary value.

Code:

$ranks =  $vbulletin->db->query_first("
                        SELECT rank
                        FROM ".$schema.".".$db_prefix."usertextfield
                        WHERE username = 'Jake'
                        ");

I've put the username in there as a test.. but this is giving me: MySQL Error : Unknown column 'username' in 'where clause'

Is their username not stored in this table?

kh99 04-10-2013 07:47 PM

You'd have to connect to the database. You can write a script that chdir()s to the forum directory then includes global.php, then you can use $vbulletin->db, or you could use the php mysql functions to go directly to the database (but you need the connection info from config.php).

Quote:

Originally Posted by DaveNGU (Post 2415481)
Code:

$ranks =  $vbulletin->db->query_first("
                        SELECT rank
                        FROM ".$schema.".".$db_prefix."usertextfield
                        WHERE username = 'Jake'
                        ");

I've put the username in there as a test.. but this is giving me: MySQL Error : Unknown column 'username' in 'where clause'

Is their username not stored in this table?

It's not, only the userid is there. But if you only have the username you could do this:

Code:

$ranks =  $vbulletin->db->query_first("
                        SELECT rank
                        FROM ".$schema.".".$db_prefix."usertextfield AS usertextfield
                        LEFT JOIN ".$schema.".".$db_prefix."user AS user ON (user.userid = usertextfield.userid)
                        WHERE username = 'Jake'
                        ");


DaveNGU 04-11-2013 09:44 AM

Quote:

Originally Posted by kh99 (Post 2415594)
You'd have to connect to the database. You can write a script that chdir()s to the forum directory then includes global.php, then you can use $vbulletin->db, or you could use the php mysql functions to go directly to the database (but you need the connection info from config.php).



It's not, only the userid is there. But if you only have the username you could do this:

Code:

$ranks =  $vbulletin->db->query_first("
                        SELECT rank
                        FROM ".$schema.".".$db_prefix."usertextfield AS usertextfield
                        LEFT JOIN ".$schema.".".$db_prefix."user AS user ON (user.userid = usertextfield.userid)
                        WHERE username = 'Jake'
                        ");


Got you. I've managed to update it as well, so this seems to be working fine :D.

Will report back if need be, thanks for your help.


All times are GMT. The time now is 05:41 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01105 seconds
  • Memory Usage 1,730KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (4)bbcode_code_printable
  • (4)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (5)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete