asp存儲數據
『壹』 ASP中的SESSION都可以儲存何種類型數據
可以儲存任何類型的數據,包括對象。比方說你可以把資料庫連接對象賦值給一個session,那麼在同一個session范圍內的網頁都可以共用這個對象而無需反復打開和連接資料庫。要注意的是給對象變數賦值要用set,比如:
set session("x")=server.createobject("......")
也可以儲存數組,比如:
Dim a(5)
a(0)=111
a(1)=222
.....
session("xxx")=a
調用方法:
b=session("xxx")
response.write b(0)
『貳』 asp保存網頁上的數據為txt的方法
<%
ifrequest("tj")<>""then
txt1=request("txt1")
txt2=request("txt2")
txt3=request("txt3")
txt4=request("txt4")
txt5=request("txt5")
setfso=server.createobject("scripting.filesystemobject")
setf=fso.opentextfile(server.mappath("_private"&year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&".txt"),2,true)
f.writelinenow()
f.writelinetxt1
f.writelinetxt2
f.writelinetxt3
f.writelinetxt4
f.writelinetxt5
f.close
setf=nothing
setfso=nothing
%><script>alert("成功!")</script><%
endif
%>
<form>
<textareaname=txt1><%=txt1%></textarea><br>
<textareaname=txt2><%=txt2%></textarea><br>
<textareaname=txt3><%=txt3%></textarea><br>
<textareaname=txt4><%=txt4%></textarea><br>
<textareaname=txt5><%=txt5%></textarea><br>
<inputname=tjtype=submitvalue="提交">
</form>
『叄』 ASP.NET中如何實現臨時數據儲存
首先給這些文件重命名,考慮不同用戶,在SESSION中取出用戶名假設是USER001,將上傳文件的文件重命名為USER001_1.XXX、USER001_2.XXX等等,可以在站點專門設個文件夾來放。
接著,讀文件中寫入頁面,根據文件格式不同,方法不同。
最後,寫入資料庫。
『肆』 ASP讀取存儲資料庫信息
連接資料庫代碼
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};uid=;pwd=;dbq="&server.mappath("xxx.mdb")
其中xxx.mdb表示你的資料庫名稱
建立記錄集
set rs=server.createobject("adodb.recordset")
sql="select * from xxx"
rs.open sql,conn,1,1
如果是要添加或者修改數據,那麼就改成
rs.open sql,conn,1,3
其中xxx表示你資料庫中的某個表
讀取資料庫
rs("欄位名")
修改資料庫
rs.addnew
rs("欄位名")=你要添加的內容
.....
rs.update
如果你是從上一個頁面的文本框後的內容,那麼先用request.form("文本框名稱")獲得提交內容,然後
rs.addnew
rs("欄位名")=request.form("文本框名稱")
.....
rs.update
這樣就可以添加了
如果是修改的話
sql要寫成
sql="select * from xxx where 欄位名=你要修改的欄位的名稱,比如說where id=1這樣"
rs.open sql,conn,1,3
注意這里就不要用rs.addnew了
直接
rs("欄位名")=request.form("文本框名稱")
.....
rs.update
這樣就修改了數據。
『伍』 asp、php、jsp利用資料庫存儲10000次數據怎麼實現
以PHP為例:
<?php
var
$host;
//mysql定義主機名
var
$user;
//mysql用戶名
var
$passwd;
//密碼
var
$database;//資料庫名
var
$conn;
//連接對像
$conn=mysql_connect($host,
$user,$passwd);//打開伺服器
mysql_select_db($database,$conn);//選擇資料庫
var
$account
=
1;
var
$pwd
=
'123456';
var
$sex
=
'1';
var
$email
=
'[email protected]';
for($i
=
0;$i<10000;$i++){
$res
=
mysql_query("insert
into
user(account,pwd,email,sex,regtime)
values
($account,$pwd,$email,$sex,now())");
account++;
}
?>
這樣應該就可以插入10000數據了,在製作資料庫時,創一列自增列設為主鍵,或者或者可以把account設為主鍵也可以,還是自增列設為主鍵比較規范
『陸』 asp數據存儲問題
復制下去試試:
<%
sj=cdate(Request("textfield"))
Response.Write(cstr(sj)+"<br>")
zcxm=cstr(Request("textfield2"))
Response.Write(cstr(zcxm)+"<br>")
je=clng(Request("textfield3"))
Response.Write(cstr(je)+"<br>")
bz=cstr(Request("textfield4"))
Response.Write(cstr(bz)+"<br>")
set df =server.CreateObject ("adodb.recordset")
df.open "select * from 收支表",conn,1,3
df.addnew
df("時間")=sj
df("支出項目")=zcxm
df("金額")=je
df("備注")=bz
df.update
df.close
conn.close
%>
『柒』 asp 怎樣上傳Excel文件後把數據存儲在資料庫
將excel數據通過asp導入資料庫:
參考代碼:
wenjian=request.Form("floor")
fileext=mid(wenjian,InStrRev(wenjian,".")+1)
if lcase(fileext)<>"xls" then
response.write "<script>alert ('文件格式不對,請上傳Excel文件');window.location.href='updateFloor.asp';</script>"
response.end
end if
set conne=server.CreateObject("ADODB.Connection")
『捌』 在ASP中,如何把圖片和文字同時保存到資料庫中,並在需要時同時輸出。
假設有這樣一個表單。
<form id="myform" enctype="multipart/form-data" action="upload.asp" method="post">
<input type="file" name="file1"><!-用於提交文件,既圖片文件-->
<input type="text" name="mytext"><!-用於提交文字信息-->
<input type="submit" name="tj" value="提交"><!--表單提交按鈕-->
</form>
表單能提交圖片,也能提交文字。內容提交到upload.asp去處理。下面是upload.asp裡面的部分內容。
<%Response.Charset="utf-8"%>
<%
'查詢字元串thisstr2在字元串thisstr1裡面第N次出現的位置,如果沒有出現,返回空。
'這個函數也很有用。比如獲得文件名的時候,文件名 name="file1" filename="abc.jpg",先二進制轉文本,然後找到雙引號第三次出現的位置和第四次出現的位置,兩個位置中間的內容就是文件名,還可以得到文件的擴展名"jpg"
function strN(thisN,thisstr1,thisstr2)
thistemp=1
for thiss=1 to len(thisstr1)
thisdatastart=instr(thistemp,thisstr1,thisstr2)
if thisdatastart=0 or thisdatastart=null then
exit for
end if
if thisdatastart<>0 or thisdatastart<>null then
thistemp=thisdatastart+len(thisstr2)
thiscishu=thiscishu+1
if thiscishu=thisN then
strN=thisdatastart
exit for
end if
end if
next
if thiscishu<thisN then
strN=""
end if
end function
'查詢二進制數據流thisstr2在thisstr1裡面出現的次數。這個函數在已知表單提交信息條數的情況下就用不到。但如果是表單提交的信息條數未知,比如批量上傳圖片的時候,不知道有多少個type="file"的input,就需要用這個函數先判斷一下。既判斷分割符在提交數據裡面出現的次數。出現了n次則有n-1條數據提交。
function mynumberb(thisstr1,thisstr2)
thistemp=1
for thisn=1 to len(thisstr1)
thisdatastart=instrb(thistemp,thisstr1,thisstr2)
if thisdatastart=0 or thisdatastart=null then
exit for
end if
if thisdatastart<>0 or thisdatastart<>null then
thistemp=thisdatastart+len(thisstr2)
thiscishu=thiscishu+1
end if
next
mynumberb=thiscishu
end function
'查詢二進制數據流thisstr2在thisstr1裡面第thisN次出現的位置,如果沒有出現,返回空。
'這個函數很有用,比如表單傳過來的數據都是用回車換行符號隔開的。只需要查詢回車換行符號第4次出現的位置和第五次出現的位置,就能找到文件二進制數據開始和結束的位置。如果表單發送過來的是文本信息,只需要找到回車換行符號第三次出現的位置和第四次出現的位置,就能找到文本的二進制數據。然後二進制轉文本,就提取出文本內容了。
function strNb(thisN,thisstr1,thisstr2)
thistemp=1
for thiss=1 to len(thisstr1)
thisdatastart=instrb(thistemp,thisstr1,thisstr2)
if thisdatastart=0 or thisdatastart=null then
exit for
end if
if thisdatastart<>0 or thisdatastart<>null then
thistemp=thisdatastart+len(thisstr2)
thiscishu=thiscishu+1
if thiscishu=thisN then
strNb=thisdatastart
exit for
end if
end if
next
if thiscishu<thisN then
strNb=""
end if
end function
'二進制轉文本
Function stb(vin)
const adTypeText=2
dim BytesStream,StringReturn
Set BytesStream=Server.CreateObject("ADODB.Stream")
with BytesStream
BytesStream.Type=adTypeText
BytesStream.Open
BytesStream.WriteText vin
BytesStream.Position=0
BytesStream.Charset="utf-8"
BytesStream.Position=2
StringReturn=BytesStream.ReadText
BytesStream.Close
end with
set BytesStream=Nothing
stb=StringReturn
end function
'以上幾個函數介紹完畢。接下來就是實際處理表單提交的信息了。
response.buffer=true
formsize=request.totalbytes
formdata=request.binaryread(formsize)
hcf=chrB(13)&chrB(10)'回車換行符號
fgf=leftB(formdata,clng(instrb(formdata,hcf))-1)'分隔符
cd=lenb(fgf)'分割符的長度
'截取第一條數據,既文件數據。
mydatastart=strnb(1,formdata,fgf)+cd
mydataend=strnb(2,formdata,fgf)-1
mydatasize=mydataend-mydatastart+1
formdata1=midb(formdata,mydatastart,mydatasize)'第一條提交的數據信息,既第一個type=file的圖片文件
'得到文件的名字
mytempdata=stb(formdata1)
mydatastart=strn(3,mytempdata,"""")+1'雙引號第三次出現的位置加1就是文件名出現的開始位置
mydataend=strn(4,mytempdata,"""")-1'雙引號第四次出現的位置就是文件名結束的位置
mydatasize=mydataend-mydatastart+1
wjfilename=mid(mytempdata,mydatastart,mydatasize)'得到文件名字,就是提交的那個圖片的名字,比如"myimg.jpg"
'截取圖片文件的二進制數據
mydatastart=strnb(4,formdata1,hcf)+2'回車符號第四次出現的位置加2就是圖片文件的二進制數據開始的位置
mydataend=strnb(5,formdata1,hcf)-1'回車符號第五次出現的位置減1就是圖片二進制數據結束的位置
mydatasize=mydataend-mydatastart+1'圖片文件二進制數據的長度
wjdata=midb(formdata1,mydatastart,mydatasize)'得到圖片文件的二進制數據
'截取第二條數據,既截取提交的文本二進制數據
mydatastart=strnb(2,formdata,fgf)+cd
mydataend=strnb(3,formdata,fgf)-1
mydatasize=mydataend-mydatastart+1
formdata2=midb(formdata,mydatastart,mydatasize)'第二條提交的數據信息,既提交的文字信息。
'提取文本
mydatastart=strnb(3,formdata2,hcf)+2
mydataend=strnb(4,formdata2,hcf)-1
mydatasize=mydataend-mydatastart+1
wbdata=midb(formdata2,mydatastart,mydatasize)
wb=stb(wbdata)
'到此,表單信息全部接收完畢。
'wjfilename:文件名。
'wjdata:文件二進制數據。
'wb:文字信息。
'下面要做的就是把文本信息存入資料庫。把文件的二進制數據轉換成圖片存入文件夾,也可以直接二進制數據存放到資料庫裡面。
'至於怎麼存放路徑等一系列問題,這些都是簡單問題。最難啃的骨頭已經啃完了。
'文件信息存入文件夾提供一種思路,這種思路比較簡單。
'access裡面的temp欄位是存儲二進制數據的,表名也叫temp
'call conn_open(conn,"xxx.mdb")打開access
'sql="select * from temp"
'call rs_open3(rs,sql)打開表
' rs.addnew
' rs("temp").appendchunk wjdata
' rs.update
' Set MyStream=Server.CreateObject("Adodb.Stream")
' MyStream.Type=1
' MyStream.Open
' MyStream.Write rs("temp").getChunk(8000000) 把資料庫裡面的圖片讀出來
'得到圖片上傳的日期時間連接1到1000之間的隨機數做圖片的名字,把時間裡面的左斜杠,冒號以及空格都替換掉。
' picName=replace(now(),"/","")
' picName=replace(picName,":","")
' Randomize
' picName=replace(picName," ","")&Int((1000 * Rnd) + 1)
' MyStream.SaveToFile server.mappath("img/"&picName&".jpg")
'把圖片存入目錄,注意,這里如果事先前端做了判'斷用戶提交的圖片就必定是"jpg"格式,所以可以直接用。如果前端沒做判斷,就用剛'才得到的split(wjfilename,".")(1)作為擴展名。這玩意兒能看懂吧,wjfilename裡面保存的是圖片名字"abcd.jpg",用"."分割,
'後面的那個就是"jpg"圖片擴展名
' MyStream.close
' set MyStream=nothing
'call rs_close(rs)關閉表
'call conn_close(conn)關閉access
%>
以上提供的思路既然可以圖片文字一起提交,也可以在不知道表單提交數據條數的情況下批量混合提交圖片和文字信息。原理是死的,人的思路是活的。活學活用最好。
『玖』 ASP批理存儲數據
1.檢查num1(i)數組大小是否正確:單獨輸出一次測試一下,
2.仔細檢查欄位名稱是否正確,看看數據表裡面有沒有這個欄位名稱
『拾』 asp怎樣保存接收來的數據到一個文件啊
您好,我來為您解答:
大部分的下載都是這樣的,資料庫存儲位置路徑鏈接,實際文件存儲在指定文件夾中。
使用一個文件上傳類,網路一下很多,也有實例。
希望我的回答對你有幫助。