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


Автор: proger 29.1.2006, 09:48
Здрасти, делаю так:
Код

echo "<iframe name=mod frameborder=\"0\"
src=\test.php?param1=1&param2=2\" scrolling=\"auto\" width=100% height=100%></iframe>";

Вот как обратиться к param1 и param2 т.е. прочитать их значения во фрейме, $_POST и $_GET не работает, $param1 - тоже не работает!

Автор: Illuminaty 29.1.2006, 12:08
переменные нужно обработать у клиента или на сервере?
если у клиента, то используй JavaScript.
если на сервере, то поясни, что ты вообще хочешь сделать...

Автор: fara 29.1.2006, 12:14
На всякий случай проверь HTML-код, т.е. момент где src=\test.php?param=1\"

И поставь для начала один параметр,т.е. test.php?param=1
В test.php делай:
echo "<pre>";
var_dump($_REQUEST);

Автор: Mal Hack 29.1.2006, 12:23
Цитата(proger @ 29.1.2006, 09:48)
Здрасти, делаю так:
Код

echo "<iframe name=mod frameborder=\"0\"
src=\test.php?param1=1&param2=2\" scrolling=\"auto\" width=100% height=100%></iframe>";

Вот как обратиться к param1 и param2 т.е. прочитать их значения во фрейме, $_POST и $_GET не работает, $param1 - тоже не работает!

Ну а что ты хочешь. Смотрим кусок кода, который получим в гипертексте:
Цитата
src= est.php?param1=1&param2=2"

Ты перед test забыл ".

Автор: proger 29.1.2006, 12:58
Mal Hack
Исправил, но в ифрейме в скрипте все равно не могу считать!

Автор: Mal Hack 29.1.2006, 13:04
Цитата(proger @ 29.1.2006, 12:58 Найти цитируемый пост)

Исправил, но в ифрейме в скрипте все равно не могу считать!

Ищи ошибку, где ты ПЕРЕДАЕШЬ данные.

Автор: Illuminaty 29.1.2006, 13:10
proger, ты у КЛИЕНТА (браузере) пытаешься получить данные или в скрипте на сервере?

Автор: proger 29.1.2006, 13:47
На пхп пишу код:
Код

echo "<iframe name=mod frameborder=\"0\"
src=\"test.php?param1=1&param2=2\" scrolling=\"auto\" width=100% height=100%></iframe>";

И на странице test.php пытаюсь считать чему равны param1 и param2, но не получается!

Автор: Ciber SLasH 29.1.2006, 14:29
Цитата(proger @ 29.1.2006, 13:47 Найти цитируемый пост)
И на странице test.php пытаюсь считать чему равны param1 и param2, но не получается!

Ты никак не поймёшь, что страница обрабатывается дважды: один раз на сервере, второй раз на клиенте.
Соответственно, на сервере GET-параметры проверяется так (PHP): echo $_GET['param1'];
на клиенте так (JavaScript): alert(unescape(location.search)); // вернётся вся строка запроса

Автор: proger 29.1.2006, 14:36
Ciber SLasH
echo $_GET['param1']; - не работает!

Автор: Ciber SLasH 29.1.2006, 14:45
Что-то мне подсказывает, что у тебя где-то ошибка в скриптах.
Выкладывай полные скрипты (серверный (PHP) и клиентский (HTML+JS)) и будем решать.

Автор: proger 29.1.2006, 15:08
Нас транице пишу:
Код

function opens(stroka,h,v){
 window.status="";
strFeatures="dialogWidth="+h+"px;dialogHeight="+v+"px;scrollbars=yes;center=yes;border=thin;help=no;status=no";
 rez=window.showModalDialog(stroka,"NewWindows",strFeatures);
}

Код

opens('inc/system/modaldialog.php?mod=alldostupny/ndscalculationtypescroller.php?vstavka=Y&win=modal&fil=off&otm=true',600,300);

ФАЙЛ modaldialog.php
Код

echo "<iframe name=mod frameborder=\"0\"
src=\"".$_GET["mod"]."\" scrolling=\"auto\" width=100% height=100%></iframe>";

В файле пишу ndscalculationtypescroller.php:
Код

echo $_GET["otm"];

А он пишет что она не найдена!

Автор: Mal Hack 29.1.2006, 15:34
Цитата(proger @ 29.1.2006, 15:08 Найти цитируемый пост)

opens('inc/system/modaldialog.php?mod=alldostupny/ndscalculationtypescroller.php?vstavka=Y&win=modal&fil=off&otm=true',600,300);

У тебя тут два ? поэтому и не видит... Скорее всего.

Автор: Ciber SLasH 29.1.2006, 15:43
Цитата(Mal Hack @ 29.1.2006, 15:34 Найти цитируемый пост)
У тебя тут два ? поэтому и не видит... Скорее всего.

Во-во, ты меня опередил, я тока хотел сказать.

Нужно так:
test.htm:
Код

<script type='text/javascript'>
function opens(stroka, h, v){
    strFeatures = "dialogWidth="+h+"px;dialogHeight="+v+"px;scrollbars=yes;center=yes;border=thin;help=no;status=no";
    rez = window.showModalDialog(stroka, "NewWindows", strFeatures);
}
opens('modaldialog.php?mod=ndscalculationtypescroller.php&mod_vstavka=Y&mod_win=modal&mod_fil=off&mod_otm=true',600,300);
</script>

modaldialog.php:
Код

<?php
//echo '<h1>modaldialog.php</h1><br><pre>'.print_r($_GET, true).'</pre>';
$request = '?';
foreach ($_GET as $key => $value) {
    if (strpos($key, 'mod_') !== false) {
        $request .= $key.'='.$value.'&';
    }
}
rtrim($request, '&');
echo '<iframe name="mod" frameborder="0" src="'.$_GET['mod'].$request.'" scrolling="auto" width="100%" height="100%"></iframe>';
?>

ndscalculationtypescroller.php:
Код

<h1>ndscalculationtypescroller.php</h1>
<pre>
<?php
print_r($_GET);
?>
</pre>

Добавлено @ 15:44
Тока не ясно почему эта тема попала в "Профессиональную разработку" ?

Автор: IZ@TOP 30.1.2006, 09:35
Вы не издевайтесь, эта тема по моему к проф. разработке ни как относиться не может... перемещаю.

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