Вопрос

Понимаю, что вопрос возможно, выглядит пустяковым, но для меня очень важно. Почему то не работают кнопки. Даже страница не загружается.

	echo '<!DOCTYPE html>
	<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Document</title>
	</head>
	<body>';

	echo '<form method="post" action="script.php">';
		 			
		for ($i=1; $i<=100; $i++){
			echo '——';
			$post= implode(",",$_POST);		


			
			

		if ($i<$post) {echo '<button name="',$i ,'" value= "',$i ,'" style="background-color:yellow; float: right; padding-top: 10px">gfhfg</button>';};
		if ($i==$post) {echo '<button  name="',$post,'" value= "',$i ,'" style="background-color:green; float: right; padding-top: 10px"></button>';};
		if ($i>$post) {echo '<button name="',$i ,'" value= "',$i ,'" style="background-color:red; float: right; padding-top: 10px"></button>';};
		echo '</form>';
		} 
	?>

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

4 ответа на этот вопрос

Рекомендуемые сообщения

  • 0
6 часов назад, Volan сказал:

echo '</form>';

Почему это внутри цикла? Вот кнопки, кроме первых трех, и оказываются вне формы...

Вообще возьмите за правило — отлаживайте ту часть системы, в которой проблемы, а не всю систему как «черный ящик». Если проблема в работе HTML — смотрите сгенеренный HTML, а не PHP-исходник. Так будет намного нагляднее и быстрее...

  • Thanks 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
1 hour ago, Volan said:

echo '<button name="',$i ,'" value= "',$i ,'" style="background-color:yellow; float: right; padding-top: 10px">gfhfg</button>';

Точка должна быть, а не запятая, опечатались, видимо.

Странно, что php не ругается на ошибки. Они у вас включены?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
4 часа назад, sigma77 сказал:

Точка должна быть, а не запятая, опечатались, видимо.

Странно, что php не ругается на ошибки. Они у вас включены?

И так и так можно, echo умеет принимать несколько параметров, просто тут он не в виде функции, а в виде конструкции языка.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

1. $post= implode(",",$_POST); зачем в цикле
2. сравнение скажем '1' с '1,2,3' бессмысленно, если у вас в post прилетает несколько элементов, а если один, то зачем этот implode?
3. ну и echo '</form>'; вынести из цикла как уже сказали выше
4. в echo я бы через '.' делал
5. а теперь самое смешное на мой взгляд:

if ($i <$post) {echo '<button name="',$i ,'" value= "',$i ,'" style="background-color:yellow; float: right; padding-top: 10px">gfhfg</button>';};
if ($i==$post) {echo '<button name="',$post,'" value= "',$i ,'" style="background-color:green; float: right; padding-top: 10px"></button>';};
if ($i >$post) {echo '<button name="',$i ,'" value= "',$i ,'" style="background-color:red; float: right; padding-top: 10px"></button>';};

берем мы $i=1 и
предположим оно меньше $post, то кнопка будет 'name="1" value= "1"'
предположим оно больше $post, то кнопка будет 'name="1" value= "1"'
предположим они равны, то кнопка будет 'name="1" value= "1"'
зачем нужно было в name использовать $post?

<?PHP
	echo '<!DOCTYPE html>
	<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Document</title>
        <style>
        	.button{float: right; padding-top: 10px}
            .yellow{background-color:yellow;}
            .green{background-color:green;}
            .red{background-color:red;}
        </style>
	</head>
	<body>';

	echo '<form method="post" action="script.php">';
	
	$post= implode(",",$_POST);			
    for ($i=1; $i<=100; $i++){
      echo '——';
      if ($i<$post) {$color=' yellow';};
      if ($i==$post) {$color=' green';};
      if ($i>$post) {$color=' red';};
      echo '<button name="'.$i.'" value="'.$i.'" class="button'.$color.'">b'.$i.'</button>';
    }

	echo '</form>';
?>

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Похожие публикации

    • Автор: mightybat
      Добрый день.
      Есть форма(опросник), переменных на 200, подскажите как можно ее заполнить на компьютере1, и открыть на компьютере2 уже заполненную?
      Может быть есть человеческий способ, решения данной проблемы? 
      Вижу только вариант 1)сохранить все переменные в mysql 2)на втором компе вытащить из БД 3)воссоздать страницу HTML через echo( куча чекбоксов с oncliсk показывающими дивы, которые замучаюсь переписывать с block на none и наоборот).
    • Автор: Highlander
      Подскажите кто сталкивался с анимированием эффекта нажатия через animation? Через transition  понятно как, но вот тут http://landing-animation.powercode.pro/ верхние правые кнопки уж очень приятно выглядят, пробовал повторить через инспектор, но безуспешно. Или где-то ошибаюсь или есть какая-то особенность. 
      Спасибо.
    • Автор: s.brume
      Всем привет. Прошу помощи в настройке модальной формы. Из трёх заработала только одна - но самая некрасивая, теперь пытаюсь её заменить, но другие две работать отказываются.
      1. В общем, в меню имеется кнопка-картинка такого вида: <li><a href="#form1"><img src="call-me/callme.png" alt="Заказать звонок"></a></li> = она будет вызывать форму. Я сначала грешил именно на то, что менюшка в шапке, а код формы оказывается в теле, но нет - всё это уже тело. Хотя здесь тоже не ясно, шапка и менюшка визуально похожи..... Но об этом позже, если понадобится.
      2. Дальше я пишу в тело (можно сказать в рандомное место) вот это:
      <!-- Модальная форма -->
              <a href="#x" class="overlay" id="form1"></a>
              <form class="modal">
                  <input name="name" placeholder="Укажите ваше имя:" class="name" required />
                  <input name="emailaddress" placeholder="Укажите ваш Email:" class="email" type="email" required />
                  <textarea rows="4" cols="50" name="subject" placeholder="Введите ваше сообщение:" class="message" required></textarea>
                  <input name="submit" class="btn" type="submit" value="Отправить" />
              </form>
              <!-- конец блока  формы-->
      3. Потом я прописывал в стили новый кусок (style-form.css, см. вложение), а также пробовал цеплять его к html через link rel = но ничего так и не заработало.
      Получается что: при нажатии кнопки ничего не выводится, лишь страница уезжает куда-то немного вниз.
      Прошу помощи. С чего начать, куда копать?
      p.s. Я совсем новичок, если что.
      style-form.css