本意是想在html页面上实现上传EXCEL文件内容到服务器的数据库。客户端页面是php + JavaScript,服务器的服务文件也是.php后缀,在网上查了资料,说在客户端用js实现上传限制太多,所以额老师说让另外用C#写个程序,单独实现Excel文件上传功能,但是是把数据提交给远程的服务来执行往数据库中的存储过程。
所以问题来了。。。
EXcel中的文件内容已经能够读出,那怎么往远程服务传啊?,,看了一些代码,都类似于下面这种
yte[] data = Encoding.UTF8.GetBytes(values);
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(“http://localhost/wf/wfServices/jo_EImaintenance/SavePurchaseList.php”);
myRequest.Method = “POST”;
myRequest.ContentType = “application/x-www-form-urlencoded”;
myRequest.ContentLength = data.Length;
Stream myStream = myRequest.GetRequestStream();
myStream.Write(data,0,data.Length);
myStream.Close();
HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
StreamReader myReader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default);
string myResult = myReader.ReadToEnd();
myReader.Close();
额这个“values”参数还是个二维数组,这些代码的意思是把参数转换成byte[]格式进行传输吗?
如果是的话,那我在远程PHP文件中怎么取出其中的各个参数呢?
ps。我目前接触的后台服务处理方式大致都是下面这样的(额觉得主要就是这个values的定义了)
public static function savePurchaseList($db, $values)
{
//initialize params
$params = array();
$sqlAdd="INSERT INTO list_purchase (inputTime, projectNo, belongComponent
,designNo,designName,unit
,designQuantity,techDemand,brandDemand
,vendor,leadTime,checkResult) VALUES";
if($values->resultCount>0)
{
for($i=0;$iresultCount;$i++)
{
$sqlAdd==$sqlAdd."("".now()
."("".$values->project_code
."","".$values->resultValue[i][0]
."","".$values->resultValue[i][1]
."","".$values->resultValue[i][2]
."","".$values->resultValue[i][3]
."","".$values->resultValue[i][4]
."","".$values->resultValue[i][5]
."","".$values->resultValue[i][6]
."","".$values->resultValue[i][7]
."","".$values->resultValue[i][8]
."","未检")";
if($i==$values->resultCount-1)
{
$sqlAdd=$sqlAdd.";";
}
else
{
$sqlAdd=$sqlAdd.",";
}
}
}
如果还有别的方式,可以清楚明白的实现各个参数单独传输的话,麻烦告知一下。