| Безнадежный программист | 
			09.05.2020 06:23 | 
		 
		 
		
		 
		
		
			Форма функции и ее обработчик данных (HTML и PHP на Денвере)   
		
		
			Вложений: 2 
		
		
		Здравствуйте! Я пыталась сделать вычисление функции f(x)=log(3 * arctg(x)) с html и php на Денвере, которое бы по результатам и виду соответствовало прикрепленным скриншотам (простите за качество, если смогу исправить - потом сделаю, надеюсь хоть что-то видно), а также вот таким условиям: - Первая страница (html) - принимает значения в виде имени, начального и конечного значений, их количества в таблице.
 
-  Вторая страница (php) - выводит все это, как оформлено. Имя сверху, начальное и конечное значения в таблице, и у них задано количество отсчетов.
 
-  У меня не выводится введенное имя. Ни GET, ни POST его не выводят. Скорее всего, я допустила какую-то ошибку синтаксиса, хотя Денвер на этом молчит, а до меня пока что не дошло, как починить это.
 
- Не знаю, как сделать так, чтобы в таблице выводилось именно столько значений, сколько задано в поле количества отсчетов. Может быть, есть какая-то "настройка" для функции?
 
- Последние значения не всегда выводятся. Скажем, единица выводится, а двойка нет, тройка тоже и т.д.
 
- Если возможно, хотелось бы, чтобы в таблицу выбирались более средние значения, а не по рандому, то есть, например, если задается от 1 до 2х и отсчеты равны 5и, то он выводит "1, 1.25 ,1.5, 1.75 , 2" или "1, 1.3 ,1.5, 1.8 , 2", а если так нельзя, то чтобы хотя бы отсчеты заработали по количеству значений нормально.
 
- У меня по-русски нормально в Денвере по какой-то причине не выводит - одни иероглифы.
 
- Хотелось бы весь текст в целом сделать побольше, чем он есть. Скорее всего, это задается классом или функцией, но я не совсем понимаю, как это сделать наравне и на странице html, и на php.
 
- В целом код вышел у меня не совсем толковый и скудноватый, поэтому если у вас будут критика и замечания - я слушаю. Повторяюсь, конечно, но все равно еще раз скажу - я слаба в этих темах и мне толком знакомы в основном html и css. Буду рада слышать профессионалов и знатоков. Заранее спасибо за внимание к моей проблеме :thanks: :victory: . 
 
 
Вот код. Надеюсь, я смогла сделать его читаемым:
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="windows-1251">
  <script src="jquery-3.4.1.min.js"></script>
</head>
<body>
  <form action="result.php" method="POST">
    <p action="result.php" method="GET">Введите ваше имя:
      <input type="text" name="name">
    </p>
    <p><b>Вычисление функции f(x)=log(3 * arctg(x)):</b></p>
    <table>
      <tr>
        <td>Начальное значение</td>
        <td>
          <input type="text" name="first">
        </td>
      </tr>
      <tr>
        <td>Конечное значение</td>
        <td>
          <input type="text" name="last">
        </td>
      </tr>
      <tr>
        <td>Количество отсчетов</td>
        <td>
          <input type="text" name="quantity">
        </td>
      </tr>
    </table>
    <h1></h1>
    <input type="submit" value="Вычислить">
  </form>
</body>
</html>
<?php
  header('Content-type: text/html; charset=windows-1251');
?>
<body>
  <p>Задание выполнил(а):<?php
    $_POST['name'];
  ?></p>
  </br>
  <?php
    $xstart = (float)$_POST['first'];
    $xend = (float)$_POST['last'];
    $d = 0.1;
    echo '<table border="1" align="center" valign="center" width="20%">';
    echo "<center><b>Таблица значений функции f(x)=log(3 * arctg(x))<center></p>";
    echo "<tr>";
    echo "<th>x</th>";
    echo "<th><center>f(x) $selectOption<center></th>";
    echo "</tr>";
    for ($x = $xstart; $x<=$xend; $x+=$d){
      $y = log(3 * atan($x));
      echo "<tr><td><center>$x<center></td><td><center>$y<center></td>";
    }
    echo "</table>";
  ?>
</body>
 
	 |