Webbrowser post ile Forumlara login olmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Webbrowser post ile Forumlara login olmak

Mesaj gönderen G.Arkas »

Merhaba arkadaşlar küçük 2 adet sıkıntımı paylaşmak istiyorum.

1- Örnek olarak

Kod: Tümünü seç

EmbeddedWB1.Navigate( 'http://www.delphiturkiye.com/forum/ucp.php?mode=login' );
While EmbeddedWB1.ReadyState <> READYSTATE_COMPLETE do Application.ProcessMessages;
EmbeddedWB1.OleObject.Document.GetElementByID('username').Value:=first.Text;
EmbeddedWB1.OleObject.Document.GetElementByID('password').Value:=last.Text;
EmbeddedWB1.OleObject.Document.GetElementByID('login').click
Bu foruma Webbrowser post ile login olmaya çalıştığımda 'login' komutunu işletemiyorum
Aslında sadece bu forum için değil diğer forumlardada aynı sıkıntıyı yaşadım.Fikri olan arkadaşlara yardımları için çok teşekkkürler şimdiden.

* Bu gibi durumlarda IDHttp mi yoksa Webbrowser mi önerirsiniz?

2 - Garanti Bankasına değerleri post ederken hata alıyorum Seçili bölümün HTML kaynağı aşağıda

Kod: Tümünü seç

<td width="10" align="right" height="31">&nbsp;</td>
      	<td width="124" align="right"><img src="/tr/images/1.gif" width="124" border="0" height="31"></td>
      	<td width="124" align="right"><a href="#" onclick="showKartBasvuru();"><img src="/tr/images/2.gif" width="124" border="0" height="31"></a></td>

      	<td width="17" align="right">&nbsp;</td>
    </tr>
    <tr>
    	<td align="right" height="35">&nbsp;</td>
    	<td colspan="2" align="right" height="35"><img src="/tr/images/welcome1.gif" width="248" height="20"></td>
    	<td align="right" height="35">&nbsp;</td>
    </tr>
    </tbody></table>
    </td>

</tr>
  <tr> 
    <td height="120"><table width="270" border="0" cellpadding="0" cellspacing="0">
      <tbody><tr>
        <td width="130"><img src="/tr/images/m_no.gif" vspace="7" width="125" height="16"></td>
        <td width="140"><input name="textMARS" class="field" maxlength="9" type="text"></td>
      </tr>
      <tr>  
        <td><img src="/tr/images/parola.gif" vspace="7" width="125" height="16"></td>
        <td>

        <div id="jaguarEditLocator">
		<script language="JAVASCRIPT" type="text/javascript">
		<!--
		insertKalkan('JagEditParola', '', 'PAROLA', 'parola', '15', '8', '20', '', '');  
		//-->
		</script><input name="PAROLA" size="15" maxlength="8" class="parola" type="password">     
        </div>
        </td>  
      </tr> 
      <tr valign="bottom">
        <td colspan="2" height="30"><img src="/tr/images/x.gif" width="22" height="5">Şirketlerin
          İnternet Kullanıcıları İçin <img src="/tr/images/alta_ok.gif" width="11" align="absbottom" height="11"></td>
    </tr>
      <tr>

        <td><img src="/tr/images/kod.gif" vspace="7" width="125" height="16"></td>
        <td><input name="textUSERCUSTNO" class="field" maxlength="9" type="text"></td>
      </tr>
    </tbody></table></td>
  </tr>
  <tr>
    <td align="right" height="35">
	<input name="hiddenCHOICE" value="1" type="hidden"> 
	<input name="LANG" value="TR" type="hidden">

    <input name="hiddenPASSFIELD" type="hidden">
    <input name="hiddenTOKEN" type="hidden">
    <input name="hiddenJVERSION" type="hidden">
    <input name="hiddenJRK" type="hidden">
    <input name="hiddenJBHO" type="hidden">
    <input name="hiddenJTB" type="hidden">    
	<input name="girisButton" src="/tr/images/giris.gif" width="145" type="image" border="0" height="26">
	</td>
  </tr>

  <tr>
    <td background="/tr/images/cell_bg.gif" height="16"><img src="/tr/images/x.gif" width="22" height="5"><a href="javascript:MM_openBrWindow('/tr/html/parola_unutma.html','ParolaUnutma','width=420,height=452,scrollbars=yes');">Parolamı Unuttum / Bilmiyorum</a> <img src="/tr/images/saga_ok.gif" width="11" align="absbottom" height="11"></td>
  </tr>
  <tr>
    <td background="/tr/images/cell_bg.gif" height="16"><img src="/tr/images/x.gif" width="22" height="5"><a href="javascript:MM_openBrWindow('/tr/html/sifrematik.html','SifrematikBilgi','width=520,height=452,scrollbars=yes');">Şifrematik Nedir?</a> <img src="/tr/img/ok_turuncu.gif" width="11" align="absbottom" height="11"><img src="/tr/images/x.gif" width="22" height="5"><a href="javascript:MM_openBrWindow('/tr/html/mobilimza.html','MobilImzaBilgi','width=420,height=452,scrollbars=yes');">Mobil İmza Nedir?</a> <img src="/tr/img/ok_turuncu.gif" width="11" align="absbottom" height="11"></td>
  </tr>

  
  <script language="javascript">
	     if (jagjs_isIE && jagjs_isWin){				   
	         detectActiveXControl();
	     }
	     if (jagjs_isIE && jagjs_isWin && !jagjs_jaguarEditInstalled){				  
	         document.body.background = "/tr/images/login022006/i_bg_error.gif";
	         document.write('<tr>');
	         document.write('	<td height="13" align="center" background="/tr/images/cell_bg.gif"><img src="/tr/images/sep_error.gif" width="275" height="13"></td>');
	         document.write('</tr>');
	         document.write('<tr>');
	         document.write('	<td>');
	         document.write('	<table border="0" align="center" cellpadding="0" cellspacing="0">');
	         document.write('	<tr>');
	         document.write('		<td width="13" valign="top"><img src="/tr/images/unlem_login.gif" width="11" height="48" hspace="5" vspace="6"></td>');
	         document.write('		<td width="217"><p><font color="#FFFFFF">Bilgisayarınızda Garanti Güvenlik Kalkanı yüklü değildir, yüklemek için lütfen <a href="javascript:void(0);" onClick="MM_openBrWindow(\'/tr/html/kalkan_yukle.html\',\'kalkan_yukle\',\'width=450,height=400\')"><font color="#99CC33">tıklayınız.</font></a> Garanti Güvenlik Kalkanı yüklü olmayan bir bilgisayardan internet şubesini kullanıyorsanız, <a href="http://www.garanti.com.tr/subesiz/internet_bankaciligi/guvenlik/" target="_blank"><font color="#99CC33">güvenlik</font></a> sayfasında belirtilen konulara dikkat ediniz.</font></p><p><a href="javascript:MM_openBrWindow(\'/tr/html/kalkan.html\',\'kalkan\',\'width=520,height=300\');"><font color="#99CC33"><strong>Garanti Güvenlik Kalkanı Nedir?</strong></font></a></p></td>');
	         document.write('	</tr>');
	         document.write('	</table>');
	         document.write('	</td>');
	         document.write('</tr>');
	     } else {
	         document.write('<tr>');
	         document.write('	<td height="13" align="center" background="/tr/images/cell_bg.gif"><img src="/tr/images/sep.gif" width="275" height="13"></td>');
	         document.write('</tr>');
	         document.write('<tr>');
	         document.write('	<td height="66"><img src="/tr/images/load_flash.gif" width="222" height="62" hspace="24"></td>');
	         document.write('</tr>');
	         document.write('<tr>');
	         document.write('	<td height="48">');
	         document.write('	<table width="228" border="0" align="center" cellpadding="0" cellspacing="0">');
	         document.write('	<tr>');
	         document.write('		<td width="197"><font color="#FFFFFF">Sağdaki oku göremiyorsanız <br>Flash Player\'ı ücretsiz olarak <br><a href="https://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" target="_blank" ><font color="#FFFFFF">yüklemek için tıklayınız.</font></a></font></td>');
	         document.write('		<td width="31"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="25" height="25"><param name="movie" value="/tr/images/test.swf"><param name="quality" value="high"><embed src="/tr/images/test.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="25" height="25"></embed></object></td>');
	         document.write('	</tr>');
	         document.write('	</table>');
	         document.write('	</td>');
	         document.write('</tr>');
	     }
  </script><tr>	<td align="center" background="/tr/images/cell_bg.gif" height="13"><img src="/tr/images/sep.gif" width="275" height="13"></td></tr><tr>	<td height="66"><img src="/tr/images/load_flash.gif" width="222" height="62" hspace="24"></td></tr><tr>	<td height="48">	<table width="228" align="center" border="0" cellpadding="0" cellspacing="0">	<tbody><tr>		<td width="197"><font color="#ffffff">Sağdaki oku göremiyorsanız <br>Flash Player'ı ücretsiz olarak <br><a href="https://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" target="_blank"><font color="#ffffff">yüklemek için tıklayınız.</font>
Burada

Kod: Tümünü seç

<td width="140"><input name="textMARS" class="field" maxlength="9" type="text"></td>
//----->textMARS //Müşteri no

Kod: Tümünü seç

</script><input name="PAROLA" size="15" maxlength="8" class="parola" type="password">//-------->PAROLA // şifre

Kod: Tümünü seç

<input name="girisButton" src="/tr/images/giris.gif" width="145" type="image" border="0" height="26">//---------->Submit
Login sayfası

Kod: Tümünü seç

https://sube.garanti.com.tr/isube/login
Bu arada method Bölümü

Kod: Tümünü seç

<FORM action="/isube/lgng" [b]method="post"[/b] name="giris" autocomplete="OFF" ONSUBMIT="return FormVerify(this)">
Bu değerlere post edemiyorum
İyi çalışmalar.
En son G.Arkas tarafından 23 Ağu 2009 03:15 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Resim
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen mrmarman »

Merhaba...

DelphiTurkiye forumla ilgili sorunsal için tepki vermiyor diye belirttiğin sorunun aslında aynı isimde başka Elemente baktığını gösteriyor. İsmi hiç olmasaydı "Access Violation" alırdın. Burada isim doğru ama tepki alamadığını belirttiğine göre bakınca göreceksin ki aynı isimde element ve başka bir ID var. Bu form başlığı vb. olabilir.

Bu durumda doğru forma odaklanman gerekiyor. Ve hatta tespit edeceğin item ID'siyle erişmek daha makul bir çözüm olacaktır.

DelphiTurkiye login için element listesi ve noları... Sen login butonu için Form 1 Item 7 seçmelisin. :idea:

Kod: Tümünü seç

Form=00 item=01 - Name="keywords"
Form=00 item=02 - Name=""
Form=01 item=01 - Name="username"
Form=01 item=02 - Name="password"
Form=01 item=03 - Name="autologin"
Form=01 item=04 - Name="viewonline"
Form=01 item=05 - Name="redirect"
Form=01 item=06 - Name="sid"
Form=01 item=07 - Name="login"
Buradan yola çıkarak login butonu kodun şu olmalıydı.

Kod: Tümünü seç

  EmbeddedWB1.OleObject.Document.forms.Item(1).elements.Item(7).Click;
Diğer konu için Garanti Bankasında hesabım yok ama senin için giriş yapma aşamasıyla ilgili bir çalışma yaptım. Muhtemelen sorun yanlış FORM ve/veya FRAME'e bakıyor olmaktan kaynaklı.

Form girişi için ilk sayfa değil de o sayfa kaynağından elede edeceğin 3 adet FRAME'den ikincisinin link edildiği

Kod: Tümünü seç

https://sube.garanti.com.tr/isube/loginform
url'sine odaklan. Direkt login sayfasını elde etmiş olursun.

Sana verdiğim linkteki ELEMENT NAME'lerini aşağıda sıralıyorum. Değişken atamalarını bunları kullanarak yapacaksın.

<input type="image" name="girisButton" src="/tr/images/giris.gif" width="145" height="26" border="0">
ile de GİRİŞ butonuna basıldığına göre, giriş yapmak için kullanacağın kod ise şu şekilde...

Kod: Tümünü seç

  EmbeddedWB1.Navigate( 'https://sube.garanti.com.tr/isube/loginform' );
  While EmbeddedWB1.ReadyState <> READYSTATE_COMPLETE do Application.ProcessMessages;

  // ShowMessage('Login Bilgileri için hazır');
  EmbeddedWB1.OleObject.Document.GetElementByID('textMARS').Value       := 'textMARS';
  EmbeddedWB1.OleObject.Document.GetElementByID('PAROLA').Value         := '123';
  EmbeddedWB1.OleObject.Document.GetElementByID('textUSERCUSTNO').Value := 'textUSERCUSTNO';
  EmbeddedWB1.OleObject.Document.GetElementByID('girisButton').Click;
şeklinde olursa çalışır... (ben rasgele değerler girdim) :idea:

Kod: Tümünü seç

Form=00 item=00 - Name="sid"
Form=00 item=01 - Name="hiddenUSR"
Form=00 item=02 - Name="hiddenAPPV"
Form=00 item=03 - Name="hiddenDate"
Form=00 item=04 - Name="hiddenTime"
Form=00 item=05 - Name="hiddenGMT"
Form=00 item=06 - Name="hiddenFLASHIND"
Form=00 item=07 - Name="hiddenENCFIELDS"
Form=00 item=08 - Name="textMARS"
Form=00 item=09 - Name="PAROLA"
Form=00 item=10 - Name="textUSERCUSTNO"
Form=00 item=11 - Name="hiddenCHOICE"
Form=00 item=12 - Name="LANG"
Form=00 item=13 - Name="hiddenPASSFIELD"
Form=00 item=14 - Name="hiddenTOKEN"
Form=00 item=15 - Name="hiddenJVERSION"
Form=00 item=16 - Name="hiddenJRK"
Form=00 item=17 - Name="hiddenJBHO"
Form=00 item=18 - Name="hiddenJTB"
Form=01 item=00 - Name="hiddenKARTNO"
Başarılar.
Resim
Resim ....Resim
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen G.Arkas »

Abi olacak iş değil ya hataya bak

Kod: Tümünü seç

https://sube.garanti.com.tr/isube/login

Kod: Tümünü seç

https://sube.garanti.com.tr/isube/loginform
Şunun yüzünden giriş yapamadım :D

Abi çok teşekkür ederim sana harikasın eline sağlık Allah razı olsun.

Şİmdi bu dediklerin yola çıkarak devamını getireceğim

Bu aşamadan sonra garanti bankası sana seçtiğin bir resmi gösteriyor(Eğer girişin doğruysa)
Sonra tekrar bankaya giriş şifresi istiyor (Şifrematik) :D
Bunlar için iyi bir thread oluşturmalıyım Artıık olayı çözdüm tekrar çok teşekkürler abicim.
Resim
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen G.Arkas »

Abi peki bir şey daha soracağım sana şimdi banka şifre girişi yaptıktan sonra "güvenlik resmi" getiriyor bu captcha değil sadece sıradan bir resim elma,armut,araba vb..

O ekran geldiğinde o resmi image içinde göstermeyi denedim ama maalesef mümkün görünmüyor.Aslında o bölümü direk geçebiliyorum ancak resmi göstersem daha şık olur sanki.

Ekran geldiğinde resmin linki şu oluyor

Kod: Tümünü seç

https://sube.garanti.com.tr/isube/getimage?imagekey=imagekey
Tabiiki bu sayfaya erişmemiz söz konusu değil.Yani bu bir image linki değil.

Sayfa kaynağını incelediğimde

Resmin bir değeri var şöyleki

Kod: Tümünü seç

<tr>
<td colspan="2" valign="bottom" align="right"><img src="/tr/images/w_pix.gif" vspace="2" width="266" height="1"> </td>
</tr>
<tr>
<td colspan="2" valign="bottom" align="center">
<table width="146" background="/tr/images/guvenlik_resim.gif" border="0" cellpadding="5" cellspacing="0" height="110">
<tbody><tr>
<td align="center"><img src="/tr/images/x.gif" width="120" height="17"><br>
<img id="guvresim" src="/isube/getimage?imagekey=imagekey"></td>
</tr>
</tbody></table>
</td>
</tr>
<tr>
Bütün olay burada kopuyor.

Kod: Tümünü seç

images/guvenlik_resim.gif
Bunu url ye eklediğimde anti pishing sayfası çıkıyor :D :D

Bu resmi

Kod: Tümünü seç

<img id="guvresim" src="/isube/getimage?imagekey=imagekey"></td>
Buradan "guvresim" olayı ile webbrowser da göstermem mümkünmüdür yoksa hiç uğraşmayayım mı?

Yeni bişiy buldum şu şekilde

Kod: Tümünü seç

https://sube.garanti.com.tr/tr/images/guvenlik_resim.gif
Bu resmin ortasına güvenlik resmi geliyor.Demekki başka bir yerden çağrılıyor.

Sonra bu şekilde oluyor.

Kod: Tümünü seç

https://sube.garanti.com.tr/tr/images/x.gif
session taşıma ile bir alakası olabilirmi acaba?
En son G.Arkas tarafından 23 Ağu 2009 04:29 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Resim
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen mrmarman »

Ref: viewtopic.php?t=5531&highlight=oledraw

bu başlık sana yol gösterecektir... başarılar
Resim
Resim ....Resim
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen G.Arkas »

