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 04-23-2005, 06:08 AM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Proper use of continue;

Why would the below display a blank page when using continue;?
I am trying to tell it to do nothing if it's a member, go ahead and open the script

Quote:
<?php
chdir('/var/www/forums');
define('NO_REGISTER_GLOBALS', 1);
$phrasegroups = array();
$actiontemplates = array('lostpw' => array('lostpw'));
require_once('./global.php');
require_once('./includes/functions_login.php');
if ($bbuserinfo['userid'])
{
continue;
}
else
{
print_no_permission();
}
?>
Reply With Quote
  #2  
Old 04-23-2005, 06:12 AM
Jolten Jolten is offline
 
Join Date: Mar 2004
Posts: 749
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

PHP Code:
if (!$bbuserinfo['userid'])
{
print_no_permission();

You don't need continue. In addition continue is for loop statements not if statement.

Quote:
Originally Posted by php.net
continue is used within looping structures to skip the rest of the current loop iteration and continue execution at the beginning of the next iteration.
Reply With Quote
  #3  
Old 04-23-2005, 06:25 AM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks, but that gives me a blank page. As per the script writer it will work only with:

Quote:
<?php
if (logon is set) then
do nothing / continue
else
redirect to logon page
end if
?>
so I cannot put ! in font of !$bbuserinfo['userid']
Reply With Quote
  #4  
Old 04-23-2005, 06:31 AM
Deaths Deaths is offline
 
Join Date: Oct 2004
Location: Europe, Belgium
Posts: 679
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Just place
PHP Code:
if (!$bbuserinfo['userid'])
{
print_no_permission();

Above your main script, and start coding.
Everything you code below that will be parsed for logged in users, and the guests will get the no permission page
Reply With Quote
  #5  
Old 04-23-2005, 06:35 AM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

wish that was easy. I am using one of those scripts that you absolutely cannot touched the php or it ceases to work. Everything is acomplished thru an external file. In there, I tell it to use the external logon file logon.php. And this is what I need to put in logon.php. Any other way it enters into a loop. That why the loop needs to be broken with continue;

BTW, if the condition of bbuserinfo is not met, it does ask you to login.
I was told that vbportal uses it, so it is possible
I also know that phpNuke uses it.
I am with vbadvanced and am very happy with it.

Again, the problem is the loop.
Reply With Quote
  #6  
Old 04-23-2005, 07:58 AM
Deaths Deaths is offline
 
Join Date: Oct 2004
Location: Europe, Belgium
Posts: 679
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It might help if you'd post the script, or atleast the part which you are editing.
Reply With Quote
  #7  
Old 04-23-2005, 08:00 AM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

the entire script is posted above (let's call it logon.php). So is the complete synthax to use as per author.

in the preferences file you simply put
#coreInclude logon.php

and logon.php posted above does it's thing.
Reply With Quote
  #8  
Old 04-23-2005, 08:02 AM
Deaths Deaths is offline
 
Join Date: Oct 2004
Location: Europe, Belgium
Posts: 679
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

PHP Code:
 <?php
chdir
('/var/www/forums');
define('NO_REGISTER_GLOBALS'1);
$phrasegroups = array();
$actiontemplates = array('lostpw' => array('lostpw'));
require_once(
'./global.php');
require_once(
'./includes/functions_login.php');
if (
$bbuserinfo['userid'])
{
readfile('your_file');
}
else
{
print_no_permission();
}
?>
That should work.
Reply With Quote
  #9  
Old 04-23-2005, 08:06 AM
Lionel Lionel is offline
 
Join Date: Dec 2001
Location: Delray Beach, Florida
Posts: 3,277
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nope, it does not. I get a blank page. I must use the continue clause as per author.

and the readfile clause (that you edited it to instead of require) makes it look ugly by displaying the raw html
Reply With Quote
  #10  
Old 04-23-2005, 09:08 AM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you MUST use a continue (i can really not think of any reason for this) then recode and use a case construct.
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 04:18 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.03854 seconds
  • Memory Usage 2,257KB
  • 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
  • (3)bbcode_php
  • (3)bbcode_quote
  • (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
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (10)postbit
  • (10)postbit_onlinestatus
  • (10)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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete