Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: По нажатию кнопки - данные двум обработчикам.

Сообщения:  [1-10]   [11-13] 

 
 автор: mihdan   (07.02.2007 в 12:02)   письмо автору
 
   для: ZuArt   (06.02.2007 в 11:30)
 

Попробуй через JS

<script>
function foo(form) {
    document.form.action = 'first.php';
    document.form.submit();
    document.form.action = 'second.php';
    document.form.submit();
}
</scrip>
<form>
foo
bar
<input type="button" onclick="foo(this.form);">
</form>

   
 
 автор: ZuArt   (06.02.2007 в 11:30)   письмо автору
 
   для: Loki   (06.02.2007 в 11:16)
 

"Это один обработчик. А сколько он в себя файлов включает - формы не касается." - вот про то и говорю =)

"обработчики находятся на разных сайтах" - ну что тут скажешь - ХЗ, т.к. сталкивался с такими случаями, когда скрипт с другого хостера можно и инклюдить, но в большинстве случаев тока через сокеты =(

Если оригинальный обработчик не юзает переменные типа указанного выше REMOTE_ADDR - то вполне возможно, просто придется к вызову скрипта еще и параметры $_GET + $_POST (может еще и кукисы) передавать =(... Тут уже зависит от кода основного скрипта.

   
 
 автор: Loki   (06.02.2007 в 11:16)   письмо автору
 
   для: ZuArt   (06.02.2007 в 11:09)
 

Это один обработчик. А сколько он в себя файлов включает - формы не касается.
Как ваш код будет работать если обработчики находятся на разных сайтах, например?

   
 
 автор: ZuArt   (06.02.2007 в 11:09)   письмо автору
 
   для: Trianon   (06.02.2007 в 10:58)
 

С какого перепугу такая уверенность? оператор include изучали? как он работает в курсе???
Объясню - интерпретатор при обнаружении данного оператора обращается к указанному скрипту и выполняет ЕГО код последовательно до момента завершения работы скрипта, затем возвращается в первый скрипт... Соответственно, если не менять переменные окружения, то они остануться теми, которые и должны быть... Кроме тех, которые содержат в себе имя доп скрипта, но ничего не мешает их переназначить на нужные...

принцип работы...

в странице было: <form action="script.php">...</form>
делаем <form action="script2.php">...</form>

содержание script2.php
<?
дополнительный код, который необходимо выполнить - БЕЗ изменения переменных окружения
замена переменных типа $_SERVER["SCRIPT_NAME"] - имя script2.php заменяем на scrip.php

include ("script.php");
?>

   
 
 автор: Trianon   (06.02.2007 в 10:58)   письмо автору
 
   для: ZuArt   (06.02.2007 в 10:55)
 

Основному скрипту придут некорректные данные клиента. Как минимум - REMOTE_ADDR

   
 
 автор: ZuArt   (06.02.2007 в 10:55)   письмо автору
 
   для: Trianon   (06.02.2007 в 10:49)
 

Отвечаю - читай внимательно - промежуточных СТРАНИЦ!!! Второй скрипт и не будет ничего выводить - отработал втихую и передал управление первому (основному), который уже и будет выводить СТРАНИЦУ!!!

Страница - это то, что отображает браузер - а скриптов, которые могут создавать ОДНУ страницу может быть сколько угодно и каждый может выполнять свою функцию!

   
 
 автор: Trianon   (06.02.2007 в 10:49)   письмо автору
 
   для: ZuArt   (06.02.2007 в 10:47)
 

Внимательно читайте постановку задачи:

... без дополнительных нажатий (промежуточных страниц) передавались ....

   
 
 автор: ZuArt   (06.02.2007 в 10:47)   письмо автору
 
   для: Trianon   (06.02.2007 в 10:44)
 

что не выйдет =) ты ж конкретнее говори - если про JS - так я сразу сказал, что не прокатит (а сомнения и надежду на "прокатит" никто не отменял)... а вот если ты про переопределение обработчика - то уж будь любезен обосновать =) - мне и самому интересно, почему нет.

   
 
 автор: Trianon   (06.02.2007 в 10:44)   письмо автору
 
   для: Gandzas   (06.02.2007 в 02:08)
 

Нет. Не выйдет.

   
 
 автор: ZuArt   (06.02.2007 в 09:50)   письмо автору
 
   для: Gandzas   (06.02.2007 в 02:26)
 

А почему нет? просто в код формы регистрации переназначить обработчик с первого на второй и уже во втором обработчике вызывать первый - инклудом или через сокеты - что ближе.
ну или как вариант - можно попробовать просто JS-скриптами сабмитить с переназначением обработчика после первого сабмита, но думаю, что не прокатит =((( все-таки не многопоточность ;)

   

Сообщения:  [1-10]   [11-13] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования