0
我有用户上传excel文件中的数据到我的服务器,解析并显示在我的网站上。我有一个问题,如果用户在excel文件中有一个单撇号,它会切断它后面的所有内容。这是因为sql(用于获取excel数据)和asp经典代码(用于显示动态html数据)都将其解释为字段分隔符。我用php来处理excel文件并用我想要的任何字符替换撇号。我试图使用撇号的转义版本无效“\'”,“''”,“\'\'”,“'”。这是因为即使他们解决了sql正确攫取数据的问题,ASP代码在显示之前仍然会截断字符。最后我用“**”,以替换撇号要过去的SQL,但它是为用户通过ASP输出之前,必须将其转换回一个撇号:单一撇号解析问题ASP CLASSIC
formString= formString & "<tr>" & _"<td align='left'><input name='FirstName' type='text' size='9' maxlength='12' value='"&replace(someUglyString,"**","'")&"'></td>"
有没有人碰到这个?有任何想法吗?根据要求
PHP:
for ($i = 1; $i <= $objPHPExcel->getActiveSheet()->getHighestRow(); $i++) {
$cell = $objPHPExcel->getActiveSheet()->getCellByColumnAndRow('A', $i);
$cell->setValue(str_replace("'","**",$cell->getValue()));
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow('A',$i,$cell->getValue());
}
对不起,你为什么混合ASP和PHP?你不能只选择一种语言并坚持下去吗?另外,请向我们展示用于将文件处理到数据库中的PHP代码,因为这是真正的问题所在。 – DaveRandom 2012-07-25 16:51:23
该PHP工作正常,它取代了我告诉它。只是稍后输出字段的asp是什么问题。 PHP读取excel文件并将字段中的撇号转换为我所需的内容,然后将其重新保存在服务器上。 – woodlumhoodlum 2012-07-25 16:55:22
我的观点是“用随机字符串替换”方法是错误的 - 您应该简单地转义输入,以便将原始数据正确输入到数据库中。 – DaveRandom 2012-07-25 17:00:09