vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   Use of output on php code (https://vborg.vbsupport.ru/showthread.php?t=287998)

cloferba 09-18-2012 06:54 PM

Use of output on php code
 
I?ve read this manual (https://www.vbulletin.com/forum/show...L-or-PHP-Block) but I don?t understand very well how to implement this on my custom code.

I need to show this php code on a block, but I don?t know how to use $output variables:
Code:

<?php

// Each sponsor is an element of the $sponsors array:

$sponsors = array(
        array('facebook','The biggest social network in the world.','http://www.facebook.com/'),
        array('adobe','The leading software developer targeted at web designers and developers.','http://www.adobe.com/'),
        array('microsoft','One of the top software companies of the world.','http://www.microsoft.com/'),
        array('sony','A global multibillion electronics and entertainment company ','http://www.sony.com/'),
        array('dell','One of the biggest computer developers and assemblers.','http://www.dell.com/'),
        array('ebay','The biggest online auction and shopping websites.','http://www.ebay.com/'),
        array('digg','One of the most popular web 2.0 social networks.','http://www.digg.com/'),
        array('google','The company that redefined web search.','http://www.google.com/'),
        array('ea','The biggest computer game manufacturer.','http://www.ea.com/'),
        array('mysql','The most popular open source database engine.','http://www.mysql.com/'),
        array('hp','One of the biggest computer manufacturers.','http://www.hp.com/'),
        array('yahoo','The most popular network of social media portals and services.','http://www.yahoo.com/'),
        array('cisco','The biggest networking and communications technology manufacturer.','http://www.cisco.com/'),
        array('vimeo','A popular video-centric social networking site.','http://www.vimeo.com/'),
        array('canon','Imaging and optical technology manufacturer.','http://www.canon.com/')
);


// Randomizing the order of sponsors:

shuffle($sponsors);

                       
                        // Looping through the array:
                       
                        foreach($sponsors as $company)
                        {
                                echo'
                                <div class="sponsor" title="Click to flip">
                                        <div class="sponsorFlip">
                                                <img src="img/sponsors/'.$company[0].'.png" alt="More about '.$company[0].'" />
                                        </div>
                                       
                                        <div class="sponsorData">
                                                <div class="sponsorDescription">
                                                        '.$company[1].'
                                                </div>
                                                <div class="sponsorURL">
                                                        <a href="'.$company[2].'">'.$company[2].'</a>
                                                </div>
                                        </div>
                                </div>
                               
                                ';
                        }
               
                ?>

Can anybody help me?

pd: I will pay if you want money :)

kh99 09-18-2012 09:02 PM

Try changing the word "echo" to "$output .= ", so that the line looks like this:

Code:

$output .= '

Edit: you may also have to remove the <?php and ?> from the beginning and end - I can't remember if they're allowed or not.

cloferba 09-18-2012 09:11 PM

Can?t get this work :(

kh99 09-18-2012 09:38 PM

OK, what happened? Did you try my suggestion, and if so, did you get any errors?

cloferba 09-18-2012 09:52 PM

I?m using borbole?s mod (http://www.forumservices.eu/vb/threa...ustom-Pages-15) and I receive an error) and I?m inserting php inside html code

Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Sponsor Flip Wall With jQuery &amp; CSS | Tutorialzine demo</title>
 
<link rel="stylesheet" type="text/css" href="styles.css" />
 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<script type="text/javascript" src="jquery.flip.min.js"></script>
 
<script type="text/javascript" src="script.js"></script>
 
</head>
 
<body>
 
<h1>PET&PET PARTNERS</h1>
<h2><a href="http://www.petandpet.com">Go Back to Pet&Pet &raquo;</a></h2>
 
<?php
 
// Each sponsor is an element of the $sponsors array:
 
$sponsors = array(
    array('facebook','The biggest social network in the world.','http://www.facebook.com/'),
    array('adobe','The leading software developer targeted at web designers and developers.','http://www.adobe.com/'),
    array('microsoft','One of the top software companies of the world.','http://www.microsoft.com/'),
    array('sony','A global multibillion electronics and entertainment company ','http://www.sony.com/'),
    array('dell','One of the biggest computer developers and assemblers.','http://www.dell.com/'),
    array('ebay','The biggest online auction and shopping websites.','http://www.ebay.com/'),
    array('digg','One of the most popular web 2.0 social networks.','http://www.digg.com/'),
    array('google','The company that redefined web search.','http://www.google.com/'),
    array('ea','The biggest computer game manufacturer.','http://www.ea.com/'),
    array('mysql','The most popular open source database engine.','http://www.mysql.com/'),
    array('hp','One of the biggest computer manufacturers.','http://www.hp.com/'),
    array('yahoo','The most popular network of social media portals and services.','http://www.yahoo.com/'),
    array('cisco','The biggest networking and communications technology manufacturer.','http://www.cisco.com/'),
    array('vimeo','A popular video-centric social networking site.','http://www.vimeo.com/'),
    array('canon','Imaging and optical technology manufacturer.','http://www.canon.com/')
);
 
 
// Randomizing the order of sponsors:
 
shuffle($sponsors);
 
?>
 
 
 
<div id="main">
 
    <div class="sponsorListHolder">
 
   
        <?php
       
            // Looping through the array:
       
            foreach($sponsors as $company)
            {
                echo'
                <div class="sponsor" title="Click to flip">
                    <div class="sponsorFlip">
                        <img src="img/sponsors/'.$company[0].'.png" alt="More about '.$company[0].'" />
                    </div>
               
                    <div class="sponsorData">
                        <div class="sponsorDescription">
                            '.$company[1].'
                        </div>
                        <div class="sponsorURL">
                            <a href="'.$company[2].'">'.$company[2].'</a>
                        </div>
                    </div>
                </div>
           
                ';
            }
   
        ?>
 
   
   
        <div class="clear"></div>
    </div>
 
</div>
 
<p class="note">We thank to all of them :)</p>
 
</body>
</html>

I?ve deleted the <?php and ?> and also changed "echo" to "$output .= '" and I can?t see the code, it seems that something is wrong

kh99 09-18-2012 10:00 PM

I don't understand what that mod has to do with this, I thought you were trying to create a php type forum block. In that case you'd be entering that code (from the first post) in the Forum Block manager when you create a new "Custom HTML/PHP" block. But one thing I forgot is that using $output is for widgets. For forum blocks you need to return the value, so you'd also have to add

Code:

return $output;

as the last line.

ForumsMods 09-18-2012 10:08 PM

If I understand, you want this:
PHP Code:

foreach($sponsors as $company)
{
    
$output '
    <div class="sponsor" title="Click to flip">
        <div class="sponsorFlip">
            <img src="img/sponsors/'
.$company[0].'.png" alt="More about '.$company[0].'" />
        </div>
     
        <div class="sponsorData">
            <div class="sponsorDescription">
                '
.$company[1].'
            </div>
            <div class="sponsorURL">
                <a href="'
.$company[2].'">'.$company[2].'</a>
            </div>
        </div>
    </div>
    '
;
}

echo 
$output


cloferba 09-18-2012 10:13 PM

I will make things clear, sorry guys.

From the beginning I said that was for a forumblock to don?t give more details about the situations (it seems complex but it is not)

Actually, I want implement a sponsor wall on my forum, using a custom page created with Borbole?s mod:
http://tutorialzine.com/2010/03/spon...ip-jquery-css/

What I need to do is adapt the code of the index.php file (http://demo.tutorialzine.com/2010/03...y-css/demo.php) to work on vBulletin...

That php file has html inside, but to work with php on vbulletin you need to use $output variables and that?s my main problem, I don?t know how can I adapt this code.

Scanu 09-19-2012 06:40 PM

Should'nt be "return $output"?
PHP Code:

foreach($sponsors+as+$company)
{
++++
$output+=+'
++++<div+class="sponsor"+title="Click+to+flip">
++++++++<div+class="sponsorFlip">
++++++++++++<img+src="img/sponsors/'
.$company[0].'.png"+alt="More+about+'.$company[0].'"+/>
++++++++</div>
+++++
++++++++<div+class="sponsorData">
++++++++++++<div+class="sponsorDescription">
++++++++++++++++'
.$company[1].'
++++++++++++</div>
++++++++++++<div+class="sponsorURL">
++++++++++++++++<a+href="'
.$company[2].'">'.$company[2].'</a>
++++++++++++</div>
++++++++</div>
++++</div>
++++'
;
}

return+
$output;+ 

--------------- Added [DATE]1348083681[/DATE] at [TIME]1348083681[/TIME] ---------------

Sorry for ++, i copied text from my iPad and it looked like that :confused:

Crotan 10-05-2012 05:50 AM

I don't mean to threadcrap, but is there a consensus on this?

I have php code that works fine, and the only way I've found to use it in a cms widget is using an html iframe to the php file because I'm not really sure what needs to change for it to be usable in a php widget?


All times are GMT. The time now is 12:32 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.01301 seconds
  • Memory Usage 1,777KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (4)bbcode_code_printable
  • (2)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete