PDA

View Full Version : Lỗi Object expected



dasky
27-04-2009, 14:45
Có code giỏ hàng bị lỗi như sau:
Microsoft JScript runtime (0x800A138F)
Object expected
/dvd/user/Process_GioHang.asp, line 120



<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<!--#include file = "../include/Connection.asp"-->
<%
Session.CodePage = 65001
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>...:::Giỏ Hàng:::...</title>
</head>
<body>
<%
//Nhận các giá trị từ Session lưu vào mảng
var thamso=parseInt(Request.QueryString("IdPhim"));
var IdPhim=Session("IdPhim");
var tenPhim=Session("tenPhim");
var hinhAnh=Session("hinhAnh");
var theLoai=Session("theLoai");
var gia=Session("gia");
var soLuong=Session("soLuong");
var tongSoPhim=Session("tongSoPhim");

Session.Timeout=20;

if(isNaN(thamso))
{
//Thao tác Update thông tin giỏ hàng
if (Request.QueryString("Action")=="Update")
{
for(var i=1;i<=tongSoPhim;i++)
{
soLuong[i]=parseInt(Request.Form("txtSoLuong"+i))
}
Session("soLuong")=soLuong;
Response.Redirect("GioHang.asp");
}
//Xóa bỏ hết toàn bộ sản phẩm trong giỏ hàng
else if (Request.QueryString("Action")=="DeleteAll")
{
tongSoPhim=0
Session("tongSoPhim")=tongSoPhim;
Response.Redirect("GioHang.asp");
}
//Thanh toán những sản phẩm đã có trong giỏ hàng
else if (Request.QueryString("Action")=="ThanhToan")
{
//for(var i=1;i<=tongSoPhim;i++)
//{
//soLuong[i]=parseInt(Request.Form("txtSoLuong"+i))
//}
//Session("soLuong")=soLuong;
Response.Redirect("DonHang.asp");
}
//Xóa 1 sản phẩm có trong giỏ hàng
else if (!isNaN(Request.QueryString("Delete")))
{
var stt
stt=parseInt(Request.QueryString("Delete"))
IdPhim[stt]="";
tenPhim[stt]="";
hinhAnh[stt]="";
theLoai[stt]="";
soLuong[stt]=0;
gia[stt]=0;
for(var i=stt;i<=tongSoPhim;i++)
{
tenPhim[i]=tenPhim[i+1];
IdPhim[i]=IdPhim[i+1];
soLuong[i]=soLuong[i+1];
hinhAnh[i]=hinhAnh[i+1];
theLoai[i]=theLoai[i+1];
gia[i]=gia[i+1];
}
tongSoPhim=tongSoPhim-1;
Session("IdPhim")=IdPhim;
Session("tenPhim")=tenPhim;
Session("hinhAnh")=hinhAnh;
Session("theLoai")=theLoai;
Session("gia")=gia;
Session("soLuong")=soLuong;
Session("tongSoPhim")=tongSoPhim
Response.Redirect("GioHang.asp");
}
}
else
{
//Thêm sản phẩm vào giỏ hàng

var rsPhim = Server.CreateObject("ADODB.RecordSet");
var sql = "SELECT MaSanPham,TenSanPham,GiaSanPham,HinhAnh,TheLoai FROM tblSanPham WHERE MaSanPham = " + thamso
rsPhim.Open(sql,Conn)
//rsPhim = Conn.Execute(sql)

//Nếu sản phẩm đã có trong giỏ hàng thì cộng thêm
if (!isNaN(thamso))
{
ok=false; //Biến kiểm tra xem sản phẩm vừa chọn đã có hàng trong giỏ chưa
for(var i=1;i<=tongSoPhim;i++)
{
if (parseInt(IdPhim[i])==parseInt(thamso))
{
if(soLuong[i]<15)
{
ok=true; //Nếu có rồi thì cho sản phẩm có trong giỏ tăng thêm 1
soLuong[i]=parseInt(soLuong[i])+1;
break;
}
}
}

if (ok==false)
{
//Đảm bảo đơn hàng không được quá 15 sản phẩm
if (tongSoPhim<15)
{
tongSoPhim++;
}
//Thêm hàng vào giỏ
tenPhim[tongSoPhim]=rsPhim("TenSanPham").Value;
IdPhim[tongSoPhim]=rsPhim("MaSanPham").Value;
hinhAnh[tongSoPhim]=rsPhim.Fields("HinhAnh").Value;
theLoai[tongSoPhim]=rsPhim.Fields("TheLoai").Value;
gia[tongSoPhim]=rsPhim.Fields("GiaSanPham").Value;
soLuong[tongSoPhim]=1;
Session("IdPhim")=IdPhim;
Session("tenPhim")=tenPhim;
Session("hinhAnh")=hinhAnh;
Session("theLoai")=theLoai;
Session("soLuong")=soLuong;
Session("gia")=gia;
Session("tongSoPhim")=tongSoPhim;
}
rsPhim.Close();
Response.Redirect("GioHang.asp");
}
}
Conn.Close()
Response.Redirect("GioHang.asp");
%>
</body>
</html>

Các bro xem giúp:(

dasky
05-05-2009, 17:32
Chẳng ai sửa được lỗi này sao???Nản thật+_+