دوست من
موضوع خيلي واضح تر از اونه كه اينقدر باهاش مشكل داشته باشيد.
شما سورس يك فايل htm رو تو ديتابيستون ذخيره كرديد. تو اين فايل شما تعدادي عكس داريد كه وقتي اين فايل رو فراخواني ميكنيد نميتونه تصاوير رو نمايش بده. دليلشم اينه كه آدرس تصاوير شما تو اين فايل كامل نيست.
براي اينكه بتونيد تصاوير رو هم نمايش بديد بايد تو اين متن بگرديد و آدرسها رو اصلاح كنيد.
گام اول اينه كه بدونيم چه آدرسي رو بايد تغيير بديم. و آدرس كامل اون تصوير چي هست. خب ما آدرس عكس رو جدا ميكنيم و تو ديتابيسمون ذخيره ميكنيم.
همون مثلا قبلي رو در نظر بگيريد. شما تصويرتون رو تو پوشه pic قرار داديد و آدرسي كه تو فايل htm شما نوشته شده pic/pic.jpg هست.
اين آدرس رو تو فيلد بعدي ديتابيستون ذخيره ميكنيد و موقع فراخواني متن اين آدرس رو بخونيد و تو يك متغير رشتهاي بريزيد.
گام بعدي اينه كه اين آدرس رو كامل كنيد. اين رو قبلا گفتم:
کد:
pic_path$ = '<SrcDir>\\' + db_address$
حالا بايد اين آدرس جديد رو با آدرس قبلي تو متن htm تون جايگزين كنيد.
براي اينكه بتونيد اين آدرس رو با آدرس قبلي جايگزين كنيد بايد بدونيد كه آدرس عكس تو متن htm شما تو چه خطي نوشته شده و با توابع رشتهاي اين آدرس رو جايگزين كنيد.
براي اينكه بتونيم شماره خط موردنظر رو پيدا كنيم كافيه تو يك حلقه با تابع POS دنبال عبارتي بگرديم كه شبيه به مقدار ديتابيس ماست. اين كد رو ببينيد:
کد:
path$ = 'your html file address'
pic_path$ = '<SrcDir>\\'
For i=1 To NOL(path$)
str$ = StrFromFile(path$,i,1)
x = POS(db_address$,str$)
If (x<>0) Then
string$ = StrIns(str$,pic_path$,x)
retval = StrToLine(path$,string$,i,TRUE)
Return()
End
Next i
تو اين كد تو فايل html موردنظر تو خطي كه تابع POS بتونه نتيجه جستجو رو پيدا كنه آدرس كامل تصوير رو به آدرس تصوير اضافه ميكنه. و بعد از حلقه خارج ميشه.