Вопрос

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

	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>';
		} 
	?>

 

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


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

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

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

echo '</form>';

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

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

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


Ссылка на сообщение
Поделиться на других сайтах
  • 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 умеет принимать несколько параметров, просто тут он не в виде функции, а в виде конструкции языка.

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


Ссылка на сообщение
Поделиться на других сайтах
  • 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>';
?>

 

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: zexerevev
      Добрый день народ
      У меня есть JS код для веб-картографии который делает отображение на карте двоих шаров и свайп между ними
      В html коде вызывается этот JS код такими командами
      var ctrl = new ol.control.Swipe(); map.addControl(ctrl); // Set stamen on left ctrl.addLayer(osm, true); // OSM on right ctrl.addLayer(stamen); Как эти параметры передать на кнопку, что бы onclick включать и выключать данную функцию
      Если возможно какие то ссылки на дополнительную информацию по этому, так как придется много делать кнопок под разные функции
      Спасибо за понимает с Frontendom еще знаком не близко
    • Автор: saski
      Добрый день!
      Есть небольшой проект связанный с регистрацией пользователей
      В общем пользователи заполняют форму описанную в reg.php.   Форма формируется с помощью php
      echo "<form name=\"reg\" action=\"participation.php?action=insert\" method=post  accept-charset=\"utf-8\">
      Далее форма отправляет свои данные на participation.php    Оба этих файла находятся в одном директории, но не в корне сайта
      примерно так  site.ru/dir1/dir2
      т.е они имеют адреса site.ru/dir1/dir2/reg.php             site.ru/dir1/dir2/participation.php
      вот проблема в том что у большинства пользователей форма работает правильно и отправляет запрос на  site.ru/dir1/dir2/participation.php?action=insert
      но у некоторых она отправляет его на такой адрес 
      site.ru/dir1/dir2/reg.php/participation.php?action=insert   Само собой у таких пользователей ничего не работает
      Вопрос как с этим бороться и стоит ли?
       
    • Автор: mightybat
      Добрый день.
      Есть форма(опросник), переменных на 200, подскажите как можно ее заполнить на компьютере1, и открыть на компьютере2 уже заполненную?
      Может быть есть человеческий способ, решения данной проблемы? 
      Вижу только вариант 1)сохранить все переменные в mysql 2)на втором компе вытащить из БД 3)воссоздать страницу HTML через echo( куча чекбоксов с oncliсk показывающими дивы, которые замучаюсь переписывать с block на none и наоборот).
  • Спрашивают сейчас

  • Пишут сейчас

    • Есть несколько вариантов которые позволяют развиваться профессионально: Ask friend for help. Опросить друзей знакомых на предмет предлагаемых услуг, заявить о себе. Выполнить несколько простых проектов для опыта/портфолио. Тем самым продвигать себя в качестве специалиста (сарафанное радио) Freelance. Вход сложный. Зато на мелочах можно поднять опыт за символическую стоимость. Потом развивать свой аккаунт, "обрастать" клиентами и поднимать уровень квалификации. Важно: почитайте пару гайдов как получить заказ новичку, как оформить профиль и прочие рекомендации. Сайты по теме: https://freelansim.ru https://www.fl.ru https://www.upwork.com — я бы выбрал этот Remote. Full-time. Ещё один хороший вариант найти работу — утроится в компанию работать удалённо. Без территориально ограничения. Компания может быть из СНГ, с юр. лицом. Заключаете договор и сотрудничаете на ставку. Part-time. Тоже самое что и предыдущий пункт но формат сотрудничества на правах почасовой работы. Office. Работа в офисе на позции Junior с перспективой роста. Хорошо подойдут галеры по типу ЕПАМ, Ciklum, LuxSoft, и тд. Денег мало (в начале), но компенсируется опытом. За 9-12 месяцев можете вырасти в Middle. Дальше плыть будет легче. Для поиска работы для Remote и Office вариантов можно использовать стандартные инструменты, на пример: djinni.co или linkedin.com. Рекомендации к заполнению профилю/CV Опишите всё что можете предложить заказчику. Расскажите о своих скилах, что непосредственно Вы делали выполняя работу над тем или иным проектом. Расскажите о своём опыте, даже если он не значительный. Если опыта совсем мало, инвестируйте месяц-два и выполните несколько простых задач, которые Вы сможете показать заказчику. И профиль и CV должно быть на английском языке, в первую очередь, и лишь копия русскоязычная (у меня такой нет, так как рынок предполагает знание английского языка с уровня pre-intermediate)
    • Сидеть дома и развиваться до уровня Senior годами без реальной работы?! 
    • Факт есть факт — специалистов как было мало так и осталось. Можно выбирать любую интересующую себя нишу и развиваться в ней до уровня Senior и иметь на себя спрос в последствии.
  • Лучшие авторы

  • Текущие цели пожертвований