Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) [1] 2  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> отправка методом пост, как отправить методом пост через таблицу
leonw  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 108
Пользователь №: 40712
На форуме: 2 года, 6 месяцев, 21 день
Карма:




Здравствуйте! можете подсказать как передать данные которые находятся в таблице?
пр: выбрал я номер 2 и 4 и их передал или 3 и 4 и их передал..

<form name="sender" method="post" action="send.php">
<table>
<tr>
<td
name=name1 value=111 id=222>1</td>
<td
name=name1 value=333 id=444>2</td>
<td
name=name1 value=555 id=666>3</td>
<td
name=name1 value=777 id=888>4</td>
</tr>
</table>
<input
type="submit" name="submit" value="Отправить">
</form>



<?php
if($_POST['submit'])
{
$name1 = substr(htmlspecialchars(trim($_POST['name1'])), 0, 100);
echo "$name1";
exit;
}
?>
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1318
Пользователь №: 41686
На форуме: 1 год, 11 месяцев, 16 дней
Карма: 24




Боюсь только через JavaScript, причем его сложность зависит от интерфейса, который вы хотите реализовать. Ну или подписывать к каждой строке/полю checkbox. Если таблица большая, то идея не самая лучшая.



--------------------
5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15395
Пользователь №: 4190
На форуме: 9 лет, 5 месяцев, 18 дней
Карма: 470




Ron, какой JS... ТС даже HTML не понимает, ему основы нужны.

leonw, просто используй массив checkbox-ов. И тогда ты получишь на сервере только те чек-боксы, которые были отмечены. И они будут сгруппированы под одним именем, которое ты им задашь.
То есть, короче говоря, почитай основы HTML, чтобы использовать правильные элементы внутри формы. Таблица <table> нужна для визуализации данных, а для работы с данными существуют <input>, <select>, <textarea>....

Цитата (leonw @ 7.01.2016 - 23:49)
echo "$name1";

Ты можешь объяснить, зачем тут двойные кавычки поставил?

Это сообщение отредактировал sergeiss - 8.01.2016 - 01:09


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1318
Пользователь №: 41686
На форуме: 1 год, 11 месяцев, 16 дней
Карма: 24




А если таблица содержит 1000 ячеек, что может быть вполне реальной цифрой?
Нагрузка на браузер вероятно станет неадекватной. Раньше подобная проблема существовала и наблюдались некислые тормоза при большом количестве элементов формы.


--------------------
5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15395
Пользователь №: 4190
На форуме: 9 лет, 5 месяцев, 18 дней
Карма: 470




Ron, а какая разница, через форму ты отправляешь или еще как? Количество данных все равно будет одинаковое smile.gif


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1318
Пользователь №: 41686
На форуме: 1 год, 11 месяцев, 16 дней
Карма: 24




Вопрос чисто в ресурсах браузера, отрисовать 1000 чекбоксов хрен знает сколько сожрет мощности. Особенно на телефоне. Если таблица небольшая, почему бы и нет. Только без JS все-равно будет выглядеть отвратно скучно. Раз уж вовлекать яваскрипт, то сделать как следует. Тоглить бэкграунд выбранной ячейки, собрать объект и отправить его одним инпутом JSON строкой. Или вообще AJAX-ом, тут от интерфейса зависит.

Я бы так сделал! ) Неочень сложно ведь. biggrin.gif


--------------------
5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15395
Пользователь №: 4190
На форуме: 9 лет, 5 месяцев, 18 дней
Карма: 470




Ron, проведи эксперимент smile.gif Сделай и так, и эдак. Замерь время (и оцени, сколько кода придется написать в том и другом случаях). Можешь выложить это на какой-нибудь общедоступный ресурс, чтобы форумчане могли оценить твои изыски. Вот это будет разговор по делу. А пока он на уровне "мне кажется". Вот мне кажется, что отрисовать 1000 чекбоксов чисто средствами браузера будет быстрее, чем нарисовать эти чекбоксы внутри ячеек таблицы средствами JS. Что касается отправки на сервер, так вообще без разницы должно быть.
И кстати, если на реальной, а не на тестовой странице на самом деле будет 1000 чекбоксов, то за такое надо руки отрывать дизайнеру wink.gif


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
[x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1318
Пользователь №: 41686
На форуме: 1 год, 11 месяцев, 16 дней
Карма: 24




Цитата (sergeiss @ 8.01.2016 - 01:56)
Вот мне кажется, что отрисовать 1000 чекбоксов чисто средствами браузера будет быстрее, чем нарисовать эти чекбоксы внутри ячеек таблицы средствами JS.

Я вот об этом:
грубая наметка, допилить под конкретную задачу.
<!DOCTYPE html>
<
html>
<
head>
<
title>DEMO</title>
<
meta charset="UTF-8">

<
style>
.
t{border-spacing: 5px;}
.t td{border: 1px solid black;cursor: pointer;
-
webkit-user-select: none;-moz-user-select: none;
-
ms-user-select: none;user-select: none;}
.active{background: LightGreen;}
</style>

</
head>

<
body>
<
script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

<?php
if(!empty($_POST['content']))
{
$result = json_decode($_POST['content'], true);
print_r($result);
}
?>

<table class="t">
<
tr>
<
td data-name="col1" data-value="1">Ячейка №1</td>
<
td data-name="col2" data-value="2">Ячейка №2</td>
</
tr>
<
tr>
<
td data-name="col3" data-value="3">Ячейка №3</td>
<
td data-name="col4" data-value="4">Ячейка №4</td>
</
tr>
</
table>

<
form id="frm" action="" method="POST">
<
input type="hidden" name="content" value="" />
<
button type="submit">Сохранить</button>
</
form>

<
script>
(
function(){
var obj = {};

$('td').on('click', function(){
var name = $(this).attr('data-name');

if(obj.hasOwnProperty(name)){
delete obj[name];
}
else{
obj[name] = $(this).attr('data-value');
}

$(this).toggleClass('active');
});

$('#frm button').on('click', function(event){
event.preventDefault();
if(!$.isEmptyObject(obj)){
$('#frm input').val(JSON.stringify(obj));
$('#frm').submit();
}
else{
alert('Choose something');
}
}
);
}).call();
</
script>
</
body>
</
html>


Со всем остальным полностью согласен, включая квалификацию ТС. =)


--------------------
5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
leonw  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 108
Пользователь №: 40712
На форуме: 2 года, 6 месяцев, 21 день
Карма:




а кроме <input>, <select>, <textarea> есть еще что ни будь????
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15395
Пользователь №: 4190
На форуме: 9 лет, 5 месяцев, 18 дней
Карма: 470




Цитата (leonw @ 8.01.2016 - 13:00)
а кроме <input>, <select>, <textarea> есть еще что ни будь????

Есть еще <file> wink.gif
Тебе для чего надо "еще что-нибудь"? Чек-боксы - это инпуты.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
leonw  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 108
Пользователь №: 40712
На форуме: 2 года, 6 месяцев, 21 день
Карма:




чтобы данные не через input вводить, выбрал мышкой в table значение то и передал.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
casper - gg  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Абориген
*****

Профиль
Группа: Пользователь
Сообщений: 216
Пользователь №: 42190
На форуме: 1 год, 7 месяцев, 20 дней
Карма: 10




Цитата (sergeiss @ 8.01.2016 - 13:39)

Цитата (leonw @ 8.01.2016 - 13:00)
а кроме <input>, <select>, <textarea> есть еще что ни будь????

Есть еще <file>
Тебе для чего надо "еще что-нибудь"? Чек-боксы - это инпуты.

Цитата (leonw @ 8.01.2016 - 18:40)
чтобы данные не через input вводить, выбрал мышкой в table значение то и передал.


ааа,... ну тогда еще есть мышка и <table> с <td> и <tr> - ами user posted image
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 957
Пользователь №: 37872
На форуме: 3 года, 11 месяцев, 29 дней
Карма: 37




Цитата (leonw @ 8.01.2016 - 18:40)
чтобы данные не через input вводить, выбрал мышкой в table значение то и передал.

Как было написано выше, делается это при помощи ajax. При нажатии например на одну из ссылок в вашей таблице, вы можете: либо сразу передавать значение данной ссылки, либо сохранять их в переменную(массив) и после выбора всех необходимых значений передавать на сервер для обработки, например по нажатию на кнопку.Тогда будет без input-ов!


--------------------
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 8974
Пользователь №: 26630
На форуме: 6 лет, 4 месяца, 22 дня
Карма: 611




Цитата (leonw @ 8.01.2016 - 18:40)
чтобы данные не через input вводить,

Зачем??? В чем магический смысл?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1318
Пользователь №: 41686
На форуме: 1 год, 11 месяцев, 16 дней
Карма: 24




Цитата (killer8080 @ 9.01.2016 - 12:59)
Зачем??? В чем магический смысл?

Думаю что в UI, просто ТС не смог сформулировать свои пожелания.



--------------------
5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) [1] 2  Ответ в темуСоздание новой темыСоздание опроса