Хранить вывод в базу данных - PullRequest
0 голосов
/ 10 марта 2020

Я создал калькулятор, используя html, javascript и php для отправки информации в базу данных, чтобы я мог создать PDF-файл из сохраненной информации. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу сохранить ни одно из полей вывода в базе данных, поэтому эти поля в pdf просто отображают 0. Вот пример моего кода:

Форма:

<div class="butfix">
    <label style="width: 40%; float: left;">Taxable Wage (Hourly)</label>
    <input class="input-field butfix" style="float: left; width: 8em;" type="text" name="taxable_wage" id="taxable_wage">
</div>

<div class="butfix">
    <label style="width: 40%; float: left;">Average Hours Per Week</label>
    <input class="input-field" style="float: left; width: 8em;" type="text" name="average_hours_per_week" id="average_hours_per_week">
</div>

<div class="butfix" style = "margin-top: 2%;">
    <label style="width: 40%; float: left;">Weekly Taxable Pay</label>
    <output class="input-field" style="float: left; width: 8em;" type="text" name="weekly_taxable_pay" id="weekly_taxable_pay"></output>
</div>

Javascript:

var weeklyTaxablePay = document.getElementById("weekly_taxable_pay");

taxableWage.addEventListener("change", calc);
averageHoursPerWeek.addEventListener("change", calc);


function calc() {
weeklyTaxablePay.textContent = (parseFloat(document.getElementById("taxable_wage").value) * parseFloat(document.getElementById("average_hours_per_week").value)).toFixed(2);
}

В приведенном выше примере я пытаюсь сохранить «еженедельную налогооблагаемую зарплату» в базе данных. Проведя некоторые исследования в Интернете, я обнаружил, что выходные данные не совместимы с базами данных, поэтому необходимо создать вход для хранения значения выходных данных. Я попытался сделать это, добавив в скрытое поле ввода и присвоив ему тот же идентификатор и имя, что и для вывода, например:

<input class="input-field" style="float: left; width: 8em;" type="text" name="weekly_taxable_pay" id="weekly_taxable_pay">

Однако, когда я делаю это, ничего не отображается в поле ввода после завершения уравнение. Я видел другие примеры на stackoverflow и пробовал их, однако, кажется, ничего не работает для меня. Мне интересно, есть ли у кого-нибудь какие-либо предложения или какие-либо другие решения, которые могут помочь мне в этой ситуации. Я ценю любой вклад и благодарю вас за потраченное время.

РЕДАКТИРОВАТЬ

Вот часть моего php кода, хотя я совершенно уверен, что это не проблема.

Сохранение информации в базе данных:

$servername = "***";
$username = "***";
$password = "***";
$dbname = "***";

/* Create connection */
$conn = new mysqli($servername, $username, $password, $dbname);
/* Check connection*/
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

    $taxable_wage = $_POST['taxable_wage'];
    $average_hours_per_week = $_POST['average_hours_per_week'];
    $weekly_taxable_pay = $_POST['weekly_taxable_pay'];

/* sql to insert row into table */
    $sql = "INSERT INTO calculations (taxable_wage, average_hours_per_week, weekly_taxable_pay) VALUES ('$taxable_wage', '$average_hours_per_week', '$weekly_taxable_pay')"; 

Получение информации из базы данных:

$servername = "***";
$username = "***";
$password = "***";/* Put your password */
$dbname = "***";/* Put your database name */

/* Create connection */
$connect = new mysqli($servername, $username, $password, $dbname);
/* Check connection*/
if ($connect->connect_error) {
    die("Connection failed: " . $connect->connect_error);
}
  $output = '';  
  $sql = "SELECT * FROM calculations ORDER BY id DESC LIMIT 1";  
  $result = mysqli_query($connect, $sql);  
  while($row = mysqli_fetch_array($result))
  {       
  $output .= '
           <tr>  
                      <th width="30%">Name</th>  
                      <td>'.$row["taxable_wage"].'</td>
            </tr>
            <tr>          
                      <th width="30%">Email</th>  
                      <td>'.$row["average_hours_per_week"].'</td> 
            </tr>
            <tr>   
                      <th width="30%">Taxable Wage (Hourly)</th>
                      <td>'.$row["weekly_taxable_pay"].'</td> 
            </tr>
                  ';  
  }  
  return $output;  

После этого у меня есть код для создания PDF-файла, который определенно работает так, как должен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...