| sherlockholmes | 28.07.2005 - 12:12:07 |
| slm ,
flash ta bir ziyaretçi defteri yapmayı deniyorum. php ile kayıtları txt dosyasına kaydediyorum. php'yi tek başına çalıştırınca çalışıyor ama flash kısmında bir sorun var. flash da isim , mail , konu ve yorum olmak üzere 4 tane input text kutusu var. bunların var özellikleri ad_soyad, mail_adres,konu ve yorum olarak ayarlandı. bir buton var gönder , action script kısmına şunu yazdım on(press){ if (this.ad_soyad==null) { this.Status = "Lütfen isminizi yazınız"; } else if (this.mail_adres==null) { this.Status = "Lütfen email adresinizi yazınız"; } else if (!this.mail_adres.length || mail_adres.indexOf("@") == -1 || mail_adres.indexOf(".") == -1) { this.Status = "Hatalı email !"; } else if (this.konu==null) { this.Status = "Lütfen bir konu yazınız"; } else if (this.yorum==null) { this.Status = "Lütfen yorumunuzu yazınız"; } else if (_global.deger!=1) { this.Status = "Fla dosyasını düzenlemede hata yapıldı"; _root.GuestBook =" Fla dosyasını düzenlemede hata yapıldı"; Name = "Dosya hatası"; Email = "Dosya hatası"; Comments = "Dosya hatası"; } else { Submit = "Yes"; NumHigh = 10; NumLow = 0; /*_root.GuestBook = "İşlem yapılıyor.. veriler yükleniyor... ";*/ loadVariablesNum ("yaz.php", 0, "POST"); this.Status = "Mesajınız kaydedilmiştir."; ad_soyad = ""; mail_adres = ""; konu = ""; konu = ""; yorum = ""; } } bu kod , çalışan bir flash-php ziyaretçi defteri uygulamasından aldım. php kısmında ise şöyle bir kodlama var: <? function get_ip() { if (isset($_SERVER) and !empty($_SERVER)) { if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; } else if (isset($_SERVER['HTTP_CLIENT_IP'])) { $ip = $_SERVER['HTTP_CLIENT_IP']; } else { $ip = $_SERVER['REMOTE_ADDR']; } } else { if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } else if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } else { $realip = getenv('REMOTE_ADDR'); } } return $ip; } $fp = fopen("yorum.txt", "a"); fwrite($fp,"ad,soyad:".$HTTP_POST_VARS["ad_soyad"]."\n"); fwrite($fp,"mail:".$HTTP_POST_VARS["mail_adres"]."\n"); fwrite($fp,"konu:".$HTTP_POST_VARS["konu"]."\n"); fwrite($fp,"yorum:".$HTTP_POST_VARS["yorum"]."\n"); fwrite($fp,"ip adresi:".get_ip()."\n"); fwrite($fp, "\n"); fwrite($fp, "tarih:"); $tarih=gmdate ("M d Y"); fwrite($fp, $tarih); fwrite($fp, "<hr>"); fclose($fp,gmdate ("M d Y")); ?> şimdi swf'yi açınca text alanalrda _level0.mail_adres filan yazıyor , ve butona basınca php'yi çağırıp , yorum.txt dosyasına kayıt yapmıyor. bu uygulamayı localde apache server üzerinde deniyorum. izinlerle alakalı bir sorun yok. ne önerirsiniz ? | |
| mcihad | 28.07.2005 - 16:48:34 |
| var ldVars:LoadVars=new LoadVars();
ldVars.ad=_root.ad.text; ... ... ... ldVars.SendAndLoad("http:/adres",nesne,"POST"); daha sonra başka bir framede if(ldVars.loaded) { ..... } şeklinde verinin gönderilmesini kontrol etsen daha iyi olur yoksa hemen veriyi göndermiyor; daha önce olayı yapmıştım ama türkçe karakter sorunundan dolayı daha fazla uğraşmadım | |
| sherlockholmes | 28.07.2005 - 17:10:45 |
| çözüm : flash^ta instance name ve var name özelliklerini aynı yazmışım , değiştirince , bu kodlarla çalıştı.
... | |