Я пытаюсь вставить записи в БД MySQL, но не получаю значений из переменной POST.
Я вижу, что вводится новая запись с идентификатором записи, но 0 в следующей и единственной ячейке таблицы.
Тип ячейки двойной в form.html.
Я спрятал кнопку отправки в целях дизайна. Это разработано для мобильного опыта.
upload.php
<?php
$con=mysqli_connect("localhost","user","password","DB");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$cal = mysqli_real_escape_string($con, $_POST['cali']);
$sql="INSERT INTO `calibration` (`Calibration`) VALUES ('$cal')";
echo $sql;
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
echo "Calibration Complete!";
mysqli_close($con);
?>
form.html
<form enctype="text/plain" action="upload.php" method="POST">
<input type="text" name="cali" value="Please calibration value" onclick='javascript: this.value = ""' >
<input type="submit" style="margin-left: -1000px;">
</form>
Заранее спасибо!
Согласно запросу OP.
Еще одна вещь, кроме комментария Бьёрна <= (отдавая должное).
Onclick устанавливает значение в
""
Удали это enctype="text/plain"
и тебе должно быть хорошо идти.
Более подробное объяснение использования enctype="text/plain"
можно найти в стеке, ответ на который приведен ниже:
включая ссылку на https://bugs.php.net/bug.php?id=33741
со следующим в конце этой страницы:
Извините, но ваша проблема не подразумевает ошибку в самом PHP. Для
список более подходящих мест, чтобы обратиться за помощью по PHP, пожалуйста
визит http://www.php.net/support.php так как эта система ошибок не
подходящий форум для вопросов поддержки. Из-за объема
из отчетов мы не можем подробно объяснить, почему ваш отчет не является
Жук. Каналы поддержки смогут дать объяснение
для тебя.Спасибо за ваш интерес к PHP.
Допустимые значения для enctype в теге:
применение / х-WWW-форм-urlencoded
многочастному / форм-данных,
Других решений пока нет …