Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Работа с массивом $_POST...

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Как из массива $_POST удалить лишние значения?
AngelofDem
Отправлено: 05 Августа, 2011 - 12:28:56
Post Id



Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.     $s=$_POST[Cхема];
  3.         echo $s;
  4.     $post = '';
  5.         unset($_POST[Схема]);
  6.     foreach($_POST as $k => $v) {
  7.             $post .= "$k=$v шт. <br>";
  8.     }
  9.        
  10.     echo $post;
  11.         ?>


сам $_post выглядит вот так...Array ( [Cхема] => EB687-Общий вид, шасси, крышка верхняя, пульт управления [Весь_узел] => 0 [деталь№8] => 1 [деталь№7] => 1 )
Значения в нём может быть до ста... Причем разбросанны в разном порядке...

В общем у меня он выводит вот что:

EB687-Общий вид, шасси, крышка верхняя, пульт управленияCхема=EB687-Общий вид, шасси, крышка верхняя, пульт управления шт.
Весь_узел=0 шт.
деталь№8=1 шт.
деталь№7=1 шт.

А надо что бы выводил вот что EB687-Общий вид, шасси, крышка верхняя, пульт управления
Весь_узел=0 шт.
деталь№8=1 шт.
деталь№7=1 шт.

В общем мне нужно как то из массива пост отбросить ячейку [Cхема] и ещё будут 3 ячейки с контактной информацией... допустим [ФИО] [Телефон] и [Особые пожелания]
Эти ячейки надо присвоить к переменным... А остальные типа [1] [7] [9] выводить функицией

PHP:
скопировать код в буфер обмена
  1.  $post = '';
  2.             foreach($_POST as $k => $v) {
  3.             $post .= "$k=$v шт. <br>";
  4.     }
  5.     echo $post;


Как это сделать Как из массива удалить лишние значения???
Если я неправильно мыслю, готов выслушать любую критику Хорошо
Заранее прошу прощения за орфографию и пунктуацию...
 
 Top
DeepVarvar Супермодератор
Отправлено: 05 Августа, 2011 - 12:51:23
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




PHP:
скопировать код в буфер обмена
  1. if ($k != "Схема") $post .= "$k=$v шт. <br>";

(Добавление)

AngelofDem не из Калуги родом?
 
 Top
illy
Отправлено: 05 Августа, 2011 - 12:54:33
Post Id



Участник


Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011  
Откуда: от верблюда)


Помог: 28 раз(а)




<?PHP
$s=$_POST['Cхема'];
echo $s;
$post = '';
unset($_POST['Схема']);
foreach($_POST as $k => $v) {
$post .=$k.'='.$v.' шт. <br>";
}

echo $post;
?>


-----
Всё гениальное - просто
И ещё проще, если ты - индиго
 
 Top
AngelofDem
Отправлено: 05 Августа, 2011 - 13:12:31
Post Id



Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




illy
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $s=$_POST['Cхема'];
  3. echo $s;
  4. $post = '';
  5. unset($_POST['Схема']);
  6. foreach($_POST as $k => $v) {
  7. $post .="$k.'='.$v.' шт. <br>";
  8. }
  9.  
  10. echo $post;
  11. ?>
  12.  


Это ничего не меняет (там кавычки не хватает)...
и даже с ней выдает следующее:
EB687-Общий вид, шасси, крышка верхняя, пульт управленияCхема.'='.EB687-Общий вид, шасси, крышка верхняя, пульт управления.' шт.
Весь_узел.'='.0.' шт.
деталь№5.'='.1.' шт.
деталь№8.'='.1.' шт.

И всё же, очень благодарю за попытку)
(Добавление)
Больше никто не предложит варианты? Огорчение
(Добавление)
Подскажите тогда как присвоить значения из массива $_post
Простому массиву типа $massiv
Может быть тогда заработает команда unset...
 
 Top
illy
Отправлено: 05 Августа, 2011 - 15:08:12
Post Id



Участник


Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011  
Откуда: от верблюда)


Помог: 28 раз(а)




$massiv=$_POST['Схема'][0];
вроде так. мне легче когда весь код виден Хм ато непонятно что это такое


-----
Всё гениальное - просто
И ещё проще, если ты - индиго
 
 Top
Viper
Отправлено: 05 Августа, 2011 - 15:48:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




AngelofDem

для начала, т.к. сейчас у вас гадание на кофейной гуще.

AngelofDem пишет:
Подскажите тогда как присвоить значения из массива $_post
Простому массиву типа $massiv
Может быть тогда заработает команда unset...


$massiv = $_POST;

PS! Ключи на русском это сильно...


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
AngelofDem
Отправлено: 05 Августа, 2011 - 16:09:16
Post Id



Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.     $sd=$_POST['Cхема'];
  3.         echo $sd;
  4.         $massiv=$_POST;
  5.     $post = '';
  6.         unset($massiv['Схема']);
  7.     foreach($massiv as $k => $v) {
  8.             $post .= "$k=$v.шт. <br>";
  9.     }
  10.     echo $post;
  11.         ?>[PHP]


И один фиг unset неработает выводит всё то же
EB687-Общий вид, шасси, крышка верхняя, пульт управленияCхема=EB687-Общий вид, шасси, крышка верхняя, пульт управления.шт.
Весь_узел=3.шт.
деталь№8=12.шт.
деталь№7=6.шт.
деталь№9=15.шт.
деталь№3=1.шт.
Имя=Владимир.шт.
Номер=899904342323.шт.
Допополнительно=срочно.шт.

То-есть он после каждой строки пишет ШТ. А я хочу убрать из массива несколько значений конкретно Имя, Номер, Дополнительно, Схема... Что бы из вывести в отдельном echo
Эти значения мне зарнее известны из без них запрос придти не может
А вот с отальными значениями "деталь№" всё сложнее, их n-ое количество и приходят они в разном порядке поэтому присваивать каждому переменную неактуально... Да и не профессионально я так считаю...
В принципе, вся моя проблема решается очень просто, я уберу ".шт." и всё, но просто ради спортивного интереса)

сам массив выглядит так (для тех кто ещё не догадался)
Array ( [Cхема] => EB687-Общий вид, шасси, крышка верхняя, пульт управления [Весь_узел] => 0 [деталь№8] => 1 [деталь№7] => 1... )
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB