Zoque.Forum
Dirsek Teması:
Geri Dön Zoque.Forum » Webmaster Kaynaklari » Sunucu Tabanlı Programlama (Server Side) » SESSION yada IP ADRESİ


Sunucu Tabanlı Programlama (Server Side) Perl/CGI, PHP, ASP, JSP, .NET ve diğer programlama dilleri hakkındaki sorularınıza, paylaşmak istediklerinize ve örnek kodlara bu alanda yer verebilirsiniz.

Yanıt
 
LinkBack Seçenekler
Old 28.06.2006   #1 (permalink)
oxigen
 
oxigen's Avatar
 
Üyelik Tarihi: 21.08.2004
Yer: istanbul, eskişehir
Yaş: 25
Mesaj: 383
SESSION yada IP ADRESİ

şuanda üzerinde çalıştığım bir proje için insan kaynakları formu yapıyorum, normalde (kağıt üstünde) bile epey büyük bir form (yaklaşık olarak 200 adet doldurulmayı bekleyen alanı var )
veritabanını access ile hazırlıyorum, tek bir tablo yaptım "ik" isimli ve tüm alanları buna yazdım, sonuç tam bir hüsran... boş veritabanı ~20 MB civarında yer kaplıyor, üzerine tam dolu 1 kayıt girince ise ~35 MB oldu, tabii bunun yüzlerce kayıt tuttuğunu düşünmek bile istemiyorum...
şimdi tabloları bölmeyi düşünüyorum, mesela "kisisel", "egitim", "istecrubesi", "referans" vb. gibi ve bu tabloları ASP ile birbirine bağlayıp, yönetim panelinde sorgulama yapıcam...

iş bunların ziyaretçi tarafında kayıt aşamasında kaynaklanıyor, iki farklı yöntem düşünüyorum:

1. çözüm;
tüm IK formunu hazırlayıp, "gönder" dediğinde ise gelen bilgileri bölüp ilgili alanlara yazdırmak en kolay yol. ama şöyle bir durum var, mesela referanslar, iş tecrubesi yada yabancı diller gibi bölümlere sabit olarak (atıyorum) 5 kutucuk koymak gerekli, ama adamın 5den fazla iş tecrubesi varsa yazamıcak buna...

2. çözüm;
formu aşamalı olarak kaydetmeyi düşünüyorum, ilk önce kişisel bilgileri gelecek, doldurduktan sonra "devam et" dicek ve eğitim bilgileri gelecek, burda istediği kadar bilgiyi girebilecek, sonra yine devam et.... ve en sonda bitir olacak...

şimdi bu 2. çözüm aslında mantıklı bir yol ama formlar arasında geçişler yaparken veritabanına yazılan bilgileri birbirleriyle bir ID vb. bilgi ile eşleştirmem gerekli... bunun için SESSION yada bildiğimiz IP ADRESİ düşündüm.
fakat bazı teknik kitaplarda session kullanmamak iyidir diyor.
Alıntı:
bir sessionID, o anda websitenizde bulunan her kullanıcı için benzersizdir. Fakat websunucunuz durdurulup yeniden başlatılırsa sessionID tekrar kullanılabilir. bu nedenle sessionID ile kullanıcı takibi çok güvenli değildir
o yüzden aklıma IP adresini bir tabloya kaydedip, diğer işlemleri IP kayıt IDsine göre yapmak geldi, yani;

iid | ipadres
1 | 123.234.567
2 | 256.256.256
3 | 456.79.899


daha sonra ise,
id | ipid | isim | mail
1 2 a a
2 3 b b

gibi bir tablo yapıcam...
merak ettiğim konu bana ait olan 123.234.456.11 gibi bir IP adresini, ben modemimi resetleyip IP adresimi değiştirdiğimde, eski IP adresini başka biri kullanabilrmi? yani sistemler bu IP adreslerini nasıl tanımlıyorlar?
__________________
your KEY to EUROPE : AEGEE-Eskişehir (v2.0) | MCPD adayı
oxigen şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 28.06.2006   #2 (permalink)
Karakan
 
Karakan's Avatar
 
Üyelik Tarihi: 26.05.2006
Yer: Ankara
Yaş: 24
Mesaj: 178
Görsel: 5
Re: SESSION yada IP ADRESİ

evet kullanılabilir,kullanılır,kullanılacaktırda...tabi i ki static IP kullanmıyorsan..Session ID de pencereyi kapatıp tekrar siteye bastan girmesiyle degişiyor yanılmıyorsam..bence en mantıklısı cookie at,bu cookie yi MD5 yada base64 gibi şifreleme yöntemleriyle şifrele..
__________________
Makale || Matematik yalan söylemez. || ArtDusunce || differentiate yourself from others.
Karakan şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 28.06.2006   #3 (permalink)
soul
 
soul's Avatar
 
Üyelik Tarihi: 13.07.2000
Yer: LND
Mesaj: 4,275
Re: SESSION yada IP ADRESİ

IP adresi bu tip işlemler için doğru bir seçim olmaz ve kullanılmaz. Session' ın geliştirilme amacı bu zaten. Dolayısıyla session kullan.

Bu arada bir kayıt 20mb - 35mb biraz kopuk geldi bana veri tipleri kolon sayıs vs. kontro ledilmelidir. Kaç yüz sayfalık bir form bu?

Alıntı:
5 kutucuk koymak gerekli, ama adamın 5den fazla iş tecrubesi varsa yazamıcak buna...
malum bu tip durumlarda ayrı tablo, ilişki ve sonsuz kayıt desteği kurulmalı.

Bu arada db' yi "onar", "compact" yaparsan dbnin boyutlarının küçüleceğinden eminim.
__________________
FERRUH.MAVİTUNA - İnanmıyorum, yeni site!
soul şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 28.06.2006   #4 (permalink)
eKuzu
 
eKuzu's Avatar
 
Üyelik Tarihi: 24.06.2006
Yer: İstanbul
Yaş: 22
Mesaj: 94
Re: SESSION yada IP ADRESİ

Şu mantıkla yapmanı tavsiye ederimki ben 60 alanlık bir Formda kullandım
hidden input lar kullanabilirsin her Devam dediğinde yeni alanlarla birlikte Post edersin.
Örnek
<!--Function.ASP-->
<%
Function HiddenWrite(QueryName,QueryValue)
Response.Write("<input type=hidden name=" & QueryName & " value=" & QueryValue & "")
End Function
%>
<!--Function.ASP Son-->
!-------------
<!--Request.ASP-->
<%
'Request alacağın bütün alanlar (200 tane alan)
isim = Request("isim")
soyisim = Request("soyisim")
%>
<!--Request.ASP Son-->
!--------------
<!-- Form1.ASP-->

<!--#include File="Request.ASP"-->
<!--#include File="Function.ASP"-->

<form action="Form2.ASP" method="post">
<input type="text" name="isim" value="">
<input type="submit" name="Devam" value="Devam">
</form>

<!-- Form1.ASP Son -->


<!-- Form2.ASP-->
<!--#include File="Request.ASP"-->
<!--#include File="Function.ASP"-->
<form action="Form3.ASP" method="post">
<%
Call HiddenWrite("isim",isim)
%>
<input type="text" name="soyisim" value="">
<input type="submit" name="Devam" value="Devam">
</form>
<!-- Form2.ASP Son -->


<!-- Form3.ASP-->
<!--#include File="Request.ASP"-->
<!--#include File="Function.ASP"-->
<form action="Form4.ASP" method="post">
<%
Call HiddenWrite("isim",isim)
Call HiddenWrite("soyisim",soyisim)
%>
<input type="text" name="telefon" value="">
<input type="submit" name="Devam" value="Devam">
</form>
<!-- Form3.ASP Son -->

... bu şekilde toplaya toplaya gidersin son sayfada yazdıkrmak istediklerinide şöyle özetleyebilirim.
'Yukarıdaki 3 alan için Farklı tablolara aynı anda yazdırmak ve ID ile bağlamak
<%
Set Rs = server.CreateObject("Adodb.RecordSet")
Sql1 = "Select * From Form1"
Rs.Open Sql1,Conn,1,3

Rs.Addnew
Rs("isim") = Request("isim")
Rs.Update
FormId = Rs("Id")
Set Rs = Nothing

'/////////////

Set Rs = server.CreateObject("Adodb.RecordSet")
Sql2 = "Select * From Form2"
Rs.Open Sql1,Conn,1,3

Rs.Addnew
Rs("soyisim") = Request("soyisim")
Rs("FormId") = FormId
Rs.Update
Set Rs = Nothing

'/////////////

Set Rs = server.CreateObject("Adodb.RecordSet")
Sql2 = "Select * From Form3"
Rs.Open Sql1,Conn,1,3

Rs.Addnew
Rs("telefon") = Request("telefon")
Rs("FormId") = FormId
Rs.Update
Set Rs = Nothing

Response.Write("Formu doldurduğunuz için teşekkür ederiz.")
%>
__________________
All Process about zero and one
eKuzu şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 29.06.2006   #5 (permalink)
oxigen
 
oxigen's Avatar
 
Üyelik Tarihi: 21.08.2004
Yer: istanbul, eskişehir
Yaş: 25
Mesaj: 383
Re: SESSION yada IP ADRESİ

@ErincKuzu, dediğin şey mantıklı, bende buna benzer bişeyler düşündüm ama formların altında "devam" dedikten sonra diğer forma gitmeden önce veritabanına yazdırmayı düşünmüştüm, sanırm toplayıp bütün olarak yazdırmak daha mantıklı olacak.

@LetSDie, cookie olayı ilk olarak aklıma gelen yöntemdi, ama cookie engelleyen yazılımlar yüzünden biraz tereddüte düştüm açıkcası.. ayrıca cookiyi şifrelemeye gerek yok gibi, çünkü içine sadece adamın kayıt ID numarasını yada bitane takip numarasını yazdırcam tek satır bişey.

