Решил сделать редактирование полей базы данных с помощью ajax, на страницу находятся порядка 16 инпутов вида HTML: <input type="text" value"" name="ups_1"> <input type="text" value"" name="nik_1"> <input type="text" value"" name="ups_2"> <input type="text" value"" name="nik_2"> <input type="text" value"" name="ups_3"> <input type="text" value"" name="nik_3"> <input type="text" value"" name="ups_4"> <input type="text" value"" name="nik_4"> ........ При записи в инпут информации, скажем в 5 группке инпутов, POST передается из первого инпута т.е. Пишу сюда <input type="text" value"" name="ups_4"> А берет информацию от сюда <input type="text" value"" name="ups_1"> Как можно сделать чтобы ПОСТ передавал данные именно с той формы в которой я его изменяю, а не с первый. Я с js совсем не знаком и не могу никак решить свою проблему (
Если честно не совсем понял, что тебе надо. Во первых не value"", а value="". Во вторых для нормальной работы надо проставить везде id="ups_...". Теперь с JS <input type="text" value="" name="ups_4" id="ups_4" onFocus="if (this.value=='') {this.value=document.getElementById('ups_1').value;}" /> т.е. при входе в поле input проверяется что поле пустое и берется значение из другого поля.
Ты никак не можешь описать свою проблему, что там "решить". Давай так: мы поняли что на странице у тебя чемодан инпутов, сгруппированных попарно. Теперь опиши 1. как должно работать, чего ты хочешь добиться 2. как работает сейчас, что именно неправильно
У меня не работает, думаю я что то не так делаю. По работе вот наглядный пример того что есть Получается что при отправке данных в файл, берется ups и nik с первой формы и получается что ups =4 а nik =0 А должно быть так ups=3 nik=6 подключаю на странице так PHP: form method="POST" action="file.php" OnSubmit="sendRequest(); return false"> <input id="ups_'.$r['id'].'" value="'.$r['id'].'" type="hidden" name="id"> <input id="nik_'.$r['id'].'" value="" type="text" name="p"> <input type="submit" value="Ок"> В файле file.php принимаю значения пост так PHP: $p = intval($_POST['p']); $id = intval($_POST['id']); Т.е. скрипт то со своей стороны правильно работает, но он берет данные не и того поля от куда надо.
Уже потерял его, нашел код где то, теперь потерял его У меня сейчас гетом все передается, но хочется то лучшего, чтобы было так как хочу, буду продолжать искать что то или уже в ajax изучать надо, пишут не сложно, но для меня пока дремучий лес, никогда со скриптами не работал, впрочем как и с php. Может есть у кого готовое решение, буду благодарен если выложите, а я пошел искать дальше, если найду что то стоящее, выложу. karakh, как найду выложу. Я вот только думаю что нужно создать какой то файл .js в него прописать условие (определение постов) и ссылку на обработчик php, думаю тогда все приниматься будет, только вот найти надо. Да забыл написать, формы разные, ну по айди, ну это тоже самое что редактирование новостей на сайте.
Итак: в каждой форме есть два скрытых инпута - с именами p и id. А еще там есть не скрытые инпуты - у них точно другие значения атрибутов name?
есть один скрытый инпут и один открыты как на скриншоте. они идут парами. Вот мне нужно сделать так чтобы name было разным, но при этом я не знаю как это поле передать скриптом в пост Вот смотрите получается так: PHP: <input type="hidden" value="<?=r['id'];?>" name="ups_<?=r['id'];?>"> <input type="text" value="" name="nik_<?=r['id'];?>"> <input type="hidden" value="<?=r['id'];?>" name="ups_<?=r['id'];?>"> <input type="text" value="" name="nik_<?=r['id'];?>"> в html выглядит так HTML: <input type="hidden" value="1" name="ups_1"> <input type="text" value="тут что напишем" name="nik_1"> <input type="hidden" value="2" name="ups_2"> <input type="text" value="тут что напишем" name="nik_2"> Постом в обработчике принимаю PHP: $ups = $_POST['ups']; $nik = $_POST['nik']; Вот и не хватает самого важного =) аякса, который возьмет два поля, к пример ups_2 и nik_2 и передать их value в обработчик У меня просто никак это не получается, не могу сделать такой скрипт (
HTML: <input type="hidden" value="1" name="ups[]"> <input type="text" value="тут что напишем" name="nik[]"> ..... <input type="hidden" value="2" name="ups[]"> <input type="text" value="тут что напишем22222" name="nik[]"> На сервере получаем массив nik + ups
ну потому что если я его буду принимать так $_POST['ups_1'] то мне придется в обработчике делать порядка 100 $_POST['ups'] вида PHP: $_POST['ups_1'] $_POST['ups_2'] $_POST['ups_3'] $_POST['ups_4'] $_POST['ups_5'] $_POST['ups_6'] это же не разумно. zebra, а как его скриптом передать в обработчик? Это у меня и не получается (