İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Cgi ve Php scriptler

I

iyiyiz

Misafir
Cgi script hic kurmadim ,php script gibi mi oluyor bu scriptlerin kurulumu?Ftp serverde ekstra yapilacak bir sey varmi?Mysql acilacak baska aynen setup mi yapiliyor.
 
S

Senbul

Misafir
Dosyaları ftpden attıktan sonra CHMOD ayarlarını yapmanız gerekiyor.
Dosyalar genelde cgi-bin klasoru icinde calısıyor.
Database konusunda bir bilgim yok ; kullandıgım cgi scripler genelde hep txt dosyaya yazıyor.
Database olayını burdan bende orenmiş olucam.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
CGI bir scripting dili degildir. Web uzerindeki datalarin baska programlar araciligiyla kullanilmasinda haberci gorevi goren bir yapidir. Web sunucusu tarafindan kodlar parse edilmedigi icin yeni bir proses olusturur kendisi, dolayisiyla yavaslatici ve eski bir teknolojidir. Yeni proses olusturabilmesi acisindan executable (calistirilabilir) sekilde ayarlanmalidir. 755 (Tum ahali okuyabilsin, dosya sahibi yazip calistirabilsin) moda ayarlanmali veya +x ile execute edilebilir ayari verilmelidir. MySQL olayi scriptin olayidir, hangi scripting kullaniliyorsa onun kendi ic ayari nasil ise o sekilde yapilir. Cogunlukla Perl ile kullanildigi icin perl'de nasil mysql ayari yapiliyorsa o sekilde yapilir.
 
C

cappytoi

Misafir
CGI (Common Gateway Interface): Ortak Geçit Arayüzü


Angelo ek olarak, perl 'in php 'den hızlı olduğu bilinmekle beraber (ceviz.net 'te ispatı var ama ceviz kapalı olduğu için link veremiyorum) cgi sadece perl ile sınırlı değildir. Perl cgi için genel olarak kullanılan bir dildir. Aşağıdaki dillerde ek olarak cgi için kullanılabilir

C/C++
Fortran
PERL
Unix shell
Visual Basic

ben bunları biliyorum belki bir kaç tane daha da vardır.

gelelim perle, mysql bağlanmak için perle ek olarak DBI modülü eklenmelidir (başka modüllerde mevcut bildiğim kadarıyla ama standart olarak kabul edilen modül bu) mesela basit bir şekilde perl ile mysql 'e bağlanalım:

Kod:
#!/usr/bin/perl

use DBI; # dbi modülünü kullan

$baglanti = DBI->Connect("dbi:mysql:veritabani","kullanici","sifre") or hata ("Veritabanına ulaşamadım ne halt edecez şimdi! Belki hatayı görsek bir şey ederiz:", $baglanti->errstr); # DBI ile mysqle bağlanıyoruz

print "Content-type: text/html\n\n";

$sorgu = $baglanti->prepare(qq(SELECT ad, soyad FROM tablo ORDER BY ad, soyad)) or hata("Tablodan okunamadı: ", $baglanti->errmsg); #sorguyu göndermek için hazırlıyoruz

$sorgu->execute; #sorguyu çalıştırıyoruz

$i = 0;
while (($ad,$soyad) = $sorgu->fetchrow) {
     print $i.". ".$ad." ".$soyad."\n";
     $i++;
}
# verileri fetchrow nesnesini yardımıyla çektik

$baglanti->disconnect; #baglantıyı kestik

sub hata {
     my($msg) = @_;
     print "<b>Hata: </b>\n";
     print $msg;
     exit;
}

(not kodu burada direkt yazdığım için hata olabilir denemedim)

bunun dışında hazır bir cgi kurulumu yapıyorsan php 'den pek farkı yok. konfigürasyon dosyaları varsa düzenliyorsun. mysql kullanıcını, şifreni falan yazıyorsun. veritabanını açıyorsun vs... eğer kullandığın host cgi-bin klasörünün dışında bir yerde cgi çalıştırmana izin vermiyorsa dosyaları cgi-bin klasörüne yükleyip oradan çalıştırıyorsun.

kolay gelsin...
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Perl ile sistem programlayacaksan php'den hizli olduguna bende katilabilirim ancak web uzerinden bir programlama yapilacaksa, cgi yeni bir proses fork etme temeline gore calistigi icin yuksek kullanimda bir cok yeni proses ureteceginden teknolojik olarak geri kalmis bir hadisedir. Buna dokunmak istemistim:)
 

bedavaonline

0
İyinet Üyesi
Katılım
10 Ekim 2002
Mesajlar
602
Reaction score
0
Evet, makineyi zorladığı bir gerçek.
Eskiden perl,asp arasında kararsızdım, şimdi .php diyorum, başka bir şey demiyorum :)
 
C

cappytoi

Misafir
aslında diyorum ki çok ince ayarlara dayanıyor sonuç olarak çok işlem yapan bir program çalıştırıyorsanız, az ve öz çalışır diyorsanız perl, ama yoğunuz işlemimizde ortalama diyorsanız php diyebiliriz.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst