Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Почему не выполняеться php код?


Автор: KuMa1104 30.9.2009, 17:07
Добрый день.
Пишу на php впервые.
Если это важно то у меня помимо всего прочего 
стоит VS 2008 и для неё вебсервер ISS, его и хочу использовать.
Создал фаил first.php в  вебдиректории Cars

Вставил код.
Код

<?
echo "<html><body><h1>"
echo "Hello, $my_name"
echo "</h1></body></html>"
?>



В браузере Opera ввёл запросю
http://localhost/Cars/first.php?my_name = Deni

Получаеться ерунда.
На экран выводиться.
Код

" echo "Hello, $my_name" echo "
" ?>


если посмотреть исходный текст страницы то увидим.
Код

<?
echo "<html><body><h1>"
echo "Hello, $my_name"
echo "</h1></body></html>"
?>

Ничего не изменилось.
Что не так?
Почему не произошла компиляция в html?









Автор: Ипатьев 30.9.2009, 17:16
во-первых, не <? а <?PHP
во-вторых, не echo "Hello, $my_name", а 
Код

echo "Hello, ".$_GET['my_name'];
в-третьих, в конце каждой строчки с echo ставим точку с запятой.

Добавлено через 1 минуту и 47 секунд
в-четвертых, не first.php?my_name = Deni, а first.php?my_name=Deni

Автор: bars80080 30.9.2009, 17:39
в пятых, если <?php не запустит пример, значит сервер не работает и пхп-интерпретатор не запускается

Автор: KuMa1104 30.9.2009, 18:00
Всё исправил.
1.2.3 пункты.
теперь выводит
" ; echo "Hello, ".$_GET['my_name']; echo "
" ; ?>
с 4 пунктом я не понял в чём разница??????
я писал
http://localhost/Cars/first.php?my_name=Deni

с 5 тоже не понятно чуть чуть.
Как понять запускаеться ли пример?

Автор: youri 30.9.2009, 18:09
если в исходнике странички не будет php-кода, значит запускается
ты php к iis подключал?

Автор: KuMa1104 30.9.2009, 18:12
Скачал
PHP Expert editor
в нём написал код.
Код

<html>

<head>
  <title></title>
</head>

<body>

<?php

echo "Hello, ".$_GET['my_name'];

?>

</body>

</html>

Жму Run или Debug и он выводит
Hello, 

тоже самое в браузере по запросу и получаю пустой экран.
а исходный текст таков
Код

<html>

<head>
  <title></title>
</head>

<body>

<?php
echo "Hello, ".$_GET['my_name'] ;
?>

</body>

</html>


Ни чего не произошло?



Автор: nerezus 30.9.2009, 18:22
KuMa1104, может ты начнешь читать ответы, которые тебе пишут?

Автор: KuMa1104 30.9.2009, 21:31
php к iis подключал руководствуясь этим.

 Выполнять функции интерпретатора могут .exe- и .dll-файлы. В данном случае это входящие в комплект поставки php.exe и php5isapi.dll. Рекомендуется следующий порядок действий: открываем Microsoft Mana-gement Console и выбираем закладку Фильтры ISAPI. Добавляем новый фильтр с каким-нибудь толковым названием, хотя бы просто "PHP", и указываем путь к файлу php.exe.  Теперь на закладке Домашний каталог открываем настройку приложений, где на очередной вкладке Сопоставления добавляем новое приложение, указав путь к исполняемому файлу — в нашем случае все к тому жеphp.exe — и сопоставленное ему расширение.

1 Добавляем новый фильтр.
2 добавляем новое приложение, указав путь к исполняемому файлу.

В статье утверждалось.

процесс завершается перезапуском web-сервера Ms IIS. Теперь для того, чтобы убедиться в работоспособности нового модуля, стоит написать и открыть браузером какой-нибудь простейший тестовый скрипт, скажем, выводящий информацию о вашем PHP с помощью phpinfo().
Теперь можно с чистой совестью принимать поздравления — вы стали обладателем собственного тестового web-сервера от Microsoft, познакомились с некоторыми его настройками и научились подключать к нему дополнительные модули.

