Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2018, 14:49   #1
Javany
Пользователь
 
Регистрация: 15.05.2018
Сообщений: 75
По умолчанию class при передаче строки с пробелом "ломается" html

Здравствуйте. Столкнулся с проблемкой. Необходимо вывести форму классами. Создаю класс Form - оболочку для создания форм.

Код:
class Form{

	private function Attr($attribute)
	{

	 $string = "";
	foreach ($attribute as $key => $value)
	{
		$string .= $key . "=" . $value;
	}
	return $string;
	}
}

	public function input($attribute)
	{
		$attribute = $this->Attr($attribute);
	return '<input' . $attribute . '><br>';
	}


echo $form->input([' type' => ' text', ' placeholder' => ' Ваше_имя',' name' => ' name']);
Так все работает, вот вывод
Код:
<input type="text" placeholder="Ваше_имя" name="name">
Но но если в ' Ваше_имя' вместо _ поставить пробел то получаю

Код:
<input type="text" placeholder="Ваше" имя="" name="name">
Подскажите в чем ошибка и как с этим бороться.
Спасибо.
Не задавай вопрос, если не знаешь что делать с ответом...
Javany вне форума Ответить с цитированием
Старый 13.06.2018, 10:32   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

так Вы же значения в кавычки не берёте, вот и получаете такой баг.

попробуйте:
Код:
<?php

class Form{

	private function Attr($attribute)
	{

	 $string = "";
	foreach ($attribute as $key => $value)
	{
		$string .= $key . '="' . $value.'" ';
	}
	return $string;
	}

	public function input($attribute)
	{
	$attribute = $this->Attr($attribute);
	return '<input ' . $attribute . '><br>';
	}

}

$form = new Form;
echo $form->input(['type' => 'text', 'placeholder' => 'Ваше имя',' name' => 'name']);

?>
Serge_Bliznykov вне форума Ответить с цитированием
Старый 13.06.2018, 13:32   #3
Javany
Пользователь
 
Регистрация: 15.05.2018
Сообщений: 75
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
так Вы же значения в кавычки не берёте, вот и получаете такой баг.
Да именно так, вчера решил эту проблему. Спасибо за помощь.
Не задавай вопрос, если не знаешь что делать с ответом...
Javany вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Awesomium "ломается" при переключении страниц fanat_96 C# (си шарп) 10 13.04.2018 22:13
Для заданной строки определить все входящие в неё символ. Например: строка "abccbbabbac" состоит из символов "a", "b" и "c" Sandakan01 Помощь студентам 1 24.02.2016 03:20
Ошибка в программе [Delphi 7] при передаче данных - "socket error" -Jack- Работа с сетью в Delphi 7 18.07.2012 07:29