Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
  #1  
Old 05-24-2007, 02:11 AM
ZomgStuff ZomgStuff is offline
 
Join Date: Feb 2007
Posts: 469
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Counting Bans Problem - Won't Show

Well I created my own page, /ban.php and I created a template for it.

The problem is, in the php file I have this
Code:
// Count the total bans
    $totalbans = $db->query_first_slave("
    SELECT COUNT(userid)
	FROM userban

    ");
That counts how many bans there have been in the past, not active, but total.

I've run the query in phpmyadmin and it works fine and returns 45.
The problem comes when I'm using my template, I use this
Code:
Total Bans: $totalbans
and it doesn't display a number. What am I doing wrong?

Thanks in advance.
Reply With Quote
  #2  
Old 05-24-2007, 04:46 AM
Michael Morris's Avatar
Michael Morris Michael Morris is offline
 
Join Date: Nov 2003
Location: Knoxville TN
Posts: 774
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by ZomgStuff View Post
Well I created my own page, /ban.php and I created a template for it.

The problem is, in the php file I have this
Code:
// Count the total bans
    $totalbans = $db->query_first_slave("
    SELECT COUNT(userid)
	FROM userban

    ");
That counts how many bans there have been in the past, not active, but total.

I've run the query in phpmyadmin and it works fine and returns 45.
The problem comes when I'm using my template, I use this
Code:
Total Bans: $totalbans
and it doesn't display a number. What am I doing wrong?

Thanks in advance.
The code should be
Code:
// Count the total bans
    $totalbans = $db->query_first_slave("
    SELECT COUNT(userid) AS bans
	FROM userban

    ");
The template should reference $totalbans[bans]

The method query_first_slave returns the first row as an array - even if there is only one element.
Reply With Quote
  #3  
Old 05-24-2007, 11:04 AM
ZomgStuff ZomgStuff is offline
 
Join Date: Feb 2007
Posts: 469
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ah, didn't work ;-( I tried like 50 different codes last night. Well now I'm glad the code is right but tere is something wrong. It doesn't display the number.

My msn is twolvesfan624@msn.com and aim is twolvesfan369, I think my problem lies with something else. Treat be as a noob to this. I think I'm forgetting a vital step.

By the way I used this tutorial to create a new page.
https://vborg.vbsupport.ru/showthrea...+your+own+page


Edit, so here is my php code
Code:
<?php

// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('NO_REGISTER_GLOBALS', 1);
define('THIS_SCRIPT', 'ban'); // change this depending on your filename

// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array(

);

// get special data templates from the datastore
$specialtemplates = array(
    
);

// pre-cache templates used by all actions
$globaltemplates = array(
    'BAN',
);

// pre-cache templates used by specific actions
$actiontemplates = array(

);

	

 

// ######################### REQUIRE BACK-END ############################
require_once('./global.php');


// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################

$navbits = array();
$navbits[$parent] = 'Ban Page';

$navbits = construct_navbits($navbits);
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('BAN') . '");');

// Count the total bans
    $totalbans = $db->query_first_slave("
    SELECT COUNT(userid) AS bans
	FROM userban

    ");

 

?>
and here is my template
Code:
$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
<title>$vboptions[bbtitle]</title>
$headinclude
</head>
<body>
$header

$navbar

<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<tr>
	<td class="tcat"><center><h1>BAN LIST</h1></center></td>
</tr>
<tr>
	<td class="alt1">
<center>$vboptions[bbtitle] Ban Statistics</center>
Total Bans: $totalbans[bans]
</td>
</tr>
</table>

$footer
</body>

</html>
Reply With Quote
  #4  
Old 05-24-2007, 12:02 PM
Michael Morris's Avatar
Michael Morris Michael Morris is offline
 
Join Date: Nov 2003
Location: Knoxville TN
Posts: 774
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by ZomgStuff View Post
Ah, didn't work ;-( I tried like 50 different codes last night. Well now I'm glad the code is right but tere is something wrong. It doesn't display the number.

My msn is twolvesfan624@msn.com and aim is twolvesfan369, I think my problem lies with something else. Treat be as a noob to this. I think I'm forgetting a vital step.

By the way I used this tutorial to create a new page.
https://vborg.vbsupport.ru/showthrea...+your+own+page


Edit, so here is my php code
Code:
<?php

// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('NO_REGISTER_GLOBALS', 1);
define('THIS_SCRIPT', 'ban'); // change this depending on your filename

// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array(

);

// get special data templates from the datastore
$specialtemplates = array(
    
);

// pre-cache templates used by all actions
$globaltemplates = array(
    'BAN',
);

// pre-cache templates used by specific actions
$actiontemplates = array(

);

	

 

// ######################### REQUIRE BACK-END ############################
require_once('./global.php');


// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################

$navbits = array();
$navbits[$parent] = 'Ban Page';

$navbits = construct_navbits($navbits);
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('BAN') . '");');

// Count the total bans
    $totalbans = $db->query_first_slave("
    SELECT COUNT(userid) AS bans
	FROM userban

    ");

 

?>
and here is my template
Code:
$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
<title>$vboptions[bbtitle]</title>
$headinclude
</head>
<body>
$header

$navbar

<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<tr>
	<td class="tcat"><center><h1>BAN LIST</h1></center></td>
</tr>
<tr>
	<td class="alt1">
<center>$vboptions[bbtitle] Ban Statistics</center>
Total Bans: $totalbans[bans]
</td>
</tr>
</table>

$footer
</body>

</html>
You must run the query BEFORE you eval the template. These statements:

Code:
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('BAN') . '");');
Should be the last two in your code. Whenever print_output is called it issues an exit - you never come out of that eval statement and never reach the query.
Reply With Quote
  #5  
Old 05-24-2007, 07:16 PM
ZomgStuff ZomgStuff is offline
 
Join Date: Feb 2007
Posts: 469
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Michael Morris View Post
You must run the query BEFORE you eval the template. These statements:

Code:
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('BAN') . '");');
Should be the last two in your code. Whenever print_output is called it issues an exit - you never come out of that eval statement and never reach the query.
I love you.

Edit:
How can I display an array? IE: Display all the ban id's and say the reason.
Reply With Quote
  #6  
Old 05-25-2007, 05:56 AM
sonichero sonichero is offline
 
Join Date: Jan 2007
Posts: 163
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

for anyone who doesnt know, this is what he wants to do

http://forums.facepunchstudios.com/showbans.php?
Reply With Quote
Reply

Thread Tools
Display Modes

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 07:31 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.07301 seconds
  • Memory Usage 2,222KB
  • 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
  • (11)bbcode_code
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (6)post_thanks_box
  • (6)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (6)post_thanks_postbit_info
  • (6)postbit
  • (6)postbit_onlinestatus
  • (6)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