Abicim çok sağol hallettim walla aslında hatırlarsan TT 11811 programında bu şekilde yapmıştım.Ama sen iyi durmamış demiştin :D o yüzden teredütte kaldım ama bu sefer image nesnesinde gösterince sorun çözüldü görüntü harika teşekkürler.İyi çalışmalar.
Resim
cerhate
Üye
Mesajlar: 23
Kayıt: 03 Nis 2007 08:38

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen cerhate »

Merhaba Arkadaşlar, Benim Sorunum şöyle https://ebeyanname.gib.gov.tr/index.html adresindeki buton resim ve click olayı yok,

Kod: Tümünü seç

EmbeddedWB1.OleObject.Document.GetElementByID('button').Click
bu yordamla haliyle olmuyor yukarıda yazılı olan

Kod: Tümünü seç

EmbeddedWB1.OleObject.Document.forms.Item(0).elements.Item(1).Click;
denedim ama bir türlü beceremedim.

nasıl gececegim hakkında yardımcı olursanız sevinirim :D

iyi çalışmalar
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen conari »

hiç yapmadığım bir şey ama sitenin kaynağında Id farklı

EmbeddedWB1.OleObject.Document.GetElementByID('button').Click
De buton olarak dene.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
cerhate
Üye
Mesajlar: 23
Kayıt: 03 Nis 2007 08:38

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen cerhate »

Cevabın için teşekkürler fakat olmadı çünkü ordaki giriş butonun bir id si yok ve onclick olayıda yok bu yüzden nasıl olcak bilmiyorum :(
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen conari »

Açıkçası ben yorum getiremiyorum. Sadece orada onu gördüm ondan yazdım.(Hani birazda öğrenmek istiyorum)

Kod: Tümünü seç

<div id="buton"> <img src="images/buton1.jpg" alt="Giriş" onmouseout="this.src='images/buton1.jpg'" onmouseover="this.src='images/buton2.jpg'" onclick="openLoginPopup()" width="167" height="53" border="0"/>
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen mrmarman »

Merhaba...

ID'sine ulaşamadıysanız çalışan fonksiyonu siz çalıştırın.

Kod: Tümünü seç

    (WebBrowser1.Document as IHTMLDocument2).parentWindow.execScript( 'openLoginPopup()', 'JavaScript' ); // Uses MSHTML eklenecek
Resim
Resim ....Resim
cerhate
Üye
Mesajlar: 23
Kayıt: 03 Nis 2007 08:38

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen cerhate »

mrmarman Hocam Ellerine Sağlık Teşekkürler :D :D
darkfeeL
Üye
Mesajlar: 14
Kayıt: 03 Eki 2010 08:16

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen darkfeeL »

Kod: Tümünü seç

Form=00 item=01 - Name="keywords"
Form=00 item=02 - Name=""
Form=01 item=01 - Name="username"
Form=01 item=02 - Name="password"
Form=01 item=03 - Name="autologin"
Form=01 item=04 - Name="viewonline"
Form=01 item=05 - Name="redirect"
Form=01 item=06 - Name="sid"
Form=01 item=07 - Name="login"
Bu şekilde form ve item numaralarını nasıl alıyoruz?
orhancc
Üye
Mesajlar: 585
Kayıt: 24 Ağu 2010 02:14
Konum: İstanbul / Kadıköy
İletişim:

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen orhancc »

Örnek bir kod

Kod: Tümünü seç

function GetFormFieldNames(fromForm: IHTMLFormElement): TStringList;
var
  index: integer;
  field: IHTMLElement;
  input: IHTMLInputElement;
  select: IHTMLSelectElement;
  text: IHTMLTextAreaElement;
begin
  result := TStringList.Create;
  for index := 0 to fromForm.length do
  begin
    field := fromForm.Item(index,'') as IHTMLElement;
    if Assigned(field) then
    begin
      if field.tagName = 'INPUT' then
      begin
        // Input field.
        input := field as IHTMLInputElement;
        result.Add(input.name);
      end
      else if field.tagName = 'SELECT' then
      begin
        // Select field.
        select := field as IHTMLSelectElement;
        result.Add(select.name);
      end
      else if field.tagName = 'TEXTAREA' then
      begin
        // TextArea field.
        text := field as IHTMLTextAreaElement;
        result.Add(text.name);
      end;
    end;
  end;
end;
darkfeeL
Üye
Mesajlar: 14
Kayıt: 03 Eki 2010 08:16

Re: Webbrowser post ile Forumlara login olmak

Mesaj gönderen darkfeeL »

Bu fonksiyonu nasıl çağırıyoruz?
Cevapla