Delphi'de CGI programlama hakkında yardım !

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
adali

Delphi'de CGI programlama hakkında yardım !

Mesaj gönderen adali »

Merhaba arkadaşlar.
Benim sizlerden ricam; delphi'de cgi programlayarak arama-kayıt ekleme yapacak örnek bir program kaynak kodu. dbisam veritabanını kullanarak yapacak bu işi, sonuçları htm olarak browser a gönderecek.
Ne delphi ne de dbisam konusunda en ufak bilgim olmadığını belirtmek isterim. Ancak kaynak kodları inceleyerek kendi isteğime göre düzenleyebileceğimi düşünüyorum. VByi bu şekilde öğreniyorum. Bir de VB altında dbisam ı kullanabilirmiyim acaba?
Kaynak kod yollayacak arkadaşlar; xxx@xxx.xx adresini kullanınız.
Teşekkürler, hayırlı bayramlar.
Kullanıcı avatarı
MicroChip
Kıdemli Üye
Mesajlar: 1119
Kayıt: 02 Ağu 2003 01:02
Konum: İstanbul
İletişim:

Mesaj gönderen MicroChip »

evet delphide minik bir exe yaparak bunu cgi şeklinde çalıştırabilirsin zaten sunucuda çalışıyorsa dbisam paketleri de serverda var demektir. vb da var mı bilmiyorum hiç denemedim ama CGI olarak PERL ile deneyimlerim bayağı iyi idi askere gitmeden evvel yardımcı olabilirsem bu konuda da olabilirim
Kafkas Kartalı Kabarday
Sitesi!= http://www.ahmetceylan.com
Resim
adali

Mesaj gönderen adali »

teşekkürler..
1- dbisam içerisinde arama yapacak kod
2- dbisam veritabanına veri ekleyecek kod
DbIsam içerisinde sadece tek bir alanda, tek bir kriterle arama yapması/kayıt eklemesi yeterli, sonrasını kendim oluşturabilirim sanırım.

-- veritabanı bağlantısı (vb de *.mdb ye bağlanırken kullanılan kodun dbisam/delphi karşılığı)
-- gelen veri arama / -- gelen veri kayıt ekleme (SQL deki INSERT INTO / SELECT * FROM gibi)
-- sonucu değişkene tanımlama

yukarıdaki gibi bir akış şeması sanırım işimi görür. bu kodları bana yazacak arkadaşların, Allah iki cihanda yüzünü güldürsün. amin.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

:)

bence sen başla takıldığın yerlerde biz yardımcı olalım.

Kolay gelsin.
adali

Mesaj gönderen adali »

Ne delphi ne de dbisam konusunda en ufak bilgim olmadığını belirtmek isterim. Ancak kaynak kodları inceleyerek kendi isteğime göre düzenleyebileceğimi düşünüyorum.

diye belirttim size
Kullanıcı avatarı
MicroChip
Kıdemli Üye
Mesajlar: 1119
Kayıt: 02 Ağu 2003 01:02
Konum: İstanbul
İletişim:

Mesaj gönderen MicroChip »

valla dostum anladığım kadarı ile delphi ye yeni başlıyorsun veya delphide database olayına yeni giriyorsun...
öncelikle yapman gereken biraz delphinin helpini incele foruma bak gözat dolaş ne bileyim.
sonrada delphide interbase e bulaşma başın daha sonra belaya girer felan
istersen bulaş ama firebird de var unutma :)

ama ben adoyu kullanmanı tavsiye ederim. hatta bir delphi kitabı almanı da şiddetle tavsiye ederim.

Kolay gelsin
Kafkas Kartalı Kabarday
Sitesi!= http://www.ahmetceylan.com
Resim
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

MicroChip yazdı:delphide interbase e bulaşma başın daha sonra belaya girer felan
istersen bulaş ama firebird de var unutma :)
MicroChip nerden çıkardın bunu. Bu forumda Interbase/Firebird'ü ben de dahil çok beğenen takdir eden insanlar var. Bence bulaşın :) pardon kullanın.

Kolay gelsin.
Kullanıcı avatarı
MicroChip
Kıdemli Üye
Mesajlar: 1119
Kayıt: 02 Ağu 2003 01:02
Konum: İstanbul
İletişim:

Mesaj gönderen MicroChip »

Valla adminim :) ne diyeyim bir kez o zamanlar delphi3 idi interbase kullandım kullanmaz olaydım :) ondan sonra soğudum :)
ama firebirdü hiç denemedim daha doğrusu bulaşmaya da korkuyom ama undefined (icq da konuşmalarımızdan) in ısrarlarını kırmayıp bir kez deniyecem :)
Kafkas Kartalı Kabarday
Sitesi!= http://www.ahmetceylan.com
Resim
adali

Mesaj gönderen adali »

-- veritabanı bağlantısı (vb de *.mdb ye bağlanırken kullanılan kodun dbisam/delphi karşılığı)
-- gelen veri arama / -- gelen veri kayıt ekleme (SQL deki INSERT INTO / SELECT * FROM gibi)

arkadaşlar şu yukarıdaki iki konu hakkında iki satır kod rica ettim sizden. Söylediklerinizde haklısınız ama ben sizden o bilgileri değil yukarıdaki bilgileri istiyorum. Umarım bu sefer anlatabilmişimdir.

veya mevzuyu şu şekilde de özetliyeyim size.. ben kısa bir program yapacağım, bu program tel fihristine benziyor yapısal olarak (kayıt sayısı abarık biraz/alternatifi veya mdb falan mevzuu olmasın, çünkü kayıt sayısı baya fazla olacak). ama ben karşı tarafa mysql vs bişey kurmak istemiyorum. internette kısa bir araştırma yaptım. dbisam/delphi vasıtasıyla odbc/kurulum falan gerekmeden hızlı- kararlı çalıştığı kanaatine vardım. burada da bir bilen çıkar diye yazdım.. hem bahaneyle iki kuş misali.
bir de şöyle birşey var delphide direct access olayı varmış. bu direct access'in VB için olanı varmı?/URL.
tekrar teşekkürler.
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

hocam üslubuna dikkat etmen iyi olur. Burda hepimiz iyi niyetle yardımcı olmaya çalışıyoruz. Bize bağırır gibi belirttim size vs. üslupları yanlış. Kimse sizin için kod yazmaya mecbur değil :!: Hele böyle bir üsluptan sonra.

İyi günler.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@adali, üslup konusunda @Admin'e katılıyorum. Lütfen daha dikkatli olalım. :oops:

- Size üç soru sorucam.
:?: 1.Daha önce WebServer application yazdınız mı ?
:?: 2.Daha önce local bir database erişimi yapan bir program yaptınız mı ?
:?: 3.HTML yapısı hakkında bilginiz var mı ?

- Bunları bize ilk sorunuzda bildirmişsiniz güzel ama öğrenmek için bir çabanız da görünmüyor... :oops:

- Bu cevapları sırasıyla cevaplayabilicek duruma geldiğinizde size cevap yazmak için sırada ilk ben varım... :) Emin olun eksik kaldığınız nokta tespit edilir ve ona göre cevap verilir. :?

- Özetle ne gibi bir işe bulaştığınızı bildirmek istiyorum... Yani kod örneği alıp bunun üzerinde modifikasyon yaparak becermeniz mümkün değil. :idea:

- Delphi ile yapacağınız WebServer Application; Web'den gelen bir Request (çağrı), oluşturulan bir listenin Response(Cevap) edilmesi şeklinde çalışır. Yani Internet Explorer'in Adres satırından web hostun ilgili klasöründen sizin yazdığınız EXE çağrılır, sizin EXE'niz bu çağrı ve parametreler doğrultusunda standart HTML kod üretir ve sanki sizin EXE'niz bir HTML sayfaymışçasına geri döndürür. Mantık bu... Yani ekstra bir çaba sarfiyatı yoktur. :idea:

