Обработка формы (больше теоритический вопрос)

  • Автор темы Автор темы KorP
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

KorP

Новичок
Обработка формы (больше теоритический вопрос)

есть форма для работы с картинками, есть для каждой записи поля для заполнения и несколько чекбоксов для выполнения различных действий. вопрос - каким образом указать скрипту в каком случае как обрабатывать форму в зависимости от установленных чекбоксов или заполненных полей, или если указано сразу несколько действий? пока на ум приходит только JS, но это для меня дебри, есть ли способ на php?
 
Mr_Max
вы себе на практике хорошо представляете как это получится? пробовал через if - ничего хорошего, в любом случае текстовые поля буду всегда передавать те значения которые будут выбираться из базы, соответственно и значение будет больше нуля, перезаписывать? 100 значений? ИМХО не круто даже для меня
 
пока на ум приходит только JS
В самом деле?
1. на какой стороне у нас работает JS?
2. На куда отправляется форма?

-~{}~ 14.08.07 22:18:

KorP
Пожалуйста, сформулируйте Ваш вопрос "на более практической задаче"
 
Автор оригинала: Mr_Max
В самом деле?
скрипт, проверяющий заполненность/редактирование полей в форме и соответственно посылающий к нужному обработчику, как то так...

Автор оригинала: Mr_Max Пожалуйста, сформулируйте Ваш вопрос "на более практической задаче"
таблица для работы с файлами:
имя файла / подпись (текстовое поле) / сортировка (текстовое поле) / действие 1 (чекбокс) / действие 2 (чекбокс)

и много-много записей в этой таблице, ну и собственно одна кнопка на всё - сохранить изменения, вот и вопрос - как обрабатывать эту форму, не сам процесс, а как указать - в каком случае как обратывать, сейчас сделал через if и работает несколько не так, как должно по задумке
 
ох уж эти задачи высосанные из пальца...
скрипт, проверяющий заполненность
На стороне клиента -
http://tetlaw.id.au/view/javascript/really-easy-field-validation


и много-много записей в этой таблице
А вот нет.
Есть массив записей
$file['name']['1']
$file['size']['1']
$file['action_1']['1']
$file['action_2']['1']
.........................
.........................
$file['name']['N']
$file['size']['N']
$file['action_1']['N']
$file['action_2']['N']

по которому нужно "пройтись". с Вашыми условиями.

-~{}~ 14.08.07 22:37:

и много-много записей в этой таблице
Вам неизвестно только количество файлов в директории.
а вот действия известны заранее
 
Автор оригинала: Mr_Max
ох уж эти задачи высосанные из пальца...
почему? можно как то по другому реализовать? редактирование каждой записи отдельно не рассматривается
пойду запасусь словарём и поизучаю
Автор оригинала: Mr_Max
А вот нет.
Есть массив записей
$file['name']['1']
$file['size']['1']
$file['action_1']['1']
$file['action_2']['1']
.........................
.........................
$file['name']['N']
$file['size']['N']
$file['action_1']['N']
$file['action_2']['N']

по которому нужно "пройтись". с Вашыми условиями.
ну допустим условие - if ($p_alt > '0') или if ($p_alt != '100') то записываем значение в БД (100 это значение для поля по умолчанию), а это значение в большинстве случаев будет отличаться от 100 и уж всегда будет больше чем 0, так же и с остальными полями, только с чекбоксами проще, ибо значения может быть всего 2
 
KorP
ты не мог бы объяснить, чем обработка ста строк отличается от обработки одной строки?
и что именно вызвало у тебя такие чудовищные проблемы?
 
KorP
1. Я без понятия что Вы делаете и могу лишь предполагать что Вы делаете.

Ваша задача с файлами - это
- несколько условий "завёрнутых" в цикл.

PHP:
$file['1']['name'];
$file['1']['act_delete'];
...........................
$file['N']['name'];
$file['N']['act_delete'];

foreach ($file as $k=>$f){
     if (isset ($f['act_delete'])){
        // удаляем файл.
    }
}
 
я сами файлы только удаляю, в основном это редактирование данных о файле - подпись, порядок сортировки и т.д. - работа с БД. получаю я допустим массив из текстовых полей p_alt с сотней записей, из них изменили отлько одну (это как сейчас и как вы предлагаете) - апдейтить в базе приходится все 100 записей, а не ту единственную, которую изменили

-~{}~ 15.08.07 00:28:

*****
сама обработка - ничего, я пытаюсь понять - как выбрать для обработки только нужные строки! не просто те, где есть данные, а там где данные изменялись
 
Если данные не изменились Мускул ничего обновлять не будет. Это во первых

-~{}~ 14.08.07 23:41:

как выбрать для обработки только нужные строки
Ну раз на "кошерность" потянуло.
Например по клике в текстовом поле опсания файла "зажижать" флаг on_change

После поста данных смотреть "горит" ли этот флаг.
 
Автор оригинала: Mr_Max
Если данные не изменились Мускул ничего обновлять не будет.
да? хм...нигде этого в манах не встречал...спасибо, тогда это в принципе решает проблему
Автор оригинала: Mr_Max
Например по клике в текстовом поле опсания файла "зажижать" флаг on_change
После поста данных смотреть данный флаг.
вот, это уже ближе к тому что я хотел, спасибо - покручу

спасибо за помощь, думаю дальше уже справлюсь
 
да? хм...нигде этого в манах не встречал...спасибо, тогда это в принципе решает проблему
mysql_query("your_update_query");
printf ("Records: %d\n", mysql_affected_rows());
 
Вы сами то поняли задачу?
Вы хотите с помощью ПХП решить обработку данных на стороне клиента?
А ещё что хотите? Я волшебник, могу и вместо корыта на трон вас посадить...
 
cDLEON
А вот хамить не следует. Это раз
Обратите, пожалуйста, внимание, 4-й пост этом топике. Это два.
Ещё вопросы есть?

-~{}~ 15.08.07 02:35:

И ещё раз топик перечитайте
только _Внимательно_

-~{}~ 15.08.07 02:37:

ы хотите с помощью ПХП решить обработку данных на стороне клиента?
на стороне клиента лишь JS-скриптом "зажигаем" флаги, которые после поста формы "говорят" пхп что, возможно, некоторые поля изменились.
 
Mr_Max
Вы конечно извените меня за грубость, но не говорите мне что делать и я не скажу куда вам идти.
В моём ответе нет хамства. Всё конкретно и на ВЫ.
---
По поводу топа:
Вот вопрос:
пока на ум приходит только JS, но это для меня дебри, есть ли способ на php?
Так вот. Своим ответом я хотел сказать, что в любом случае при обработке с помощью ПХП нужно будет отправлять ВСЕ данные на сервер.
Следовательно - извлекать ВСЕ данные для сравнения. Либо обдейтить все поля без сравнения.
 
cDLEON
но не говорите мне что делать и я не скажу куда вам идти.
+1. В вашу сторону.

что в любом случае при обработке с помощью ПХП нужно будет отправлять ВСЕ данные на сервер.
В особо извращённых случаях как этот можно ПОСТОМ НЕ ОТСЫЛАТЬ ВСЕ ДАННЫЕ. Для этого есть JS-скрипт+disabled+onSubmit
 
Тема закрыта.

Проблемы личного характера и бессмысленные споры между участниками не являются предметом обсуждения форума.
Обсуждайте их в привате.

-~{}~ 15.08.07 07:09:

блин. очередной страдалец
которому надо обязательно обработать за раз 100 полей в форме (по одному не рассматривается!)
но которого ужасает 100 апдейтов.
и стоит он, такой, враскоряку, пока ему пинка на форуме не дадут.

вот блин, откуда берутся такие теоретики?
которые сами себе ставят задачу, которая их же самих в тупик и заводит?

причем в самом вопросе об этих проблемах - ни слова.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху