Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как открыть новое окно 200x200, БЕЗ JAVASCRIPT !!! (а только на PHP) 
:(
    Опции темы
Cross
Дата 27.11.2006, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



Ситуация следующая! 
Вот программный код: 
$content.="<A HREF=/templates/tree/add_catalog.php?id=".$this->m_cat_id." target=_blank>...</a>;

Цель: открыть новое окно, но оно должно быть маленьким (например, 200x200). 
JavaScript использовать не хочу (с ним в моей ситуации программа получится очень корявой). 
Можно ли на PHP указывать размеры окна???

Подскажите, пожалйуста.
Заранее благодарю
PM MAIL ICQ Skype MSN   Вверх
Alix36
Дата 27.11.2006, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 478
Регистрация: 6.11.2006

Репутация: 1
Всего: 3



Js будет намного прощще... и вообще неуверен что пхп это может


--------------------
Наши лица как дым, И никто не узнает как мы победим. (С)Пикник.
PM MAIL   Вверх
Cross
Дата 27.11.2006, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



PHP это может!!! 
А может можно создать стить CSS и в нем поменять размер окна?
PM MAIL ICQ Skype MSN   Вверх
Kefir
Дата 27.11.2006, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

Репутация: 13
Всего: 87



Цитата(Cross @  27.11.2006,  16:16 Найти цитируемый пост)
PHP это может!!! 

ПХП этого не может. Почитай что такое ПХП и всё станет ясно. Максимум что ПХП может в данном случае - передать размеры окна через строку запроса. А уже в открываемом файле через JS можно будет поресайзить окно.
PM MAIL WWW Skype   Вверх
GZep
Дата 27.11.2006, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Причем тут PHP вообще? Вам надо сделать ссылку, которая будет открывать новое окно заданных размеров. Это делается в HTML разметке. PHP - это серверный язык программирования. Ему все-равно что выводить: HTML код ссылки или javascript функцию открытия окна.

Для того чтобы открыть окно заданных размеров необходимо использовать какой-нибудь клиентский язык программирования. Т.е. чисто на html сделать не получится. Главное чтобы Вы поняли, что:
Код

<A HREF=/templates/tree/add_catalog

Это - HTML. Вот вам пример, как php выводит javascript:
Код

<?
echo "<script language=\"JavaScript\" type=\"text/javascript\">\n";
echo "alert (\"Это сообщение вывел javascript. javascript в свою очередь был сгенерирован php сценарием\")\n";
echo "</script>\n";
?>

Надеюсь понятно объяснил. smile 

Это сообщение отредактировал(а) GZep - 27.11.2006, 17:11


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
Ashen
Дата 27.11.2006, 17:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 103
Регистрация: 1.9.2006

Репутация: нет
Всего: нет



Пример для открытия окна по клике на ссылку
Код

<a href="" onclick="window.open('index.html','secondWindow','scrollbars=yes,width=250, height=400');return false;">ссылка</a>


Нужные параметры изменить.
В остальном - смотри пост GZep'а
--------------------
Хочешь помочь новичку - делай вместе с ним;Хочешь помочь старику - сделай за него;Хочешь помочь мастеру - отойди в сторону;Хочешь помочь дураку - сам дурак...
PM MAIL   Вверх
GZep
Дата 27.11.2006, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Cross, заметте, в предыдущем посте был использован javascript. smile Извените, но без него никак...

Тема, где хорошо объясняют как открыть окно заданных размеров при помощи javascript.

Удачи.

Это сообщение отредактировал(а) GZep - 27.11.2006, 17:29


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
Kefir
Дата 27.11.2006, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

Репутация: 13
Всего: 87



Cross, как видишь, все решения на JS  smile 
PM MAIL WWW Skype   Вверх
Cross
Дата 27.11.2006, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



Спасибо за консультацию!

Жалко конечно, я очень не люблю JS.
PM MAIL ICQ Skype MSN   Вверх
GZep
Дата 27.11.2006, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Цитата(Cross @  27.11.2006,  18:54 Найти цитируемый пост)
Жалко конечно, я очень не люблю JS. 

И я не люблю smile Потому что я терпеть не могу такое понятие как: "на этом браузере работает, а на этом надо еще 3 страницы кода добавить чтобы работало". Просто все-равно его придется учить, без него никуда. smile 


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
SelenIT
Дата 28.11.2006, 01:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Цитата(GZep @  27.11.2006,  23:40 Найти цитируемый пост)
на этом надо еще 3 страницы кода добавить чтобы работало

Имхо, это все же преувеличение. В крайнем случае - издержки чрезмерной универсализации (всякие супер-пупер-библиотеки, работающие даже в музейных экспонатах). В реальной жизни практически всегда на 1 строчку нужно максимум 2 дублирующих, чтобы работало в каждом из 2-х "параллельных миров" - вселенной Microsoft и вселенной W3C smile


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
GZep
Дата 28.11.2006, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Цитата(SelenIT @  28.11.2006,  01:31 Найти цитируемый пост)
это все же преувеличение

Естественно, все поняли, что я утрировал. smile 
Цитата(SelenIT @  28.11.2006,  01:31 Найти цитируемый пост)
вселенной Microsoft и вселенной W3C

Сильно сказано.
Цитата(SelenIT @  28.11.2006,  01:31 Найти цитируемый пост)
максимум 2 дублирующих

Довольно часто бывает и больше. Обычно из-за всеми любимых windows internet explorer и microsoft internet explorer.


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
Cross
Дата 29.11.2006, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



А что если открывать новые окошки как фреймы???
Я понимаю, что это архаизм smile, но может имеет смысл???


PM MAIL ICQ Skype MSN   Вверх
SelenIT
Дата 29.11.2006, 00:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Cross, пожалуйста, поясните Вашу мысль... как Вы себе это представляете?


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Drache
Дата 29.11.2006, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 31.3.2006

Репутация: 1
Всего: 3



Цитата(Cross @ 29.11.2006,  00:46)
А что если открывать новые окошки как фреймы???
Я понимаю, что это архаизм smile, но может имеет смысл???

думаю проще всего будет таки прибегнуть к JavaScript'у. Сомневаюсь, что у Вас всегда получится избежать использования этого языка.
Сама его не люблю, но иногда можно много чего сделать с его помощью, а иногда без него и вообще невозможно smile

PM MAIL   Вверх
Eugene_Bond
Дата 29.11.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 138
Регистрация: 3.9.2006

Репутация: 1
Всего: 4



Причем тут проще прибегнуть или не проще?
PHP -- он про окошки ничего не знает!
При помощи PHP нельзя создавать окна и манипулировать документом в браузере!
PHP выдал свой текст и остался на сервере! Есть там пользователь или его нет -- PHP пофигу!

подробнее здесь: http://phpfaq.ru/na_tanke
PM MAIL   Вверх
Cross
Дата 29.11.2006, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



Ну я предполагаю, что можно создать невидимый фрейм, а при вызове <a href=...> задать его размеры и сделвть видимым. Это бы облегчило задачу передачи параметров. 
Если использовать JS - нужно передать очень много параметров в скрипт, а потом обратно в код PHP, а если передать один - два параметра - то придется делать лишний звпрос к БД, что недопустимо, т.к. слишком уж будет коряво... 

Ну вобщем, это мне дипломный руководитель задал такое задание - не использовать JS. Он почему-то считает, что без JS вполне можно обойтись в этой задаче.
PM MAIL ICQ Skype MSN   Вверх
SelenIT
Дата 29.11.2006, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Цитата(Cross @  29.11.2006,  11:09 Найти цитируемый пост)
задать его размеры и сделвть видимым

Cross, это ведь тоже кроме как с помощью JS не сделать...

Цитата(Cross @  29.11.2006,  11:09 Найти цитируемый пост)
нужно передать очень много параметров в скрипт, а потом обратно в код PHP

Зачем? Что еще будет меняться, кроме размеров окна? Если ничего - то разве размеры надо передавать на сервер, разве они не высчитываются/задаются в самом PHP-скрипте?

Цитата(Cross @  29.11.2006,  11:09 Найти цитируемый пост)
придется делать лишний звпрос к БД, что недопустимо

Вполне допустимо - все зависит от задачи. Но скорее всего этого и не понадобится.


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
GZep
Дата 29.11.2006, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Cross, как прогулка на танке прошла, поняли? smile 
Цитата(Cross @  29.11.2006,  11:09 Найти цитируемый пост)
невидимый фрейм

А фрейм разве можно сделать как новое окошко? Или мне на танк? smile 


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
smartov
Дата 29.11.2006, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Cross
Цитата(Cross @  29.11.2006,  10:09 Найти цитируемый пост)
Ну я предполагаю, что можно создать невидимый фрейм, а при вызове <a href=...> задать его размеры и сделвть видимым. Это бы облегчило задачу передачи параметров. 
Если использовать JS - нужно передать очень много параметров в скрипт, а потом обратно в код PHP, а если передать один - два параметра - то придется делать лишний звпрос к БД, что недопустимо, т.к. слишком уж будет коряво... 

Ну вобщем, это мне дипломный руководитель задал такое задание - не использовать JS. Он почему-то считает, что без JS вполне можно обойтись в этой задаче. 

Пошли дипломного руководителя в песню. Скажи ему что open это такая функция HTML-я. Я думаю он тебе поверит, раз такие задачи даёт.

И никаких супер параметров тут нет. Не бойся того что ты генеришь одним языком другой язык. 
Смотри. По сути минимальный код для того, что тебе надо (200х200), таков:
Код

<a href="#" onclick="open('newpage.html', '', 'width=200,height=200')">Открыть в новом окне</a>


Специально для твоего руководителя минимальные намеки что это вообще-то не просто html smile Хотя на самом деле это можно назвать dhtml а не html+javascript.

Чтобы сгенерировать этот код PHP ничего особенного не надо
Код

<?php

#следующие три параметра можно например из базы прочитать или еще откуда, если надо
$width = '200';
$height = '200';
$url = 'newpage.html';

$html = <<<END
<a href="#" onclick="open('{$url}', '', 'width={$width},height={$height}')">Открыть в новом окне</a>
END;
echo $html;

?>

Вот и все.

А фрейм о нового окна кроме своего расположения ничем не отличается и работать с ним тебе не будет легче.

Это сообщение отредактировал(а) smartov - 29.11.2006, 13:12
PM MAIL   Вверх
Vaulter
Дата 29.11.2006, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 6
Всего: 22



не, ну можно сформировать псевдо окошко через
<div> сначала спрятанный а потом показывающийся.
но тут тоже будет JS.


--------------------
PM MAIL WWW ICQ   Вверх
smartov
Дата 29.11.2006, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Vaulter
Цитата(Vaulter @  29.11.2006,  12:32 Найти цитируемый пост)
не, ну можно сформировать псевдо окошко через
<div> сначала спрятанный а потом показывающийся.
но тут тоже будет JS. 

...причем гораздо более навороченый smile
PM MAIL   Вверх
NightmareZ
Дата 29.11.2006, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


[хакер]
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 10.8.2006

Репутация: 2
Всего: 13



Без JavaScript никак (VBScript в счёт не берём  smile )


--------------------
NightmareZ.net - мой блог и сайт, мои проекты и прочий трэш
Ely-Art.ru - наша маленькая домашняя арт-студия
mugcraft.ru - кружки на любой вкус
PM WWW ICQ Skype GTalk AOL YIM   Вверх
GZep
Дата 29.11.2006, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Цитата(NightmareZ @  29.11.2006,  15:42 Найти цитируемый пост)
VBScript в счёт не берём

Почему? Если хочешь, можно и на нем. smile 


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
NightmareZ
Дата 29.11.2006, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


[хакер]
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 10.8.2006

Репутация: 2
Всего: 13



Цитата(GZep @  29.11.2006,  17:26 Найти цитируемый пост)
Почему? Если хочешь, можно и на нем.  smile 

Только работать будет под IE.



--------------------
NightmareZ.net - мой блог и сайт, мои проекты и прочий трэш
Ely-Art.ru - наша маленькая домашняя арт-студия
mugcraft.ru - кружки на любой вкус
PM WWW ICQ Skype GTalk AOL YIM   Вверх
Cross
Дата 9.12.2006, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


информатик-аналитик
*


Профиль
Группа: Участник
Сообщений: 185
Регистрация: 2.6.2006
Где: Москва

Репутация: нет
Всего: 1



Спасибо за помощь, я поняла что без JS не обойтись, но все-таки буду генерировать окна в PHP, но естественно безразмерные. Так будет проще. Препода своего убедила, что иначе не получится.
А то у меня там в программе большая БД, и если использовать JS придется ему столько параметров передавать, что это будет совсем не эффективно...

Спасибо еще раз за помощь и полезные советы! 
Век живи - век учись!!!

PM MAIL ICQ Skype MSN   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1358 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.