php - 无法将数据保存到具有复合主键的新表中

标签 php mysql wamp

代码

require_once 'detect/detect.php';
date_default_timezone_set('Asia/Kuala_Lumpur');

$fb_id = $_POST['id'];
$full_name = $_POST['name'];
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email = $_POST['email'];
$date_time = date('Y-m-d H:i:s');
$shared = null;
$redeemed = null;

$connection = mysqli_connect("server", "username", "password", "db");

$sql = "INSERT IGNORE INTO ABC_CAFE (fb_id, full_name, first_name, last_name, email, date_time, shared, redeemed) VALUES ('$fb_id','$full_name','$first_name','$last_name','$email','$date_time','$shared','$redeemed')";

mysqli_close($connection);

我的表创建时没有数据。 主键是(fb_id,date_time),它没有出现在结构中。

最佳答案

干净的方法:

$mysqli = new mysqli("server", "username", "password", "db");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connectiuon Error: %s\n", mysqli_connect_error());
    exit();
}

$stmt = $mysqli->prepare("INSERT IGNORE INTO ABC_CAFE (fb_id, full_name, first_name, last_name, email, date_time, shared, redeemed)  VALUES (?, ?, ?, ?, ?, ?, ?, ?)");

$stmt->bind_param('isssssss', $fb_id, $full_name, $first_name, $last_name, $email, $date_time, $shared, $redeemed);

/* execute prepared statement */
$stmt->execute();

$mysqli->close();

关于php - 无法将数据保存到具有复合主键的新表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38096117/

相关文章:

mysql - 更改XAMPP中MySQL全局变量的默认值

javascript - XMLHttpRequest 无法加载 http ://localhost:8081/blabla/bla/config Origin http://localhost is not allowed by Access-Control-Allow-Origin

php - 如何读取 Dc :creator tag in xml?

php - 如何在PHP中获取包含组合字符的Unicode字符串的 "rendered length"?

来自 C/C++ 的 PHP 兼容序列化

java - 如何在 spring jpa 中组合 4 个表(查询)

php - 将多个查询作为一个调用

mysql - 无法将 365 kb sql 文件导入 WampServer 上的 phpmyadmin

php - 跟踪多个月的播放次数

mysql - 使用 SQL GROUP BY 时合并