За последние 24 часа нас посетили 16594 программиста и 1679 роботов. Сейчас ищут 887 программистов ...

Помогите новичку

Тема в разделе "Прочие вопросы по PHP", создана пользователем moldis, 13 ноя 2008.

  1. moldis

    moldis Guest

    Есть простой код(описание класса), класс засунул в отдельный файл PHP.inc, через функцию include пытаюсь подключить этот файл с кодом, делаю так:
    <?php
    include("PHP.inc");

    $Men = New Menu;

    Файл лежиит в той же папке где и сами html файлы. Но функция в упор не хочет подключать файл, на страницу выводит сам код PHP... Что не так делаю?
     
  2. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    А зачем *.inc? Обычно классы называют *.php , как и сами скрипты... (наверно обычно :) )
    А вообще, думую нужно увидеть код класса...
    И думается мне, что
    $Men = new Menu();
     
  3. moldis

    moldis Guest

    Код класса самый простой... Переименовывать пытался - все равно тоже самое, единственное что так станица через .htm

    пробывал $Men = new Menu(); - работает..
    Сам код:

    <?php
    class Menu
    {
    var $arr = array(); //Создаем новый массив
    var $N_arr = 0; // количество строк в массиве
    var $name_link;
    var $link;

    function Add_To_Array($link,$name_link)
    {
    $this->arr[$this->N_arr]["name_link"] = $name_link;
    $this->arr[$this->N_arr]["link"] = $link;
    $this->N_arr = $this->N_arr +1;
    }

    Function displayMenu_gorizont()
    {
    echo "<DIV align = 'center' height='15mp'>";
    echo "<TD>";
    for ($i=1;$i<=sizeof($this->arr);$i++)
    {
    echo "<a href={$this->arr[$i-1]['link']} class='menu'> {$this->arr[$i-1]['name_link']} </a>&nbsp;||&nbsp";

    }
    echo "</TD>";
    echo "</DIV>";

    }

    function displayMenu_vert()
    {
    echo "<DIV ID='menu'>";
    echo "<TD>";
    for ($i=1;$i<=sizeof($this->arr);$i++)
    {
    echo "<a href={$this->arr[$i-1]['link']} class='menu'> {$this->arr[$i-1]['name_link']} </a> <BR>";

    }
    echo "</TD>";
    echo "</DIV>";
    }

    }
    ?>


    Полный код вызова:

    include("PHPcode.php");

    $Men = New Menu();
    $Men->Add_To_Array("Index.html","Главная");
     
  4. moldis

    moldis Guest

    need help!
     
  5. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Не понял, в смысле после того как добавил () - заработало?
     
  6. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Сервер не настроен на работу с PHP - см. http://php.ru/install
    И может всё же обозвать файл *.inc.php?
     
  7. moldis

    moldis Guest

    сори наоборот не зарабтало...
     
  8. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Всё равно как называется подключаемый файл.
     
  9. decoder

    decoder Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    469
    Симпатии:
    0
    moldis
    У Вас на сервере PHP вообще есть? :)
     
  10. Vitas

    Vitas Активный пользователь

    С нами с:
    7 фев 2006
    Сообщения:
    595
    Симпатии:
    0
    Адрес:
    Новосибирск, Академгородок
    Все файлы где есть PHP-код надо называть *.php!
     
  11. dAllonE

    dAllonE Guest

    Vitas, почему?
     
  12. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    у меня тоже есть привычка все файлы где лежат несамостоятельные скрипты (которые не должны вызываться из браузера, а должны только инклудиться другими скриптами) называть *.inc
    Проблем не было.
     
  13. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Стоп-стоп-стоп... а файл в котором происходит include("PHPcode.php"); какое расширение имеет?
     
  14. decoder

    decoder Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    469
    Симпатии:
    0
    karakh
    Какая разница? Он исполняется, раз инклудится код.

    Проблемы со включаемым файлом. Возможно права на файл "не те" стоят, то есть нет прав на исполнение.
     
  15. Frozen

    Frozen Активный пользователь

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    не потому что это обязательно, а потому чтоб не было стыдно
     
  16. dAllonE

    dAllonE Guest

    Frozen, а в чем заключается стыд? О_О
     
  17. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    dAllonE
    А если он в txt будет сохранять ;)
     
  18. decoder

    decoder Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    469
    Симпатии:
    0
    Mr.M.I.T.
    Да хоть .doc - главное, настроить веб-сервер.
     
  19. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    угу, угу,
    круть =))
     
  20. dAllonE

    dAllonE Guest

    Mr.M.I.T., вот обычно все пишут ААааа а вот не настроите Вы .htaccess и у Вас кто нить введет
    http://megasite.ru/config.inc и все увидит, что у Вас там понаписано.
    Так вот, ИМХО держать файлы, на которые пользователь не должен, заходить в DocumentRoot'e уже не ком иль фо. А если они у тебя лежат не в DocumentRoot, так и чего собственно париться? :)

    P.S. Несмотря на затеянный мной холивар предпочитаю иметь все файлы в расширении .php а на "клановую" принадлежность указывать папками (classes, tpl, config и т.д.)
     
  21. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    dAllonE, не знаете, а на сервере хостинга (если своего собственного, например, нету) можно ли получить доступ к папке, которая находится выше DocumentRoot (или вообще на другом диске), чтобы загружать туда файлы типа config.inc ? И будут ли эти файлы потом доступны из скриптов?
     
  22. как правило, да. Я еще не встречал хостинга, где было бы нельзя.
    Я имею все файлы в .php, что бы их было удобно было ОТКРЫВАТЬ РЕДАКТОРОМ, что должно быть очевидно.
     
  23. dAllonE

    dAllonE Guest

    флоппик, ну я лично, что бы синтаксис правильно подсвечивался в редакторах... Так что в чем-то мы похожи ;)
     
  24. decoder

    decoder Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    469
    Симпатии:
    0
    Так вот почему я .php успользую! :)
     
  25. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    У А в чем неудобство? Total commander с удовольствием открывает все что я прошу с notepad++ который после когда-то сделанной минутной настройки замечательно подсвечивает php-шный синтаксис в inc.