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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: PHP & JavaScript- взаимодействие!!!
 
 автор: 3ABAPKA   (16.10.2008 в 07:57)   письмо автору
 
 

Есть JavaScript, который при клике на кнопке вызывает функцию, которая в свою очередь добавляет в table строку с содержимым (один клик одна строка).

Содержимое строки это <input type="text" id="name" name="name" value="" />

при этом id и name всегда совпадают если они находятся в доной строке (<tr><td>..инпут...</td></tr>).

при новом клике на кнопку (button) добовляется новая строка <input type="text" id="name" name="name" value="" />, только id и name новые.

отличие id и name разных строк это цифра которая прибавляется к переменной, отвечающей за имя, JavaScript_ом.

Вопрос, как при нажатии на кнопке submit, расположенной в этой же форме, получить в $_POST все value обращаясь к ним через name или id.

Или другими словами как написать такое $_POST['name...'] если name0, name1, name2, name3...

  Ответить  
 
 автор: sim5   (16.10.2008 в 08:41)   письмо автору
 
   для: 3ABAPKA   (16.10.2008 в 07:57)
 

key($_POST) даст вам клич массива поля полученной формы (id не передаются на сервер, только name). Обойдя массив в цикле, получите все ключи, в том числе и кнопки SUBMIT, если она имеет имя.

  Ответить  
 
 автор: 3ABAPKA   (16.10.2008 в 09:12)   письмо автору
 
   для: sim5   (16.10.2008 в 08:41)
 

Легко говорить знающему человеку!
Большая просьба, дайте ссылку на пример кода или ссылку на материал об этом!
А лучше всего задарите код?!

  Ответить  
 
 автор: sim5   (16.10.2008 в 09:17)   письмо автору
 
   для: 3ABAPKA   (16.10.2008 в 09:12)
 

Да не сложно, но может вам лучше давать имена как name[], не указывая индекс? Так удобнее обрабатывать массив. Если не пойдет, будет пример вам.)

  Ответить  
 
 автор: 3ABAPKA   (16.10.2008 в 09:56)   письмо автору
 
   для: sim5   (16.10.2008 в 09:17)
 

Про имена name[]:=======(если честно то не понял совсем)
если я правильно понял то
либо
1. это все одинаковые имена типа name0, name0, name0, name0...
либо
2. это имя состоящее из двух частей, первая часть у всех одинаковая например, name, а вторая - изменяемая и тогда волучается=name0, name1, name2...

Эти имена в дальнейшем будут присваиваться колонкам в MySQL. т.е. примерно так
_______________________________________________________________
|_____id ___|____name0____|___name1____|____name2____|__name 3___|
|__________|_____________|_____________|______________|___________|
надеюсь это похоже на таблицу

Поэтому я опасаюсь, что если у меня все имена будут одинакавы (см. п.1) то не получится создать таблицу

А второй вариант, где вторая половина имени изменяемая - меня больше устраивает (в принцепе я об этом и писал в первом своем сообщении, наверное, не правильно выразился).

sim5, если я вообще не правильно понял про
name[], не указывая индекс?

то прошу прощения!

  Ответить  
 
 автор: sim5   (16.10.2008 в 10:17)   письмо автору
 
   для: 3ABAPKA   (16.10.2008 в 09:56)
 

Ну получит в вашем случае имена полей не сложно:
<?
foreach($_POST as $key => $val) {
  if(
strstr($key"name")) echo $key " => " $val "<br>";
}

Но вот давать именам полей формы имена полей таблицы, я бы не стал.
Если вы даете всем полям имя как name[], то вы может обратиться только к этому массиву (в примере выше, вам нужно будет определять - является ли элемент массива ожидаемый вами) - $_POST['name'].

  Ответить  
 
 автор: 3ABAPKA   (16.10.2008 в 10:38)   письмо автору
 
   для: sim5   (16.10.2008 в 10:17)
 

Подтвердите пожалуйства правильно ли я понял приведенный код:

это function собирающая все значения отрибута name в данной form и потом выводящяя в столбик значения по порядку?

  Ответить  
 
 автор: sim5   (16.10.2008 в 11:49)   письмо автору
 
   для: 3ABAPKA   (16.10.2008 в 10:38)
 

Да, этот пример выведет имена полей формы и их значения по порядку.

Подтверждаю роспись 16 октября 2008 г. М.П. )

  Ответить  
 
 автор: 3ABAPKA   (16.10.2008 в 12:19)   письмо автору
 
   для: sim5   (16.10.2008 в 11:49)
 

О прикольно, теперь я все это в массив засуну, а из него то легко будет достать значение.
Спасибо огромное выручили!
Думаю теперь все у меня заработает.

Еще вопрос
sim5, это не вы мне рекомендовали вот эту книгу http://www.ozon.ru/context/detail/id/2847526/, чтоб не мучится с javascript_oм?

  Ответить  
 
 автор: sim5   (16.10.2008 в 12:35)   письмо автору
 
   для: 3ABAPKA   (16.10.2008 в 12:19)
 

Есть такая у меня, а я ли вам рекомендовал, вот этого я не помню.;-)

  Ответить  
 
 автор: 3ABAPKA   (16.10.2008 в 12:41)   письмо автору
 
   для: sim5   (16.10.2008 в 12:35)
 

Точно вы, я помню.
Просто я хотел во-первых сказать вам огромное спасибо за эту книгу, меня она очень выручает, а во-вторых, хотел просить порекомендовать литературу по РНР.

Спасибо огромное и за книгу и за практическую помощь не первый раз уже именно вы и выручаете.

  Ответить  
 
 автор: sim5   (16.10.2008 в 12:44)   письмо автору
 
   для: 3ABAPKA   (16.10.2008 в 12:41)
 

Литература по РНР указан в верху страницы форма - выбирайте.

  Ответить  
 
 автор: 3ABAPKA   (16.10.2008 в 12:49)   письмо автору
 
   для: sim5   (16.10.2008 в 12:44)
 

Еще раз спасибо огромное, я закажу одну из них.

  Ответить  
Rambler's Top100
вверх

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