Какие данные передаются в текстовом поле?

70
6

Когда вы отправляете текстовое поле, как оно отправляется? Как я могу получить доступ к каждой строке данных в PHP?

спросил(а) 2011-11-18T22:05:00+04:00 8 лет, 10 месяцев назад
1
Решение
69

если вам нужен массив элементов:

$arr=explode("\n", $_POST[text_area_name]);

затем доступ к ним

foreach($arr as $item){
print $item;
}

ответил(а) 2011-11-18T22:08:00+04:00 8 лет, 10 месяцев назад
57

Вы получаете доступ ко всей строке текста.

Например, с помощью POST:


$str = $_POST['nameoftextarea'];
$lineArray = explode("\n", $str);

ответил(а) 2011-11-18T22:07:00+04:00 8 лет, 10 месяцев назад
58

Это текст блоба. Вы должны разобрать его самостоятельно.

ответил(а) 2011-11-18T22:06:00+04:00 8 лет, 10 месяцев назад
41

Я не уверен, что это все еще проблема, но некоторые операционные системы отправляют не только новые строки \n они также отправляют возврат каретки \r, поэтому я использовал preg_split() чтобы это учитывало изменчивость. Например:

<form method="post" action=".">
<textarea name="myMultiline">foo
bar
baz</textarea>
<input type="submit" />
</form>

<?php
if (isset($_POST['myMultiline'])) {
$multiline_as_array = preg_split("/[\n\r]+/", $_POST['myMultiline']);
print_r($multiline_as_array);
}
?>

ответил(а) 2011-11-18T22:18:00+04:00 8 лет, 10 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема