我有代码php。而且我不会插入数据库。此代码错误的插入可以帮助更正我的代码php
此代码
$data = "3 003.3.003.003.006 31500.0,3 003.3.003.003.003 76500.0,4 003.3.003.003.002 72000.0,5 003.3.003.003.004 153750.0,6 003.3.003.003.005 187500.0,3 003.3.003.003.001 46500.0,";
$exone = explode(",",$data);
for ( $i = 0; $i < count( $exone ); $i++ ) { $extwo = explode(" ",$exone[$i]);
for ( $j = 0; $j < count( $extwo); $j++ ) { echo $extwo[$j]. "<br />";
$sql = "INSERT INTO tbl_test(qty, kode, price) VALUES('$extwo[$j]','$extwo[$j]',$extwo[$j]')";
echo $sql;}}
答案 0 :(得分:1)
字符串以逗号“,”结尾,因此程序可能最后试图添加null。尝试删除最后一个逗号。
答案 1 :(得分:0)
不需要第二个for
循环,您可以在之后访问值
explode
。
explode()
将$data
字符串乘以,
,循环搜索结果,并explode()
将每个结果(如果不为空)按空格隔开:
<?php
$data = "3 003.3.003.003.006 31500.0,3 003.3.003.003.003 76500.0,4 003.3.003.003.002 72000.0,5 003.3.003.003.004 153750.0,6 003.3.003.003.005 187500.0,3 003.3.003.003.001 46500.0,";
$exone = explode(",", $data);
foreach ( $exone as $x ) {
if ( !empty($x) ) {
$extwo = explode(" ", $x);
// var_dump($extwo);
$sql = "INSERT INTO tbl_test(qty, kode, price) VALUES('{$extwo[0]}','{$extwo[1]}','{$extwo[2]}');";
echo $sql . PHP_EOL;
}
}
输出:
INSERT INTO tbl_test(qty, kode, price) VALUES('3','003.3.003.003.006','31500.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('3','003.3.003.003.003','76500.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('4','003.3.003.003.002','72000.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('5','003.3.003.003.004','153750.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('6','003.3.003.003.005','187500.0');
INSERT INTO tbl_test(qty, kode, price) VALUES('3','003.3.003.003.001','46500.0');
如果取消注释行// var_dump($extwo);
,您将看到$extwo
是具有所需值的数组。您可以使用$extwo[0]
,$extwo[1]
...