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 11-07-2007, 08:44 PM
marc100 marc100 is offline
 
Join Date: Oct 2006
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default How do I do this in php

This is a very basic question and since I know 0 about php, I dont know how to do it


I have 30 different "if" conditions and I dont know how to do them properly.
Its for a shopping website.
I want to say If the category is Shoes, then print "Shoes" on the screen. If The category is Belts, print Belts.

I need it to run fast because my site is busy and I dont want it to slow my site down.

This is what I have now, but for 30 different categories:


< ?php
if (is_category('Shoes')) {
echo "Shoes";
}
?>


< ?php
if (is_category('Belts')) {
echo "Belts";
}
?>


< ?php
if (is_category('Ties')) {
echo "Ties";
}
?>

< ?php
if (is_category('tshirts')) {
echo "tshirts";
}
?>

< ?php
if (is_category('Socks')) {
echo "Socks";
}
?>

and so on and so on.

See the problem? I start and stop 30 different programs right at the top of the page.
Anyone know how I can make that all into 1 big program, instead of a lot of little programs? so it runs faster?

thanks for any help!
Reply With Quote
  #2  
Old 11-07-2007, 08:47 PM
ragtek ragtek is offline
 
Join Date: Mar 2006
Location: austria, croatia
Posts: 1,630
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

switch case should help you
http://de.php.net/manual/en/control-...res.switch.php
Reply With Quote
  #3  
Old 11-07-2007, 09:01 PM
marc100 marc100 is offline
 
Join Date: Oct 2006
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by ragtek View Post
thanks, but that looks really complicated to use variables and stuff.
Sorry Im really a dummy at programming.

If there an easy way to do nested if/else in 1 program block without stopping it and starting over?
Reply With Quote
  #4  
Old 11-07-2007, 09:25 PM
flup's Avatar
flup flup is offline
 
Join Date: Jan 2002
Location: Maastricht, NL
Posts: 872
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

<?php
if(is_category('Shoes')) { echo 'Shoes'; }
elseif(is_category('Socks')) { echo 'Socks'; }
else { echo 'No category'; }
?>

perhaps you mean something like this?
Reply With Quote
  #5  
Old 11-07-2007, 10:43 PM
marc100 marc100 is offline
 
Join Date: Oct 2006
Posts: 14
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by flup View Post
<?php
if(is_category('Shoes')) { echo 'Shoes'; }
elseif(is_category('Socks')) { echo 'Socks'; }
else { echo 'No category'; }
?>

perhaps you mean something like this?
yeah that would work, Thanks!

Would that run faster than my first example of starting and stopping the programs? Or would they run at the same speed?
Reply With Quote
  #6  
Old 11-08-2007, 12:24 PM
Opserty Opserty is offline
 
Join Date: Apr 2007
Posts: 4,103
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You need some kind of input...like what you are going to check is the category of.

Example:
PHP Code:
$input 'Socks';
switch(
$input)
{
    case 
'Socks':
        echo 
'Socks';
        break;
    case 
'Belts':
        echo 
'Belts';
        break;
    default:
        echo 
'No matches';
        break;
}

/*=============================
 * Outputs: 'Socks'
 *=============================
 *
 * If we say 
 * 
 * $input = 'Cheese';
 * 
 * Output: 'No matches';
 */

// ############ EVEN BETTER WAY ##############

$input 'Socks';

switch(
$input)
{
    case 
'Your':
    case 
'Categories':
    case 
'Here':
        echo 
$input;
        break;
    default:
        echo 
'No matches found';
        break;

If you don't know any PHP or very little you may want to consider at least learning the basic concepts before you go about editing files e.t.c.
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:27 PM.


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.07487 seconds
  • Memory Usage 2,219KB
  • 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
  • (1)bbcode_php
  • (2)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_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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete