简体   繁体   English

如何使用mysql php将数组值存储在数据库中

[英]how can i store the array values in database using mysql php

hi everyone i get the arrays after the exceution how can i store that array in the database coding 大家好,我得到阵列后,如何将数组存储在数据库编码中

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

    $data_t1 = $_POST['t1'];

    foreach ($data_t1 as $key => $value) {

        echo 'T1: ' . $value . '<br />';
        echo 'T2: ' . $_POST['t2'][$key] . '<br />';
          echo 'T3: ' . $_POST['a1'][$key] . '<br />';
        echo 'Username: ' . $_POST['username'][$key] . '<br /><br />';


 echo 'T11: ' . $_POST['t11'] . '<br />';
          echo 'T22: ' . $_POST['t22'][$key] . '<br />';
              echo 'T33: ' . $_POST['a11'][$key] . '<br />';
        echo 'name: ' . $_POST['name'][$key] . '<br /><br />';


    }
      $data_t2 = $_POST['t2'];
      $data_t3=$_POST['a1'];
      $data_t4=$_POST['username'];
      $data_t11 = $_POST['t11'];
      $data_t22=$_POST['t22'];
      $data_t33=$_POST['a11'];
       $data_t44=$_POST['name'];
}
var_dump($data_t1);
var_dump($data_t2);
var_dump($data_t3);
var_dump($data_t4);
var_dump($data_t11);
var_dump($data_t22);
var_dump($data_t33);
var_dump($data_t44);

?>

array are display in ths form 数组以形式显示

 $data_t1( 12  12)
    $data_t2( 4    3)
    $data_t3( 5    6)
    $data_t4( 1.44  1.33)
    $data_t11( 12  12)
     $data_t22( 4    3)
     $data_t33( 5    6)
     $data_t44( 1.44  1.33)

i need to store theses array in the database in ths form 我需要将thses数组存储在数据库中

row1 12   4  5 1.44 12 4 5 1.44
row2 12   3  6 1.33 12 3 6 1.33 

i edited my question 我编辑了我的问题

Here's a snippet that does what you want: 这是一个可以满足您需求的片段:

//database connection
$db = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass);

//query
$sql = "INSERT INTO table (c1, c2, c3, c4) VALUES (:c1, :c2, :c3, :c4)";
$stmt = $db->prepare($sql);
$stmt->execute(array(
   ':c1'=>$data_t1[0],
   ':c2'=>$data_t2[0],
   ':c3'=>$data_t3[0],
   ':c4'=>$data_t4[0],
));

//this is for row1:
+--------------------+
| 12  | 4 | 6 | 1.33 |
+--------------------+   

+++++++++++++++++++++++++++++++++++++++++ 

//and for row2
$stmt->execute(array(
   ':c1'=>$data_t1[1],
   ':c2'=>$data_t2[1],
   ':c3'=>$data_t3[1],
   ':c4'=>$data_t4[1],
));

//this is for row2:
+----------------------+
| 12  |  3  | 5 | 1.44 |
+----------------------+

NB: I didn't do a test run of this code so you might encounter some errors. 注意:我没有对此代码进行测试,因此您可能会遇到一些错误。

EDIT 编辑

Using Barmar's idea just add extra columns c5, c6, c7, c8 and bind them to new values $data_t11[$i], $data_t22[$i], $data_t33[$i], $data_t44[$i] 使用Barmar的想法只需添加额外的列c5, c6, c7, c8并将它们绑定到新值$data_t11[$i], $data_t22[$i], $data_t33[$i], $data_t44[$i]

$sql = "INSERT INTO table (c1, c2, c3, c4, c5, c6, c7, c8) VALUES (:c1, :c2, :c3, :c4, :c5, :c6, :c7, :c8)";
$stmt = $db->prepare($sql);
foreach ($data_t1 as $i => $value) {
    $stmt->execute(array(
       ':c1'=>$data_t1[$i],
       ':c2'=>$data_t2[$i],
       ':c3'=>$data_t3[$i],
       ':c4'=>$data_t4[$i],
       ':c5'=>$data_t11[$i],
       ':c6'=>$data_t22[$i],
       ':c7'=>$data_t33[$i],
       ':c8'=>$data_t44[$i],
    ));
}

This is like Tifa's answer, but uses a for loop so it will work with any number of values. 这就像Tifa的答案,但使用for循环,因此它可以使用任意数量的值。

$db = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass);

//query
$sql = "INSERT INTO table (c1, c2, c3, c4) VALUES (:c1, :c2, :c3, :c4)";
$stmt = $db->prepare($sql);
foreach ($data_t1 as $i => $value) {
    $stmt->execute(array(
       ':c1'=>$data_t1[$i],
       ':c2'=>$data_t2[$i],
       ':c3'=>$data_t3[$i],
       ':c4'=>$data_t4[$i],
    ));
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何使用PHP在MySQL数据库中存储日期? - How can I store a date in a MySQL database using PHP? 如何使用PHP和MySQL在MySQL数据库中存储数组数据? - How to store array data in MySQL database using PHP & MySQL? 我无法使用Simple_html_dom.php将数组存储到MySQL数据库中 - I can't store array into MySQL database, Im using simple_html_dom.php 如何将嵌套/多维数组中的值存储在 MySQL 数据库中? - How can I store values from a nested/multidimensional array in a MySQL database? 如何在使用PHP访问的JavaScript中存储MySQL数据库值 - How to store MySQL database values in JavaScript accessed using PHP 我应该如何在MySQL数据库中存储数组值? - How should I store array values in a MySQL database? 如何将区域语言 php 数组数据(古吉拉特语、印地语、旁遮普语)存储和检索到 mysql 数据库? - How can I store and retrieve regional language php array data (gujarati, hindi, punjabi) to mysql database? 如何使用MySQL和PHP在数据库中的用户之间存储相关值? - How do I store correlation values between users in a database using MySQL and PHP? 如何使用php在MySQL数据库中存储文件和字段数组 - How to store of array of files and fields in mysql database using php 如何使用PHP将MySql值存储为多维数组 - How to store MySql values as Multidimensional Array using PHP
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM