在mysql中插入一个php数组,将表作为变量或动态表

hc2pp10m  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(371)

我有一个php数组:

$cont_array = Array("613:m-ent:id=one","930:m-lk:id=one;x=180;y=79;which=1","1080:m-lev:id=one;");

我想把它插入一个mysql表,表名作为变量,比如 $table_name = "user1" .
另外,我想用第一个 ":" 。在执行php代码之后,我得到的只是一个空表。
我需要帮助。这是我的密码:

<?php
$connection = mysqli_connect('localhost','root','','prueba');

$cont_array = Array("613:m-ent:id=one","930:m-clk:id=one;x=180;y=79;which=1","1080:m-lev:id=one;");
$table_name = "user1";

$sql_1 = "DROP TABLE IF EXISTS `".$table_name."`;";
$sql_1 .= "CREATE TABLE `".$table_name."` (
        `id` int(11) NOT NULL AUTO_INCREMENT,
        `usercod` varchar(20) NOT NULL DEFAULT '',
        `pid` varchar(1000) NOT NULL DEFAULT '',
        `name` varchar(1000) NOT NULL DEFAULT '',
        `time` varchar(1000) NOT NULL DEFAULT '',
        `all_act` varchar(1000) NOT NULL DEFAULT '',
        PRIMARY KEY (`id`)
        ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;";

mysqli_multi_query($connection,$sql_1);

foreach ($cont_array as $row){
    $break_e = explode(':', $row, 2);
    $sql="INSERT INTO`".$table_name."` (usercode,pid,name,time,all_act) VALUES ("user","pid_value","user_name",'$break_e [0]','$break_e [1]');";
    mysqli_query($connection,$sql);
}
?>

这就是我得到的:

这就是我想要的:

lo8azlld

lo8azlld1#

您的sql语句下面似乎有问题检查。

$sql = "INSERT INTO $table_name (usercod,pid,name,time,all_act) VALUES  ('user','pid_value','user_name','".$break_e [0]."','".$break_e [1]."')";

相关问题