Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions

Reply
 
Thread Tools Display Modes
  #11  
Old 07-14-2004, 12:57 AM
gfxhavenowner gfxhavenowner is offline
 
Join Date: Jul 2004
Posts: 82
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the help. I have no clue what I'm doing wrong though lol.

Edit : decided to give up on it. Spent 3 days reading through the Reference Manuals for both MySQL and PHP and still get these errors.
Reply With Quote
  #12  
Old 07-14-2004, 01:29 AM
gfxhavenowner gfxhavenowner is offline
 
Join Date: Jul 2004
Posts: 82
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, this is really pissing me off. Here's my code.

Code:
<?php

// ######################### ERROR REPORTING #############################
error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('NO_REGISTER_GLOBALS', 1);
define('GET_EDIT_TEMPLATES', true);
define('THIS_SCRIPT', 'topxadmin');

require_once('./global.php');
require_once('./includes/functions_misc.php');

// ###################### Edit Settings ########################
if ($_GET['act'] == "update")
{
print_cp_header("Top X Control Panel");
$excludedforums=$DB_site->query_first("SELECT excludedforums FROM topx_admin WHERE topx_adminid = '1'");

print_form_header('topxadmin', 'do_update_topxsetting');
print_table_header("Top X Settings");
print_input_row("Forums to exclude", 'exclude_forums',$excludedforums['exclude_forums']);
print_submit_row("Update Top X Settings", 0);
}

if ($_POST['do'] == "do_update_topxsetting")
{
print_cp_header("Top X Control");

$DB_site->query("UPDATE topx_admin SET excludedforums='{$_POST['exclude_forums']}' WHERE topx_adminid = '1'");

define('CP_REDIRECT', 'topxadmin.php?act=update');
print_stop_message('excluded_forums_updated');

}


?>
Now, everything looks right, I don't see any problems, but that might just be me. Please, some one point out a problem and WHY it's wrong, not just how to fix it.

Edit : feel free to AIM me at thumbsup2mrcoffe to help me, or MSN at thumbsup@gfxhaven.com
Reply With Quote
  #13  
Old 07-14-2004, 06:54 AM
Andreas's Avatar
Andreas Andreas is offline
 
Join Date: Jan 2004
Location: Germany
Posts: 6,863
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

First of all, you should specify a default action:

PHP Code:
if (!$_REQUEST['do']) {
  
$_REQUEST['do'] = 'update';

Furtheremore, vB3 (this is for Vb3, right?) does always use do= for actions, so you should also use this:

PHP Code:
if ($_REQUEST['do'] == "update")

Then, if this hack is not just for yourself but for release you should keep in mind ppl using table prefixes:
PHP Code:
$excludedforums=$DB_site->query_first("SELECT excludedforums FROM" TABLE_PREFIX "topx_admin WHERE topx_adminid = '1'"); 
You must also use the same column name as in your table when you use print_input_row:

PHP Code:
print_input_row("Forums to exclude"'exclude_forums'$excludedforums['excludedforums']); 

As already stated above, you must always quote strings from a form or URL, as otherwise this will be a high security risk:

PHP Code:
$DB_site->query("UPDATE " TABLE_PREFIX "topx_admin SET excludedforums='" addslashes($_POST['exclude_forums']) . "' WHERE topx_adminid = '1'"); 
PHP Code:
define('CP_REDIRECT''topxadmin.php?do=update'); 
Once again, you should use do= here.

As a last thing, your script is missing print_cp_footer();

Here is the whole script (topxadmin.php in admincp directory):
PHP Code:
<?php

// ######################### ERROR REPORTING #############################
error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('NO_REGISTER_GLOBALS'1);
define('GET_EDIT_TEMPLATES'true);
define('THIS_SCRIPT''topxadmin');

require_once(
'./global.php');
require_once(
'./includes/functions_misc.php');

print_cp_header('Top X Admin');

if (!
$_REQUEST['do']) {
  
$_REQUEST['do'] = 'update';
}

// ###################### Edit Settings ########################
if ($_REQUEST['do'] == "update")
{
  
$excludedforums $DB_site->query_first("SELECT excludedforums FROM " TABLE_PREFIX "topx_admin WHERE topx_adminid = '1'");

  
print_form_header('topxadmin''do_update_topxsetting');
  
print_table_header("Top X Settings");
  
print_input_row("Forums to exclude"'exclude_forums'$excludedforums['excludedforums']);
  
print_submit_row("Update Top X Settings"0);
}

if (
$_POST['do'] == "do_update_topxsetting")
{
  
$DB_site->query("UPDATE " TABLE_PREFIX "topx_admin SET excludedforums='" addslashes($_POST['exclude_forums']) . "' WHERE topx_adminid = '1'");

  
define('CP_REDIRECT''topxadmin.php?do=update');
  
print_stop_message('excluded_forums_updated');
}

print_cp_footer();

?>
This does work for me, given your table looks like that:
[sql]
CREATE TABLE `topx_admin` (
`topx_adminid` int(10) unsigned NOT NULL auto_increment,
`excludedforums` varchar(255) NOT NULL default '',
PRIMARY KEY (`topx_adminid`)
) TYPE=MyISAM AUTO_INCREMENT;
[/sql]
Reply With Quote
  #14  
Old 07-14-2004, 12:12 PM
gfxhavenowner gfxhavenowner is offline
 
Join Date: Jul 2004
Posts: 82
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I can't get my table to work with the MyISAM AUTO_INCREMENT, and I get this error still lol.

Code:
Database error in vBulletin 3.0.3:

Invalid SQL: SELECT excludedforums FROMtopx_admin WHERE topx_adminid = '1'
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 'WHERE topx_adminid = '1'' at line 1

mysql error number: 1064
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 11:16 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.03526 seconds
  • Memory Usage 2,210KB
  • Queries Executed 13 (?)
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
  • (2)bbcode_code
  • (7)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (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_postinfo_query
  • fetch_postinfo
  • 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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete