За последние 24 часа нас посетили 22624 программиста и 1546 роботов. Сейчас ищут 916 программистов ...

Передача данных из другой формы

Тема в разделе "PHP для новичков", создана пользователем Howl, 6 дек 2010.

  1. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    Доброго времени суток.

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

    вот надо с формы № 1 передать имя аватары на форму № 2.

    как это можно сделать?

    P.S. формы находятся на разных страницах
     
  2. rainarr

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

    С нами с:
    20 ноя 2010
    Сообщения:
    276
    Симпатии:
    0
    а как это у тебя разные (две) страницы находятся на одной, там ифрейм или всплывающее окно?
     
  3. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    да нет... одна страница - одна вкладка, вот надо со второй формы (которая находится на другой вкладке) отправить данные на первую
     
  4. siiXth

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

    С нами с:
    14 мар 2010
    Сообщения:
    1.447
    Симпатии:
    1
    тут где-то нестыковочка :>
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    браузерам не позволяется знать имя файла, который выбрал человек в инпуте типа файл.
    сначала надо загрузить на сервер.

    если вы про такой случай
     
  6. runner

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

    С нами с:
    16 апр 2010
    Сообщения:
    343
    Симпатии:
    1
    Адрес:
    Ташкент
    у тебя наверняка какой-то скрипт обрабатывает первую форму. Так вот, после обработки первой формы сделай редирект на страницу со второй формой. Сам аватар отправляй как GET переменную:
    PHP:
    1.  
    2. // после обработки первой формы
    3.  
    4.     header ('second_form.php?avatar= твой аватар');
    5.  
    чтобы это сработало не должно быть никакого вывода в первом скрипте.
    Если же вывод есть, то можно через сессионную переменную
    PHP:
    1.  
    2. // после обработки первой формы
    3.  
    4.    $_SESSION['avatar']= 'твой аватар';
    5.  
     
  7. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    siiXth
    эт я выразился не так :) я имел в виду форму, говоря про страницу...

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

    runner
    вот с
    PHP:
    1. header ('second_form.php?avatar= твой аватар');
    можно подробнее?
     
  8. runner

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

    С нами с:
    16 апр 2010
    Сообщения:
    343
    Симпатии:
    1
    Адрес:
    Ташкент
    PHP:
    1.  
    2. header ('second_form.php?avatar= твой аватар');
    3.  
    Так ты переходишь на страницу со второй формой.
    second_form.php- это условное название твоего скрипта со второй формой
    в GET переменной avatar передаешь выбранное значение avatar
     
  9. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    тогда не подходит, по-крайней мере я еще не в таком отчаянии, чтобы отрекаться от задумки :)

    в общем, суть задумки такова: юзер открыл страницу регистрации, выводим ему форму(главный скрипт):
    1. поле для аватара (сюда должен записаться выбор юзера)
    2. логин
    3. пароль
    4. е-мыло

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

    но беда в том, что передать параметры не могу, т.к. в первом случае (как предлагает runner) нужно делать "пошаговую" регистрацию, а во втором нужен скрипт "умнее", который сразу ловит нужную ему информацию и вписывает в соответствующие поля, и, похоже, здесь одним PHP не обойтись.

    P.S. вот теперь я в отчаянии :D но не хочу делать пошаговую регистрацию... наверное, единственный выход - создать отдельную сессию и вписывать в нее путь
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    яваскриптом банальным =)
     
  11. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    я его не знаю
     
  12. runner

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

    С нами с:
    16 апр 2010
    Сообщения:
    343
    Симпатии:
    1
    Адрес:
    Ташкент
    как бы ты не называл, у тебя всегда четыре ситуации, требующие разных действий и разного вывода

    1 начальная ситуация - вывод начальной формы
    2 ситуация пользователь кликнул на кнопке выбрать-> показать форму выбора аватара
    3 ситуация пользователь выбрал аватар-> переход к форме регистрации с выбранным аватаром
    4 пользователь завершил регистрацию-> данные в базу и т.д.


    Так вот, можно объединить две формы в одном скрипте и ввести сессионную переменную для хранения текущей ситуации. Используя эту переменную и проверки нажаты ли кнопки, определяешь какая у тебя ситуация и действуешь в соответствии с ней
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    "я его не знаю" это хорошая причина познакомитьс с jquery
    там все очень просто. уложишься в три строки.
     
  14. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    runner, спасибо за варианты решения проблемы :)

    использовал сессионные переменные, теперь осталось сделать динамическое заполнение инпута для аватара в главной форме, пойду рыть в с торону jquery
     
  15. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    мляха буха еще одна криворукая поделка. а веб два ноль - ф топку. у нас в роиссе он не в почете.


    тебе что сложно освоить яваскрипт за 20 минут написать четыре строки? неужели настолько труслив? или настолько ленив? =)
     
  16. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    igordata
    я бы освоил, но нет такого курса, который научит яве за 20 минут
     
  17. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    есть. на jquery.com
    даже за пять. и даже за три. быстрее просто не скопипастишь.
     
  18. Howl

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

    С нами с:
    16 фев 2010
    Сообщения:
    90
    Симпатии:
    0
    о... ну, тогда я пошел осваивать :D

    спасибо.
     
  19. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    HTML:
    1.  
    2. <img src="путь к картинке" name='avtar12' onclick="
    3. $('#puthere').text($(this).attr('name'));
    4. ">
    5. <div id='puthere'></div>
    6.  
    как-то так