Объедините 2 $ _POST в один столбец, используя инструкцию INSERT - PullRequest
1 голос
/ 13 марта 2020

У меня есть форма, в которой есть скрытое поле (дата). Я хочу, чтобы эти данные были вставлены вместе с запиской, которая также отправлена. У меня есть только 3 столбца в моей таблице. ID, Note_id и Note.

Поэтому, если пользователь отправляет заметку, оператор вставки должен добавить дату перед примечанием.

Моя текущая SQL Заявка:

$pdoOptions = array(
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_EMULATE_PREPARES => false
);

$pdo = new PDO("mysql:host=" . MYSQL_HOST . ";dbname=" . MYSQL_DATABASE, MYSQL_USER,MYSQL_PASSWORD,$pdoOptions);

$data = [
   'notes' => $_POST['notes'],
   'id' => $_POST['rowID'],
   'date2' => $_POST['date'],
];
$sql = "INSERT INTO notes (note_id, note) Values(:id, :notes)";
$stmt= $pdo->prepare($sql);
$stmt->execute($data);

Я думал, что мог бы добавить: date2 к этому, но это, похоже, не работает

$pdoOptions = array(
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_EMULATE_PREPARES => false
);

$pdo = new PDO("mysql:host=" . MYSQL_HOST . ";dbname=" . MYSQL_DATABASE, MYSQL_USER,MYSQL_PASSWORD,$pdoOptions);

$data = [
   'notes' => $_POST['notes'],
   'id' => $_POST['rowID'],
   'date2' => $_POST['date'],
];
$sql = "INSERT INTO notes (note_id, note) Values(:id, :date '-' :notes)";
$stmt= $pdo->prepare($sql);
$stmt->execute($data);

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

Спасибо

1 Ответ

2 голосов
/ 13 марта 2020

Использование CONCAT()

$sql = "INSERT INTO notes (note_id, note) Values(:id, CONCAT(:date,'-',:notes))";

Это будет работать

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