php - 错误的整数值 : '' for column 'user_id' at row 1

标签 php html mysql database phpmyadmin

我正在尝试插入到我的 SQL 数据库中。由于某种原因,我收到了 第 1 行的列 'user_id' 的整数值不正确:'' 错误。

这是我的表架构:

enter image description here 如您所见,user_id 是引用另一个表中的列的外键。我不确定您是否需要这些信息,但是是的。我从插入 php 中收到错误。

这是我的插入 php:

<?php
require_once ('database.php');

if (isset($_POST['send'])) {

$user_id = $_POST['user_id'];
$full_name = $_POST['full_name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$fromdate = ($_POST['fromdate']);
$todate = ($_POST['todate']);
$reason = ($_POST['reason']);
$status = ($_POST['status']);

{
$database->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$insert_query = "INSERT INTO leaves (user_id, full_name, phone, email, fromdate, todate, reason, status)
VALUES (?, ?, ?, ?, ?, ?, ?, ?)";

$insert = $database->prepare($insert_query);
$insert->execute(array($user_id, $full_name, $phone, $email, $fromdate, $todate, $reason, $status));

echo "<script>alert('Successfully sent!'); window.location='leaveform.php'</script>";
}
}
?>

表格:

<div class="container">
    <div class="card">
        <div class="form__name" style="font-family: Questrial; ">
            Leave Application Form
        </div>
        <div class="time__container">
            <div class="section">
                <div class="box">
                    1
                </div><span>Date</span>
            </div>
            <form action="insert-leave.php" class="form__time" method="post">
                <div class="date">
                    <label for="date">From</label> <input id="date" type="date" name="fromdate" required>
                </div>
				&nbsp;
				&nbsp;
				&nbsp;
                <div class="date">
                    <label for="date">To</label> <input id="date" type="date" name="todate" required>
                </div>
                <div class="timezone">
                    <label for="timezone"></label> 
                        </select>
                </div>
        </div>
        <div class="message__container">
            <div class="section">
                <div class="box">
					2
                  
                </div><span>Reason</span>
            </div>
            <textarea cols="50" rows="5" name="reason" required></textarea>
        </div>
        <div class="contact__container">
            <div class="section">
                <div class="box">
					3
                    
                </div><span>Contact Information</span>
            </div>
            <div class="form__contact">
                <div class="cname">
                    <label for="cname">Name</label> <input name="full_name" type="text" readonly="readonly" value="<?php echo $fullname; ?>" required>
                </div>
                <div class="cnum">
                    <label for="cnum">Phone Number</label> <input id="cnum" type="text" readonly="readonly" name="phone" value="<?php echo $contact; ?>" required>
                </div>
                <div class="email">
                    <label for="cemail">Email</label> <input id="cemail" name="email" readonly="readonly" value="<?php echo $email; ?>" required>
                </div>
				<div class="email">
                    <label for="cemail"></label> <input type="hidden" name="status" required>
                </div>
				<div class="id">
                    <label for="id"></label> <input type="hidden" name="user_id" required>
                </div>
            </div>
        </div>

最佳答案

您从未为user_id设置值

<input type="hidden" name="user_id" required>

所以 $_POST['user_id']; 为空

关于php - 错误的整数值 : '' for column 'user_id' at row 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48339988/

相关文章:

html - 如何使 div 列与滚动条并排放置?

javascript - 获取 HTML5 video 标签的当前播放类型

javascript - 移动优化 : Make notification menu with position:absolute scrollable

mysql - 如果同步到 Redshift/BigQuery,来自 MySQL 数据库的 bin 日志复制是否会保持唯一约束?

php - 如何在 yii 查询中按列值分组?

php - 如何通过mailgun路由接收邮件?

javascript - 蒙戈聚合

php - 如何显示转义字符?

php - 为什么表字段没有显示像前三个字段那样的值?

php - CodeIgniter 加入无法选择