Có vẻ như bạn nên đặt báo giá đơn xung quanh các giá trị dữ liệu của bạn. Ngoài ra, thêm kiểm tra mysqli_error
cho dòng mysqli_query
của bạn để bạn thực sự có thể thấy những gì đang xảy ra:
$allData = $dataSource->getAllData[];
foreach [$allData as $key => $value] {
$query = "INSERT INTO `table`[`data_id`, `name`] VALUES ['" . $value['data_id'] . "', '" . $value['name'] . "']";
$result = mysqli_query[$mysqli, $query] or die[mysqli_error[$mysqli]];
}
Hoặc tốt hơn nữa, sử dụng mysqli_stmt_bind_param
như thế này. Cho phép MySQLI đối phó với toàn bộ cấu trúc dữ liệu truy vấn thay vì phải lo lắng về vị trí trích dẫn đơn. Ngoài ra, đã thêm một séc cho mysqli_connect_error
trên dòng mysqli_connect
của bạn:
// Connecting, selecting database
$mysqli = mysqli_connect['localhost', 'root', '', ''] or die[mysqli_connect_error[]];
$allData = $dataSource->getAllData[];
foreach [$allData as $key => $value] {
// Set the query.
$query = "INSERT INTO `table`[`data_id`, `name`] VALUES [?, ?]";
// Bind the params.
// mysqli_stmt_bind_param[$query, 'ss', $value['data_id'], $value['name']];
mysqli_stmt_bind_param[$query, 'is', $value['data_id'], $value['name']];
// Run the query.
$result = mysqli_query[$mysqli, $query] or die[mysqli_error[$mysqli]];
}
Lưu ý rằng tôi có một dòng nhận xét cho mysqli_stmt_bind_param
vì nó không rõ ràng với tôi nếu
// Connecting, selecting database
$mysqli = mysqli_connect['localhost', 'root', '', ''] or die[mysqli_connect_error[]];
$allData = $dataSource->getAllData[];
foreach [$allData as $key => $value] {
// Set the query.
$query = "INSERT INTO `table`[`data_id`, `name`] VALUES [?, ?]";
// Bind the params.
// mysqli_stmt_bind_param[$query, 'ss', $value['data_id'], $value['name']];
mysqli_stmt_bind_param[$query, 'is', $value['data_id'], $value['name']];
// Run the query.
$result = mysqli_query[$mysqli, $query] or die[mysqli_error[$mysqli]];
}
1 của bạn là một số hoặc một chuỗi. // Connecting, selecting database
$mysqli = mysqli_connect['localhost', 'root', '', ''] or die[mysqli_connect_error[]];
$allData = $dataSource->getAllData[];
foreach [$allData as $key => $value] {
// Set the query.
$query = "INSERT INTO `table`[`data_id`, `name`] VALUES [?, ?]";
// Bind the params.
// mysqli_stmt_bind_param[$query, 'ss', $value['data_id'], $value['name']];
mysqli_stmt_bind_param[$query, 'is', $value['data_id'], $value['name']];
// Run the query.
$result = mysqli_query[$mysqli, $query] or die[mysqli_error[$mysqli]];
}
2 có nghĩa là giá trị đầu tiên là số nguyên [// Connecting, selecting database
$mysqli = mysqli_connect['localhost', 'root', '', ''] or die[mysqli_connect_error[]];
$allData = $dataSource->getAllData[];
foreach [$allData as $key => $value] {
// Set the query.
$query = "INSERT INTO `table`[`data_id`, `name`] VALUES [?, ?]";
// Bind the params.
// mysqli_stmt_bind_param[$query, 'ss', $value['data_id'], $value['name']];
mysqli_stmt_bind_param[$query, 'is', $value['data_id'], $value['name']];
// Run the query.
$result = mysqli_query[$mysqli, $query] or die[mysqli_error[$mysqli]];
}
3] và giá trị tiếp theo là một chuỗi [// Connecting, selecting database
$mysqli = mysqli_connect['localhost', 'root', '', ''] or die[mysqli_connect_error[]];
$allData = $dataSource->getAllData[];
foreach [$allData as $key => $value] {
// Set the query.
$query = "INSERT INTO `table`[`data_id`, `name`] VALUES [?, ?]";
// Bind the params.
// mysqli_stmt_bind_param[$query, 'ss', $value['data_id'], $value['name']];
mysqli_stmt_bind_param[$query, 'is', $value['data_id'], $value['name']];
// Run the query.
$result = mysqli_query[$mysqli, $query] or die[mysqli_error[$mysqli]];
}
4]. Hãy thoải mái điều chỉnh để phù hợp nhất với các loại dữ liệu thực tế của bạn.Trong bài đăng này, chúng tôi sẽ học cách chèn một mảng PHP vào bảng MySQL. Đây là một vấn đề rất phổ biến khi chúng ta có nhiều hàng dữ liệu mà chúng ta muốn chèn vào MySQL như một hàng. Chúng ta có thể làm điều này rất dễ dàng bằng cách sử dụng PHP để chèn một mảng vào MySQL.insert a PHP array into MySQL table. This is a very common problem when we have multiple rows of data that we want to insert into MySQL as a row. We can do this very easily using PHP to insert an array into MySQL.
Đây là hướng dẫn của người mới bắt đầu về PHP và MySQL, bạn sẽ học ở đây các hoạt động cơ bản của MySQL với PHP.
Mã sau đây sẽ giúp tạo hàm PHP để chèn dữ liệu php mảng vào mysql .________ 15 Chúng tôi có mảng PHP sau.
$records = array[ "0" => array["Parvez", "PHP", "12"], "1" => array["Devid", "Java", "34"], "2" => array["Ajay", "Nodejs", "22"] ];
Tôi muốn chèn mảng PHP trên vào bảng cơ sở dữ liệu MySQL. Chúng tôi có hai tùy chọn để chèn một mảng PHP vào MySQL bằng PHP.two options to insert a PHP array into MySQL using PHP.
Chúng tôi sẽ làm theo các bước dưới đây để chèn các mảng dữ liệu vào MySQL -
- Sử dụng lệnh chèn lặp đi lặp lại trên mỗi hàng
- Sử dụng lệnh chèn đơn bằng cách kết hợp tất cả các giá trị mảng vào mảng
Ngoài ra kiểm tra các hướng dẫn truy vấn MySQL động khác,
- Hợp nhất hai mảng hoặc nhiều mảng trong PHP
- Cách chuyển đổi XML thành mảng kết hợp trong PHP
- Loại bỏ các bản sao khỏi mảng đa chiều
- Cách chuyển đổi XSD thành mảng bằng PHP
- Chèn mảng PHP vào bảng MySQL
- Hợp nhất hai mảng hoặc nhiều mảng trong PHP
Cách chuyển đổi XML thành mảng kết hợp trong PHP
Loại bỏ các bản sao khỏi mảng đa chiều
if[is_array[$records]]{ foreach [$records as $row] { $fieldVal1 = mysqli_real_escape_string[$conn, $row[0]]; $fieldVal2 = mysqli_real_escape_string[$conn, $row[1]]; $fieldVal3 = mysqli_real_escape_string[$conn, $row[2]]; $query ="INSERT INTO programming_lang [field1, field2, field3] VALUES [ '". $fieldVal1."','".$fieldVal2."','".$fieldVal3."' ]"; mysqli_query[$conn, $query]; } }
Cách chuyển đổi XSD thành mảng bằng PHP
Tùy chọn 2: Mảng chèn php vào bảng cơ sở dữ liệu bằng lệnh chèn đơn
Trong tùy chọn này, chúng tôi sẽ phân tích tất cả dữ liệu hàng và lưu trữ nó vào mảng PHP, bước tiếp theo là - chúng tôi sẽ nổ tất cả dữ liệu hàng và chuẩn bị lệnh chèn SQL để chèn tất cả dữ liệu mảng PHP vào bảng MySQL.
if[is_array[$records]]{ $DataArr = array[]; foreach[$records as $row]{ $fieldVal1 = mysqli_real_escape_string[$conn, $row[0]]; $fieldVal2 = mysqli_real_escape_string[$conn, $row[1]]; $fieldVal3 = mysqli_real_escape_string[$conn, $row[2]]; $DataArr[] = "['$fieldVal1', '$fieldVal2', '$fieldVal3']"; } $sql = "INSERT INTO programming_lang [field1, field2, field3] values "; $sql .= implode[',', $DataArr]; mysqli_query[$conn, $query]; }
PHP cũng cung cấp chức năng
$records = array[ "0" => array["Parvez", "PHP", "12"], "1" => array["Devid", "Java", "34"], "2" => array["Ajay", "Nodejs", "22"] ];1 để chèn một mảng PHP dưới dạng chuỗi vào MySQL. Bạn có thể lưu trữ tất cả các mảng PHP vào bảng MySQL dưới dạng chuỗi bằng cách sử dụng
$records = array[ "0" => array["Parvez", "PHP", "12"], "1" => array["Devid", "Java", "34"], "2" => array["Ajay", "Nodejs", "22"] ];1 và hoàn nguyên mảng PHP trở lại bằng
$records = array[ "0" => array["Parvez", "PHP", "12"], "1" => array["Devid", "Java", "34"], "2" => array["Ajay", "Nodejs", "22"] ];3.
Sự kết luận
Trong bài đăng này, chúng tôi đã học được cách chèn mảng PHP vào bảng cơ sở dữ liệu MySQL bằng PHP. Có hai tùy chọn để chèn một mảng PHP vào bảng MySQL. Chúng tôi cũng có thể lưu trữ mảng PHP vào bảng MySQL bằng hàm PHP
$records = array[ "0" => array["Parvez", "PHP", "12"], "1" => array["Devid", "Java", "34"], "2" => array["Ajay", "Nodejs", "22"] ];1.