将php数组链接在一起

将php数组链接在一起,php,sql,arrays,Php,Sql,Arrays,我正在尝试将php数组链接在一起 dbTable数组中的值为:-rfq和quote dbColumns数组中的值为:-qid、item、price、id和item dbTData数组中的值为:-1 ball、200、2和bat 输出为:- qid 1 item ball price 200 id 2 item bat 0 => quote 1 => rfq 如图所示,数组dbColumns和dbTData正在链接,但是我如何让dbTable链接到它

我正在尝试将php数组链接在一起

dbTable数组中的值为:-rfq和quote

dbColumns数组中的值为:-qid、item、price、id和item

dbTData数组中的值为:-1 ball、200、2和bat

输出为:-

  qid 1
  item ball
  price 200

  id 2
  item bat

  0 => quote
  1 => rfq 
如图所示,数组dbColumns和dbTData正在链接,但是我如何让dbTable链接到它们呢

因此,输出将是:-

 quote
 qid 1
 item ball
 price 200

 rfq
 id 2
 item bat
到目前为止,守则是:-

    // form variables (arrays) passed over
$dbTData = $_POST["tupleData"];
$dbColumns = $_POST["column"];
$dbTable = $_POST["tableNames"];
$dbName = $_POST["dbName"];

// combining two arrays
$combineCT = array_combine($dbTData, $dbColumns);

// debugging echo database name
echo "The database in use = " . $dbName . "</br> ";

// database connection
$dbConnectionT = mysqli_connect($host, $user, $password, $dbName);
if ($dbConnectionT ->connect_error){
    die ("database connection failed " . $dbConnection->connect_error);
}



//loop through associative array
foreach($combineCT as $message => $answer) 
            {
                echo $answer . " " . $message;
                echo "</br>";
            }

    echo "</br>";

foreach($dbTable as $key => $val)
        {
         echo "$key => $val\n";
            echo "</br>";
        }

创建表单时,应将
tableNames[]
(设置输入的名称)更改为
table[$i][name]
,然后将
列[]
更改为
table[$i][columns][]
tupleData[]
更改为
table[$i][data][]
就足够了。您应该添加一个
$i=0$i++之前执行code>在关闭while循环之前
while($row=$result->fetch_row()){}

当你事后阅读时:

$AllData = $_POST["table"];

foreach ($AllData as $sigleData){

$table = $sigleData['name'];
$columns = $sigleData['columns'];
$columnData = $sigleData['data'];
$combineCT = array_combine($columns , $columnData );

}

现在,您可以使用或回显表的列和数据以及名称。我想总的想法现在应该清楚了。

这有点像一个谜,我真的不明白你想做什么。试试这个:不要试图解释你使用的技术方法,而是修改你的问题,让你首先从用户的角度陈述你的目标。没有太多的技术细节,如数据库和表等。至少根据您提供的信息将$combineCT与$dbTable组合起来……好的,谢谢,您能给我举个例子吗请@jonibendo please//组合两个数组$combineCT=array\u combine($dbTData,$dbColumns)//合并其他数据$combineTotal=array\u combine($dbTable,$combineCT);谢谢,它说:-警告:array_combine():两个参数的元素数应该相等@jonibdenthank非常感谢您的帮助,现在我在“undefined index:name”和&undefined index:columns中遇到一个错误“尽管数据还可以。再次非常感谢@jonid BendoDid您是否更改了上一页的输入名称?是:-表[$i][name][----表[$i]列[]----表[$i][data][]它实际上应该是表[$i][name]----表[$i][columns][]和表[$i][data][],正如我在上面特别写的那样;还要查看实际传递的数据,然后使用正确的变量。
    foreach ($AllData as $sigleData)
    {

        $table = $sigleData['name'];
        $columns = $sigleData['columns'];
        $columnData = $sigleData['data'];
        $combineCT = array_combine($columns , $columnData);

        foreach($combineCT as $colData => $tupleData) 
            {
                $tableS = implode(" ", $table);
                echo $tableS;
                echo "</br>";
                echo $colData. " " . $tupleData;
                echo "</br>";

                $sqlTuples = "INSERT INTO " . $tableS .  " (id, " . $colData . ") VALUES ('1', '" . $tupleData . "')";
                        if ($dbConnectionT->query($sqlTuples) == TRUE) 
                        {
                            echo "database updated";
                            echo "</br>";
                        }

            }
    }
 quote
 qid 1
 quote
 item bin
 rfq
 id 3
 rfq
 item bat
$AllData = $_POST["table"];

foreach ($AllData as $sigleData){

$table = $sigleData['name'];
$columns = $sigleData['columns'];
$columnData = $sigleData['data'];
$combineCT = array_combine($columns , $columnData );

}