cevaplar için teşekkür ederim.
__________________
your KEY to EUROPE : AEGEE-Eskişehir (v2.0) | MCPD adayı
oxigen şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 29.06.2006   #6 (permalink)
stalker
 
stalker's Avatar
 
Üyelik Tarihi: 01.11.2000
Yer: İstanbul
Yaş: 26
Mesaj: 713
Re: SESSION yada IP ADRESİ

hidden form elementi yerine form değerlerini session'a yazdırman daha doğru olur.
__________________
life is better without braces
stalker şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.06.2006   #7 (permalink)
oxigen
 
oxigen's Avatar
 
Üyelik Tarihi: 21.08.2004
Yer: istanbul, eskişehir
Yaş: 25
Mesaj: 383
Re: SESSION yada IP ADRESİ

bir başka sorum (aslında yine formla ilgili), form içindeki INPUT alanları JavaScript ile çoğaltmak. örnek verecek olursak, İŞ TECRUBESİ bölümüne sbit olarak 5 input koydum fakat ziyaretçinin 6. alanı girmesi gerekiyor, işte ozaman "ekle" diye bir link yada buton yardımıyla yenibr input ekleyecek forma.
bunu nasıl yapabilirim?
__________________
your KEY to EUROPE : AEGEE-Eskişehir (v2.0) | MCPD adayı
oxigen şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.06.2006   #8 (permalink)
soul
 
soul's Avatar
 
Üyelik Tarihi: 13.07.2000
Yer: LND
Mesaj: 4,275
Re: SESSION yada IP ADRESİ

Bunu JS' de createelement() ile yapabilirsin, ek olarak innerHTML' de bir çözümdür tabii ki. Diğer tarafta da dinamik şekilde kaça kadarsa alabilirsin ya da bir hiddenda kaç tane tuttuğunu tutar JS ile günceller ve gerekince formdan okurken hiddena göre döndürebilirsin.
__________________
FERRUH.MAVİTUNA - İnanmıyorum, yeni site!
soul şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 30.06.2006   #9 (permalink)
e-XPLoDeR
 
e-XPLoDeR's Avatar
 
Üyelik Tarihi: 25.09.2003
Yer: Ankara
Yaş: 23
Mesaj: 484
Re: SESSION yada IP ADRESİ

Ayrıca;

Kod:
<%
For Each x In Request.form
form=form& x & ": " & Request.form(x) & "<br>"
Next
%>
ile sütunlarla uğraşmaya gerek kalmaz. Tek bir sütün içerisine formdaki tüm alanlara girilen bilgileri atabilirsin. Bu kodu daha da geliştirebilir ve düzgün bir çıktı alabilecek seviyeye getirebilirsin.
__________________
Görmedim, duymadım, bilmiyorum!
e-XPLoDeR şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 03.07.2006   #10 (permalink)
melihme
 
Üyelik Tarihi: 03.02.2005
Yer: İstanbul
Yaş: 25
Mesaj: 4
Re: SESSION yada IP ADRESİ

net te bulduğum bir örnek fazla değiştirmeden kullanmıştım. sayfada- koddan anlayacağın üzre-, "myDiv" id li bir div, ve "theValueid" li bir hidden input olmalı..

Kod:
function addElement(){
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = "<input type='text' name='dosya"+num+"' id='dosya"+num+"'>&nbsp;<a href='#' onclick='removeElement(\""+divIdName+"\")'>Kaldır</a>";
  ni.appendChild(newdiv);
}


function removeElement(divNum){
  var d = document.getElementById('myDiv');
  var olddiv = document.getElementById(divNum);
  d.removeChild(olddiv);
}
melihme şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Yanıt

Etiketler
adresi , yada , session



 
Zoque'a hoşgeldiniz!
Zoque 27.02.1999 tarihinde yayın hayatına başlamış, paylaşıma dayalı bir oluşumdur. Tasarım, teknoloji, web, kültür ve sanat ana başlıkları altında bilgi paylaşımı ve benzer değerlere sahip katılımcıların birbirleriyle iletişime girmelerine imkan sağlar. "Az ama Öz" sloganından yola çıkarak, kaliteli ve nitelikli katılımı temel alır.

Saygın ve ciddi bir ortamda yardımlaşmak, haberleşmek, kendi bildiklerini diğer katılımcılarla paylaşmak isteyen, oluşumumuza düzenli katılımda bulunacağı inancını taşıyan konuklarımızı üye olmaya davet ediyoruz. [ » ]


Üye Girişi:

UslanmaM baktabul.com TEKplatform TEKplatform

En popüler ilk 100 etiket
Tag Cloud
acil adsl ajax almak arama araniyor ariyorum ariyoruz asp bilen bilgi bilgisayar blog calisma canon css dijital div domain dosya eleman film firefox flash font form forum fotograf freelance google gore grafik grafiker hakkinda hangi hata hatasi hosting html ilgili ilk image internet istanbul istiyorum java javascript karakter kayit kisisel kullanimi link logo mac mail menu muzik mysql nasil neden nedir online photoshop php problemi program