2011-04-21 3 views
0

См. Код в этом pastebin: http://pastebin.com/5gKwb7giPHP/MySQL - как объединить переменные из отдельных форм для построения запроса?

Это довольно много кода, но я думаю, что все ваши гуру здесь поймут это!

В принципе, я только что смутил себя, у меня была форма поиска, и затем я создал расширенную форму поиска, которая является динамической.

Я только что закончил, и теперь я пытаюсь включить простые поисковые критерии (если они заполнены) в расширенном поисковом запросе, но, очевидно, эти переменные никогда не устанавливаются, потому что простая форма поиска никогда не отправляется: S

Есть ли у кого-нибудь подсказки, советы или идеи о том, что делать? Не уверен, хочу ли я объединить формы или нет, поэтому я был бы признателен за некоторые советы и мнения.

Спасибо.

ответ

0

Если кто читает этот вопрос, и хотел бы знать, как я решил, я использовал скрытые входы и некоторое JQuery копировать значения из простой формы поиска, скрытых входы так:

<input type="hidden" name="hiddenfilename" id="hiddenfilename"/> 
<input type="hidden" name="hiddenfilesize_min" id="hiddenfilesize_min"/> 
<input type="hidden" name="hiddenfilesize_max" id="hiddenfilesize_max"/> 
//etc 

<script type="text/javascript"> 
$("#filename").change(copyFilename); 
$("#filesize_min").change(copyFileSizeMin); 
$("#filesize_max").change(copyFileSizeMax); 

function copyFilename() 
{ 
    var valueToCopy=$("#filename").val(); 
    $("#hiddenfilename").val(valueToCopy); 
} 

function copyFileSizeMin() 
{ 
    var valueToCopy=$("#filesize_min").val(); 
    $("#hiddenfilesize_min").val(valueToCopy); 
} 

function copyFileSizeMax() 
{ 
    var valueToCopy=$("#filesize_max").val(); 
    $("#hiddenfilesize_max").val(valueToCopy); 
} 
</script> 
-1

Я не буду читать 600 строк кода, которые помогут вам. Сделайте пример меньшим, чтобы вы могли выразить его несколькими словами и менее 50 строк. Это всегда возможно! Во всяком случае, я отвечаю из того, что я читаю здесь без кода.

Если вы хотите получить данные для многостраничной формы, у вас есть несколько вариантов. Вы можете оценить каждую страницу на стороне вашего сервера форм, а затем просто вернуть их туда, где вы хотите иметь их на втором этапе (используйте скрытые теги импорта для переменных, которые не должны отображаться). Другой выбор - поместить значения в файл cookie и оттуда оттуда, когда вам это нужно. Также вы можете изменить структуру своей формы с помощью Javascript в соответствии с пользовательскими вводами, а затем просто отправить все это, когда он закончит (возможно, за AJAX). Самый простой, но часто и самый элегантный - первый. В учебных целях я советую этому. Объединение файлов cookie и AJAX должно быть самым высоким и наиболее часто используемым, но также самым сложным, потому что вам нужно узнать, как ваш сервер и ваш PHP-код обрабатывают файлы cookie, а также как правильно применять Javascript.