Apache не возвращает документ

Discussion in 'PHP' started by 0xF0RD, 19 Jan 2013.

  1. 0xF0RD

    0xF0RD Member

    Joined:
    2 Dec 2009
    Messages:
    49
    Likes Received:
    6
    Reputations:
    0
    Всем привет!
    Установил на машину CentOS 5.8 с Apache 2.2.3 и MySQL версии 5.0.95.

    При обращении к странице Апач не возвращает код
    Функция phpinfo(); работает нормально (т.е ПХП работает)
    Если кто в курсе данной проблемы просьба помочь.

    Пример кода:
    Code:
    <?php
    session_start();
    //Вид обновления страницы
    include_once 'params.php';
    if ($_POST['refresh']=='Обновить')
    {
        if ($_POST['R1']=='V1')
        {
        $_SESSION['refresh']='all';
        }
    elseif ($_POST['R1']=='V2')
        {
        $_SESSION['refresh']='complete';
        }
    elseif ($_POST['R1']=='V3')
        {
        $_SESSION['refresh']='incomplete';
        }
    if (isset ($_POST['N_Loc']))
        {
            $N_Loc=$_POST['N_Loc'];
            $N_Loc=checknum($N_Loc);
            $_SESSION['N_Loc']=$N_Loc;
        }
    }
    
    print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title></title>
        <style type="text/css">
         TABLE.ruler {
          width: 100%;			/* Ширина таблицы в процентах */
          border: 1px solid navy	/* Рамка вокруг таблицы */
        }
         TD {
          padding: 4px			/* Поля вокруг содержимого ячеек */
        }
         TR.line {			/* Стиль выделенной строки */
          background: #fc0;		/* Фон под выделенной строкой */
          color: #333			/* Цвет текста выделенной строки */
        }
          .header {			/* Стиль заголовка */
          background: navy; 	 	/* Цвет фона заголовка */
          color: white         	/* Цвет текста в заголовке */
        }
        </style>
        <link rel="stylesheet" type="text/css" href="tmp.css">
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <script language="JavaScript">
    
    function tableRuler()
        {
        // Проверяем, поддерживает ли текущий браузер DOM
        if (document.getElementById)
            {
            tables = document.getElementsByTagName(\'table\')
            // Пробегаемся по всем таблицам на странице
            for (i=0;i<tables.length;i++)
                {
                // Работаем только с теми таблицами,
                // у которых установлен класс с именем ruler
                if (tables[i].className == \'ruler\')
                    {
                     trs = tables[i].getElementsByTagName(\'tr\')
                     // Пробегаемся по всем строкам выбранной таблицы
                     for (j=0;j<trs.length;j++)
                        {
                        // Для заголовка таблицы цвет не меняем
                        if (trs[j].className != \'header\')
                            {
                            // В остальных случаях изменяем имя стиля строки TR на line
                            trs[j].onmouseover = function()
                                {
                                this.className = \'line\';
                                return false
                                }
                            trs[j].onmouseout = function()
                                {
                                this.className = '';
                                return false
                                }
                            trs[j].ondblclick=function()
                                {
                                    var s=this.cells[4].textContent;
                                    alert(s);
                                return false
                                }
                            }
                        }
                    }
                }
            }
        }
        
        function dateandtime(element) {
        temp_date = new Date();
        day = temp_date.getDate();
        month = temp_date.getMonth() + 1;
        year = temp_date.getFullYear();
        Hours = temp_date.getHours();
        Minutes = temp_date.getMinutes();
        Seconds = temp_date.getSeconds();
        if (day < 10) {
        day = "0" + day;
        }
        if (month <10) {
        month = "0" + month;
        }
        if (Hours <10) {
        Hours = "0" + Hours;
        }
    	    if (Minutes <10) {
        Minutes = "0" + Minutes;
        }
        var result= "" + day + "-" + month + "-" + year + " " + Hours + ":" + Minutes + "";
        //alert(result);
        var v=document.getElementById(element);
        v.value=""+result;
        }
        </script>
    
      </head>
        <body onLoad= "tableRuler(); dateandtime(\'Time_in\'); dateandtime(\'Time_out\');">';
    
     
  2. mironich

    mironich Elder - Старейшина

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    ХВАТИТ ДЕЛАТЬ КАШУ ИЗ PHP и html,
    PHP:
    <?php
    session_start
    ();
    //Вид обновления страницы
    include_once 'params.php';
    if (
    $_POST['refresh']=='Обновить')
    {
        if (
    $_POST['R1']=='V1')
        {
        
    $_SESSION['refresh']='all';
        }
    elseif (
    $_POST['R1']=='V2')
        {
        
    $_SESSION['refresh']='complete';
        }
    elseif (
    $_POST['R1']=='V3')
        {
        
    $_SESSION['refresh']='incomplete';
        }
    if (isset (
    $_POST['N_Loc']))
        {
            
    $N_Loc=$_POST['N_Loc'];
            
    $N_Loc=checknum($N_Loc);
            
    $_SESSION['N_Loc']=$N_Loc;
        }
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title></title>
        <style type="text/css">
         TABLE.ruler {
          width: 100%;            /* Ширина таблицы в процентах */
          border: 1px solid navy    /* Рамка вокруг таблицы */
        }
         TD {
          padding: 4px            /* Поля вокруг содержимого ячеек */
        }
         TR.line {            /* Стиль выделенной строки */
          background: #fc0;        /* Фон под выделенной строкой */
          color: #333            /* Цвет текста выделенной строки */
        }
          .header {            /* Стиль заголовка */
          background: navy;          /* Цвет фона заголовка */
          color: white             /* Цвет текста в заголовке */
        }
        </style>
        <link rel="stylesheet" type="text/css" href="tmp.css">
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <script language="JavaScript">

    function tableRuler()
        {
        // Проверяем, поддерживает ли текущий браузер DOM
        if (document.getElementById)
            {
            tables = document.getElementsByTagName(\'table\')
            // Пробегаемся по всем таблицам на странице
            for (i=0;i<tables.length;i++)
                {
                // Работаем только с теми таблицами,
                // у которых установлен класс с именем ruler
                if (tables[i].className == \'ruler\')
                    {
                     trs = tables[i].getElementsByTagName(\'tr\')
                     // Пробегаемся по всем строкам выбранной таблицы
                     for (j=0;j<trs.length;j++)
                        {
                        // Для заголовка таблицы цвет не меняем
                        if (trs[j].className != \'header\')
                            {
                            // В остальных случаях изменяем имя стиля строки TR на line
                            trs[j].onmouseover = function()
                                {
                                this.className = \'line\';
                                return false
                                }
                            trs[j].onmouseout = function()
                                {
                                this.className = '';
                                return false
                                }
                            trs[j].ondblclick=function()
                                {
                                    var s=this.cells[4].textContent;
                                    alert(s);
                                return false
                                }
                            }
                        }
                    }
                }
            }
        }
        
        function dateandtime(element) {
        temp_date = new Date();
        day = temp_date.getDate();
        month = temp_date.getMonth() + 1;
        year = temp_date.getFullYear();
        Hours = temp_date.getHours();
        Minutes = temp_date.getMinutes();
        Seconds = temp_date.getSeconds();
        if (day < 10) {
        day = "0" + day;
        }
        if (month <10) {
        month = "0" + month;
        }
        if (Hours <10) {
        Hours = "0" + Hours;
        }
            if (Minutes <10) {
        Minutes = "0" + Minutes;
        }
        var result= "" + day + "-" + month + "-" + year + " " + Hours + ":" + Minutes + "";
        //alert(result);
        var v=document.getElementById(element);
        v.value=""+result;
        }
        </script>

      </head>
     <body onLoad= "tableRuler(); dateandtime(\'Time_in\'); dateandtime(\'Time_out\');">
    Неужели так трудно?
     
  3. 0xF0RD

    0xF0RD Member

    Joined:
    2 Dec 2009
    Messages:
    49
    Likes Received:
    6
    Reputations:
    0
    Так я тоже делал вначале, но разве это относится к делу?
     
  4. dr.Web

    dr.Web Member

    Joined:
    2 Feb 2009
    Messages:
    7
    Likes Received:
    22
    Reputations:
    10
    скорее всего установлен error_reporting(0)
    смотри внимательнее код, не заметил вот такую штучку


    начинается print '
    все кавычки ты слешами "прячешь"

    и тут бабах

    trs[j].onmouseout = function()
    {
    this.className = '';
    return false
    }

    а должно быть

    trs[j].onmouseout = function()
    {
    this.className = \'\';
    return false
    }
     
  5. 0xF0RD

    0xF0RD Member

    Joined:
    2 Dec 2009
    Messages:
    49
    Likes Received:
    6
    Reputations:
    0
    Не, с кодом все в порядке.
    error_reporting в php.ini - E_ALL
    Видно проблема крылась в несовместимости модулей php, apache, mysql
    Теперь, когда установил все по новой, проект заработал, но возникла другая проблема.
    База в кодировке cp 1251, а скрипты выдает в кодировке utf-8.
    В скриптах есть команда Set names CP1251, но после запросов к бд выдает кракозябры. Есть варианты?