- HTML Taglarını kullanarak Bir Header, bir footer yazarsınız. Body olarak da QuickReport'ta çıktı alırmışcasına bir satır tasarlayıp, göndereceğiniz her veritabanı kaydı için bu satırda değişiklik yapıp bir StringListe veya Memo'ya vs. atarsınız. Header, Body (Memo) ve Footer'i birleştirdiğinizde sizden istenen doğrultusunda bir HTML üretmiş olursunuz. İşte bu text'i Response'ye atadığınızda çağrı yapan kişi/kişilere ulaşacaktır. :idea:

- Veritabanına erişim bir çok şekilde mümkündür. SQL benim tavsiye edeceğim güzel bir erişimdir. Farklı olarak siz Table kullanarak da, filtreleyerek de erişebilirsiniz. Web'de yayınlamak için, ürün listenizde tablonun/sorgunun başından sonuna kadar bir döngü kurar, her kaydı yukarda bahsettiğim html body kısmına ekleyerek istenen tüm kayıtları bir HTML sayfa haline dönüştürmelisiniz. :idea:

- Bu forumda cevap yazmak için önce cevaba layık soru görmek isteriz. 8)

- Sinemacıların bir anektodu vardır.. Yeşilçam sinema ustaları, Türk Tarihini konu alan filmlerinde senaryo sette yazılır derlerdi. :?:

- Gerekçesi sorulduğunda, senaristin aslında detaylı bir şekilde olayları senaryoya yazması gerekirken "Fatih Kaleyi Fetheder" gibi bir satırını uygun görmesinden olduğu cevabını alınırmış. :?

- Aslında bu kısacık satır filmin en maliyet yükü ve uzun süreli olan sahnesidir. :)

- Buradaki hatanız, bize cevap yazmayı yük haline getirmenizdir. Soru sorulana dek yaptıklarınızı ve takıldığınız yeri yazarsanız, bizler de zevkle cevap yazarız. :wink:
Resim
Resim ....Resim
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@Admin; @adali'nın üyeliği kaldırılmış galiba... Bu kadar yazdığım şey boşa gitmedi umarım... :)

- Başka biri, WebServer application konusunda bir problem sunacaksa, aramalarında bu başlığı bulsun ve belki de faydası olsun....
Resim
Resim ....Resim
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7603
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek »

Muharrem hocam,

adali her 10 kelimesinden 9'u küfür olan bir mesaj göndermişti. Mesajını ve üyeliğini kaldırdım.

ama üzülme sadece bir kişi değil, binlerce kişi faydalanıyor yazılanlardan :wink:

Teşekkürler.
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

cgi'a yazma

Mesaj gönderen webaytek »

yaklaşık 2 sene kadar cgi-perl ile uğraştım ama deyin ki database yapısı hakkında bilgin war mı... yok chmod nedir bilir misin... yok
ama chmod u şu yap dersen yaparım ayrı.

yani anlayacağınız kodlarda oynayarak kendi cgi programcıklarımı yapabiliyorum (yazabiliyorum diyip de yazanlara ayıp etmeyelim :oops: ). 1-2 tane de kitabım war konuyla ilgili

Benim sorum şu delphi içinden elimdeki dosyakontrol.cgi programına nasıl bilgi işlerim? ve okuturum Neler gerekli?

#dosyakontrol.cgi eleman içeriği
#edit1 - string
#edit2 - date
#edit3 - string (WebSite)
#memo1 - Açıklama

bu arada bir itiraf: HTML'yi az buçuk unutmuşum. IP:127.0.0.1 (Eklemem gereken bişeyler warsa sööleyin :roll: )
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Merhabalar...

- Bir web sayfasından bu CGI'ye nasıl bilgi gönderiyorsanız, aynısını delphi ile de emule edebilirsiniz...

- yani...

Kod: Tümünü seç

http://www.url.com/dosyakontrol.cgi?edit1=string&edit2=date&edit3=string&memo1=Açıklama 
şeklinde bir yapı sergileyebilir, Delphi ile Method-GET ile gönderebilirsiniz, veya bu yapıyı Method-POST ile gizli olarak da gönderebilirsiniz...

- Bu işlem için Delphi sürümüne göre, TNmHttp, TIdHttp veya TWebBrowser bileşenlerini kullanabilirsiniz... Arama yaptırırsanız örnek de bulabilirsiniz...
Resim
Resim ....Resim
Cevapla