我有一个excel文件,我在AIR中剥离并转换为$ delimited字符串。我将该字符串发送到PHP($pushFinal
),然后使用$array = explode("$",$pushFinal);
将字符串转换为数组。现在我想遍历数组,将值插入SQL,模仿excel格式。 excel中的每个“行”都是49列,或“值”,因此我需要在$array
中为SQL中的每一行插入49个值。
这样做的最佳方式是什么?
我是新手,所以请怜悯我:)
所以,我试过这个:
$pushFinal = $_POST["pushFinal"];
$lines = array();
$lines = explode("|",$pushFinal);
$lineItems = array();
foreach ($lines as $val){
$lineItems = explode("$",$val);
$temp = "";
foreach($lineItems as $val2){
$temp = $temp."'".$val2."',";
}
$sql="insert into OPS_SCHEDULE values($temp)";
$stmt = sqlsrv_query($conn,$sql);
}
INSERT失败了。这看起来不错吗?我用excel分隔了excel的每一行然后用$分隔该行中的每个值。这在$ pushFinal中正确显示。
答案 0 :(得分:1)
foreach($array as $val){
$sqlVals[]="'".$val."'";
}
$sqlValsStr = implode(",",$sqlVals);
$sql = "insert into table values(".$sqlValsStr.")";
答案 1 :(得分:0)
只需阅读互联网上任何基本的PHP / MySQL介绍页面,您就可以立即完成代码。假设您已经安装了数据库:)
答案 2 :(得分:0)
好的,我明白了。
$pushFinal = $_POST["pushFinal"];
$lines = array();
$lines = explode("|",$pushFinal);
$lineItems = array();
foreach ($lines as $val){
$lineItems = explode("$",$val);
$temp = "";
foreach($lineItems as $val2){
$temp = $temp."'".$val2."',";
}
$temp = substr($temp, 0, -1);
$sql ="insert into table values($temp)";
$stmt = sqlsrv_query($conn,$sql);
}
我必须从每个$temp
行中删除尾随的“,”。感谢“lc”帮助我将行与值分开分隔。这就像一个魅力。