Скажите, это правда? или меня обманули?

Автор: motorway 30.9.2009, 21:41
Вы PHP вообще УСТАНОВИЛИ?!

Автор: Ипатьев 30.9.2009, 21:48
Вряд ли кто-то знает.
Лично я никогда в жизни пхп под иис не ставил.
Но исходя из общих соображений предполагаю, что инструкция верная, а исполнение с ошибками.

Автор: motorway 30.9.2009, 22:31
Бывают хостинги с PHP и IIS. Так что такой вариант рабочий, но чтобы его установить, надо четко все делать

Автор: KuMa1104 30.9.2009, 22:34
Я скачал и распокавал архив php-5.2.11-Win32.zip
Та м на странице было сказано что zip архив содержит уже готовые фаилы. это как мне кажеться так в частности там есть и php.exe и php5isapi.dll 
php.exe запускаеться.
Так что небыло привычной инсталяции , но по всем признакам эдо  деиствительно php
Вот ссылка если вам интересно можете убедиться.

http://ru.php.net/distributions/php-5.2.11-Win32.zip

По поводу исполнения я точно не уверен но последовательность действий не велика так что врядли могла быть ошибка. Но я ещё поэксперементирую.

Автор: unicross 30.9.2009, 23:14
KuMa1104, путь к PHP в переменную PATH добавлен? Или какие-нибудь файлы в папку Windows кидали (это не желательно!)?

Я не знаю можно ли PHP установить как модуль к IIS, но как CGI точно можно:
На вкладке Домашний каталог кнопка Настройка. В окне Настройка приложения на вкладке Сопоставления кнопка Добавить. В поле Исполняемый файл указывается путь к файлу php-cgi.exe (например, C:\php\php-cgi.exe). В поле Расширение вводите ".php". Должны быть установлены флажки Обработчик сценариев, Проверка наличия файла и все команды.

В переменную PATH должен быть добавлен путь к PHP (папка C:\php\) и к папке с dll-ками (C:\php\ext\). Файл php.ini-dist переименовываете в php.ini. В этом файле найдите строку 
Код

; cgi.force_redirect = 1

и замените ее на
Код

cgi.force_redirect = 0

В этом файле еще можно подключить требуемые расширения 
extension=php_gd2.dll
extension=php_mysql.dll
extension=php_mysqli.dll
Путь к dll-кам вместо переменной PATH можно добавить в директиву extension_dir
Код

extension_dir = "C:/php/ext"

После изменения переменной PATH лучше перезагрузить компьютер.

Далее создаете файл, например, test.php с кодом и запускаете через браузер
Код

<?php
phpinfo();
?>


P.S. Здесь описана возможность добавления пути к php5isapi.dll вместо php-cgi.exe
http://www.webnotes.com.ua/?page_id=3


Автор: youri 1.10.2009, 02:56
не сравнивал, но http://www.php.net/manual/en/install.windows.iis.php инструкции от разработчиков, правда на англ

Автор: KuMa1104 1.10.2009, 16:12
unicross youri Ипатьев motorway bars80080 Спасибо вам. Следовал вашим указаниям unicross. 
После ввёл.
Код

<?php
phpinfo();
?>


Ввёл в браузере запрос
http://localhost/Cars/first.php

получил.
http://ipicture.ru/Gallery/Viewfull/24454812.html
Я так пологаю что теперь всё работае.

интересно то что когда я потом просто пытался открыть его через оперу, то ничего не происходило.
Открывал страничку с исходным текстом.
Видно что ничего не произошло.

а в программе PHP Expert Edition  получилось вот так.
http://ipicture.ru/Gallery/Viewfull/24455153.html
текст тотже.


Автор: Ипатьев 1.10.2009, 16:32
если через оперу открыть файл, то она выведет его содержимое.
это естественное поведение браузера

Автор: bars80080 1.10.2009, 17:40
...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)