Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/09/2012, 16:40
latempe
 
Fecha de Ingreso: septiembre-2012
Mensajes: 48
Antigüedad: 11 años, 7 meses
Puntos: 0
Pregunta Cambiar ajax.php por jSON

Tengo problemas con un archivo ajax.php, que me sube el uso del cpu en mi hosting. quiero saber cual es el problema, en mi sitio entran 250 personas online y yah se llena el uso del cpu a 100% Los dueños del hosting, dicen que es ese archivo que esta dando problemas y podrian cerrarme el sitio. podian ayudarme areglar eso? me dicen que cambie a jSON. o si tienen otra forma para areglar eso se lo agradeceria mucho. dejo el code aca.
Código PHP:
<?php
/**
 * [PHPFOX_HEADER]
 * 
 * @copyright        [PHPFOX_COPYRIGHT]
 * @author            Raymond Benc
 * @package         Phpfox
 * @version         $Id: ajax.php 3118 2011-09-16 10:51:04Z Raymond_Benc $
 */
ob_start();

/**
 * Key to include phpFox
 *
 */
define('PHPFOX'true);

/**
 * Directory Seperator
 *
 */
define('PHPFOX_DS'DIRECTORY_SEPARATOR);

/**
 * phpFox Root Directory
 *
 */
define('PHPFOX_DIR'dirname(dirname(__FILE__)) . PHPFOX_DS);

if (isset(
$_GET['ajax_page_display']))
{
    
define('PHPFOX_IS_AJAX_PAGE'true);
}
else 
{
    
define('PHPFOX_IS_AJAX'true);
}

// Require phpFox Init
require(PHPFOX_DIR 'include' PHPFOX_DS 'init.inc.php');

if (!
Phpfox::getService('ban')->check('ip'Phpfox::getIp()))
{
    exit();
}

if (isset(
$_GET['ajax_page_display']))
{    
    
$oCache Phpfox::getLib('cache');
    
$oAjax Phpfox::getLib('ajax');

    
Phpfox::run();

    
$aHeaderFiles Phpfox::getLib('template')->getHeader(true);    
    
    if (
Phpfox::getLib('template')->sDisplayLayout)
    {            
        
Phpfox::getLib('template')->getLayout(Phpfox::getLib('template')->sDisplayLayout);
    }    
    
    
$sJs '';
    
$sCustomCss '';
    
$sLoadFiles '';        
    
$sEchoData '';
    foreach (
$aHeaderFiles as $sHeaderFile)
    {
        if (
preg_match('/js_user_profile_css/i'$sHeaderFile))
        {
            
$sJs .= 'profilecss: \'' $sHeaderFile '\', ';
            
            continue;
        }
        
        if (
preg_match('/<style(.*)>(.*)<\/style>/i'$sHeaderFile))
        {
            
$sCustomCss .= '\'' strip_tags($sHeaderFile) . '\',';
            
            continue;
        }
        
        
$sHeaderFile strip_tags($sHeaderFile);
        
        
$sNew preg_replace('/\s+/','',$sHeaderFile);
        if (empty(
$sNew))
        {
            continue;
        }
            
        
$sLoadFiles .= '\'' str_replace("'""\'"$sHeaderFile) . '\',';
    }        
    
$sLoadFiles rtrim($sLoadFiles',');
    
$sCustomCss rtrim($sCustomCss',');

    
$sContent Phpfox::getLib('ajax')->getContent();
    
    
$aPhrases Phpfox::getLib('template')->getPhrases();    
    
    
$sJs .= 'content: \'' $sContent '\', ';
    
$sJs .= 'files: [' $sLoadFiles '], ';
    if (
count($aPhrases))
    {
        
$sJs .= 'phrases:  {';
        foreach (
$aPhrases as $sKey => $sValue)
        {
            
$sJs .= '\'' $sKey '\': \'' str_replace("'""\'"$sValue) . '\',';    
        }
        
$sJs rtrim($sJs',');
        
$sJs .= '}, ';
    }
    
$sJs .= 'title: \'' str_replace("'""\'"html_entity_decode(Phpfox::getLib('template')->getTitle(), null'UTF-8')) . '\'';
    
    if (!empty(
$sCustomCss))
    {
        
$sJs .= ', customcss: [' $sCustomCss ']';
    }
    
    
/*
    $aAds = array();
    for ($i = 1; $i <= 11; $i++)
    {
        $aAds[] = Phpfox::getService('ad')->getForBlock($i);
    }
    
    if (count($aAds))
    {
        $sJs .= ', ads: {';
        foreach ($aAds as $aAd)
        {
            if (!isset($aAd['ad_id']))
            {
                continue;
            }
            $sJs .= '\'' . $aAd['location'] . '\': \'' . str_replace("'", "\'", $aAd['html_code']) . '\',';
        }
        $sJs = rtrim($sJs, ',');
        $sJs .= '}';
    }
     * 
     */
    
    
if (isset($_GET['js_mobile_version']) && $_GET['js_mobile_version'])
    {
        if (isset(
$_GET['req1']) && empty($_GET['req2']))
        {
            
Phpfox::getLib('ajax')->call('$(\'#mobile_search\').show();');
        }
        else
        {
            
Phpfox::getLib('ajax')->call('$(\'#mobile_search\').hide();');
        }
    }
    
    
Phpfox::getLib('ajax')->call('$Core.page({' $sJs '});');
    
    if (
PHPFOX_DEBUG)
    {
        
Phpfox::getLib('ajax')->call('$(\'#js_main_debug_holder\').html(\'' Phpfox_Debug::getDetails() . '\');');
    }
    
    echo 
Phpfox::getLib('ajax')->getData();    
}
else 
{
    
$oAjax Phpfox::getLib('ajax');
    
$oAjax->process();
    echo 
$oAjax->getData();
    if (!isset(
$_REQUEST['height']) && !isset($_REQUEST['width']) && !isset($_REQUEST['no_page_update']))
    {
        
// echo '$Core.updatePageHistory();';    
    
}
}

ob_end_flush();
?>