(Uzmanlık Sorusu) Delphi"De Web."Deki Bir File A Yazdırmak
-
Uzmanlık sorusu diye azcık dikkat çeksin diye yazdım kusura bakmayın ama ben bu işe çözüm bulamadım yardımcı olabilecek varsa sevinirim...
Şimdi delphide memo kontrolumuz ve içinde kullanıcının yazdıgı metin olacak...Butona tıkladıgımız zaman memo kontrolundeki yazıları www.mysite.com/deneme.txt dosyasına yazdıracak...
Yani kendi sitemdeki herhangi bir text dosyasına yazdırmak istiyorum...
Böyle birşey için nasil bir api,komponent vs kullanmak gerekir...
Teşekkurler
-
ya da nasıl yapılacağından önce böyle bir olay mümkün müdür?
-
Selam ; Cevap için biraz geç olabilir ama şöyle mantığını anlatabilirim ben olayı yaptım fakat kodlar aklıma gelmiyor şu anda
Şimdi dediğin gibi txt dosyasina yazdıramazsın nasıl yapabilirsin bir asp blogger scripti bulursun onuda www.aspindir.com'a gir blogger diye arama yap orada txt dosyasina bilgi yazmakla ilgili scriptler çıkar,bir tanesini indir indirdikten sonra da kendine göre ne istiyorsan öyle düzenle.
Sonradelphi' ye gel form'a bir tane webbrowser koy, kodu hatırlayamıyorum ama sen bu aşamaya kadar gel ben sana kodlarını veririm işin mantığı bilgileri edite gireceksin bilgiler gidip internette bulunan sayfandaki kutuların içine yerleşecek ve bir kod daha yazacaksın o bilgiler asp sayfandaki gönder butonuna tıklanmış gibi olacak yani bilgiler asp sayfandan şakkkk!! txt dosyana kayıt edilecek
Saygılar
KAAN
-
WEB SAYFASINA BİLGİ 2 ŞEKİLDE YOLLANIR
1. GET METODU
2. POST METODU
1- Bu metod adres kısımına gönderilen parametre ile yapılır.
adres:='http://www.google.com/search?q=+' Edit1.Text bunu webbrowser1.navigate (adres) diye yollaya bilirsin.
2. Bu metod güvenli bir metod olduğu için çoğu site bunu kullarınır. Tahribatın kullanıcı girişinden örnek verelim.
<input type="hidden" name="redirect" value="http://www.tahribat.com/index.asp">
veri='redirect=http://www.tahribat.com/index.asp';
<input type="text" name="username" size="11"
NmUrl1.InputString:=Edit1.Text
Edit1.text=NmUrl1.Encode // verileri url formatına çeviriyoruz
veri:=veri+'&username='+Edit1.text
webbrowser1.navigate(adres,flags,frame,str,headers) ;
bu şekilde yapabilirsin.
-
html deki metin kutularını, butonları, açılır kutuları, check ve radio kutularını browser aracılığıyla el değmeden kontrol eder. delphi 5 veya 6'nın ../demos/coolstuf/webbrows.dpr projesinin main formuna gerekli butonları ekleyip deneyin.
procedure TMainForm.Button1Click(Sender: TObject);
//web sayfasındaki metin kutularına "email@aaa.aaa" yazar
//sorguda element.name:= 'TextKutsununHTML_Adı' yazılarak istenilen kutuya istenilen değer yazılır
var
Doc: IHTMLDocument2;
I: Integer;
Element: OleVariant;
Elements: IHTMLElementCollection;
begin
Doc := WebBrowser1.Document as IHTMLDocument2;
Elements := Doc.all;
for I := 0 to Elements.length - 1 do
begin
Element := Elements.item(I, varEmpty);
if (Element.tagName = 'INPUT') and (Element.type = 'text') then
Element.value := 'email@aaa.aaa';
end;
end;
procedure TMainForm.Button3Click(Sender: TObject);
//web sayfasında gönder adıyla gözüken butona basar,
//yani "click" olayı gerçekleşir
var
ovElements: OleVariant;
i: Integer;
begin
ovElements := WebBrowser1.OleObject.Document.forms.item(0).elements;
for i := 0 to (ovElements.Length - 1) do
if (ovElements.item(i).type = 'submit') and
(ovElements.item(i).Value = 'Gönder') then
ovElements.item(i).Click;
end;
procedure TMainForm.Button4Click(Sender: TObject);
//web sayfasındaki combo box taki istenilen satırı seçer
//burada 2
var
Doc: IHTMLDocument2;
I: Integer;
Element: OleVariant;
Elements: IHTMLElementCollection;
begin
Doc := WebBrowser1.Document as IHTMLDocument2;
Elements := Doc.all;
for I := 0 to Elements.length - 1 do
begin
Element := Elements.item(I, varEmpty);
if (Element.tagName = 'SELECT') then
element.item(2).selected :=1;
end;
end;
procedure TMainForm.Button5Click(Sender: TObject);
var
Doc: IHTMLDocument2;
I: Integer;
Element: OleVariant;
Elements: IHTMLElementCollection;
begin
Doc := WebBrowser1.Document as IHTMLDocument2;
Elements := Doc.all;
for I := 0 to Elements.length - 1 do
begin
Element := Elements.item(I, varEmpty);
if (Element.tagName = 'INPUT') and (Element.type = 'radio')
and (element.value='V2') then
element.checked:=1;
end;
end;
procedure TMainForm.Button6Click(Sender: TObject);
var
Doc: IHTMLDocument2;
I: Integer;
Element: OleVariant;
Elements: IHTMLElementCollection;
begin
Doc := WebBrowser1.Document as IHTMLDocument2;
Elements := Doc.all;
for I := 0 to Elements.length - 1 do
begin
Element := Elements.item(I, varEmpty);
if (Element.tagName = 'INPUT') and (Element.type = 'checkbox')
and (element.name='C2') then
element.checked:=1;
end;
end;
end.birde bunu dene.
-
Bi başka çözümde direkt ftp baglantisi yada webdav ile login olarak put yapmak olabilir.