Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 06-05-2006, 01:21 AM
sambah sambah is offline
 
Join Date: May 2006
Posts: 67
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Newbie Question

I've decided to make a fantasy football/sports mod for vb 3.5.4

I'm quite new to php and a complete novice with vb.

First stage went ok. Users can now register for the fantasy football league. Now I'm onto the main page.

What I'm trying to do with this code is tell users who havn't signed up for the league yet to go to the signup page, and users who have should proceed to the main page.

Code:
// ############################# START MAIN PAGE ###############################

// Check whether the user has registered for the game
if (!$vbulletin->GPC['do'])
{
	if ($db->query_first("SELECT * FROM footy_registration WHERE userid != " . $vbulletin->userinfo[userid] . ""))
	{
		standard_error(fetch_error('footy_youneedtoregister'));
	}
		else
	{
		eval('print_output("' . fetch_template('footy_main') . '");');
	}
}
This code in theory should check whether their userid from the vb userinfo table is present and matches their userid in the game registration table.

Unfortunately it doesn't work. Even if they have signed up it still displays the younneedtoregister message

Any ideas?

Sorry:

PHP Version: 5.1.4
SQL: 4.1.19
Reply With Quote
  #2  
Old 06-05-2006, 02:01 AM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Your query was a little off (in logic, anyway). You were checking if there are any results from the registration table where the userid isn't the current user. If there are any registrations, this is always true.

I changed it so it checks if there isn't (actually if there is, then adding a ! in front of the whole condition so its the opposite) any registrations for the given user. Also, you should quote array keys if they are strings, because if 'userid' is a defined constant, you will run into problems.
PHP Code:
// ############################# START MAIN PAGE ###############################

// Check whether the user has registered for the game
if (!$vbulletin->GPC['do'])
{
    if (!
$db->query_first("SELECT * FROM footy_registration WHERE userid = " $vbulletin->userinfo['userid'] . ""))
    {
        
standard_error(fetch_error('footy_youneedtoregister'));
    }
    else
    {
        eval(
'print_output("' fetch_template('footy_main') . '");');
    }

Reply With Quote
  #3  
Old 06-05-2006, 02:05 AM
sambah sambah is offline
 
Join Date: May 2006
Posts: 67
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Aha. Thankyou very much sir
Reply With Quote
  #4  
Old 06-05-2006, 02:06 AM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It might be easier (to understand at a simple glance) if you get rid of the ! in front of the $db->query_first(), then switch the standard error with the print_output.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:50 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.04171 seconds
  • Memory Usage 2,188KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_code
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (4)post_thanks_box
  • (4)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (4)post_thanks_postbit_info
  • (4)postbit
  • (4)postbit_onlinestatus
  • (4)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • 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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete