我有一个excel文件,我正在AIR中剥离它,并将其转换为以$分隔的字符串。我将该字符串发送到PHP($pushFinal
),然后使用$array = explode("$",$pushFinal);
将该字符串转换为数组。现在我想循环遍历数组,将值插入SQL,模仿excel格式。excel中的每个"行"都是49列,或"值",因此我需要为SQL中的每一行一次插入$array
中的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中的每一行,然后用$分隔该行中的每个值。这在$pushFinal中显示正确。
foreach($array as $val){
$sqlVals[]="'".$val."'";
}
$sqlValsStr = implode(",",$sqlVals);
$sql = "insert into table values(".$sqlValsStr.")";
只要阅读互联网上任何一个基本的PHP/MySQL介绍页面,你就会很快完成代码。假设您已经设置了数据库:)
好的,我明白了。
$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"帮助我将行与值分隔开来。这就像一种魅力。