On Mon, 2009-12-14 at 00:41 +0200, Levent SARI wrote: > Ali Rıza Keleş yazmış: > > > > Öncelikle Kullanıcının seçimlerini javascript ile öğrenmemiz gerekiyor. > > > Söylemlerinizden anladığım kadarı ile en mantıklı(tek yol) bu yöntem. > Netekim benim javascript bilgim hiç yok. > > Ardından eğer çok gösterişli bir sayfa istemiyorsak yine javascript ile > > bir popup açıp bu seçenekleri buraya yazdırıp, ardından window.print ile > > yazdırabilirsiniz. Aslında popup açmaya da gerek yok, yine javascript > > ile body bloğunu temizleyip bu seçenekleri değiştirebilirsiniz. > Burada bir popup kullanmak yerine bence en mantıklısı kullanıcı > seçimlerini yapıp yazdır butonuna basınca, > yeni bir php sayfası oluşturup kullanıcının seçimleri burada gösterilip > ondan sonra da yazıcıdan fiziksel olarak çıktı almak. > Hatta keşke şöyle bir imkanımız olsada, kullanıcı seçimlerini yaptıktan > sonra göster butonuna basınca fiziksel olarak bir php sayfasında > kullanıcı seçimlerini göre bilse ve bu yaptığı secimleri isterse > bilgisayara kaydebilse, isterse çıktı alsa.
O zaman bu sayfanın altına iki buton koyun. Pdf kaydet. Yazdır. Bu butonlar her iki durumda da öncelikli olarak yazdırılacak ya da pdf olarak kaydedilecek dosyayı hazırlamalı. O yüzden burada JavaScript(JS) ile seçimleri toplamalısınız. Ve onları biçimlendirmelisiniz. Sayfada göstermeniz de şart değil. Başka bir sayfada ya da bu sayfada. Ardından PDF için: Bir pdf kütüphanesi kullanmanız gerekecek. http://php.net/manual/en/book.pdf.php Bu sayfada phpnin ve diğer bazı kütüphanelerin adresleri var. Yada daha kolayı serverda bir html2pdf aracına erişmeniz gerekecek. http://tr.php.net/manual/en/book.exec.php adresinde sisteme erişim için detaylı bilgiler bulabilirsiniz. Kabuk için şunu öneririm: http://tr.php.net/manual/en/function.shell-exec.php Bunu kullanırken güvenlik iyice düşünülmelidir. Neticede php scriptiniz sisteme erişiyor. Buradan dönen sonucu uygun biçimde çıktı olarak gönderirseniz kullanıcılar bildiğimiz klasik dosyayı kaydet ekranı ile karşılaşacaklar. Uygun biçimi de php de Header ile belirteceksiniz. http://tr.php.net/manual/en/function.header.php Bu sayfadaki Example-1 e bakın. Yazıcı çıktı için: Daha önceki mailde de konuştuğumuz gibi Javascript. window.print deyin gitsin. Body onload a koyduğunuzda window.print sayfa yüklendiğinde kendiliğinden çalışacaktır. <head> </head> <body onload="window.print();"> kullanıcının yaptığı seçimler... </body> Eğer kullanıcı seçimlerini başka bir sayfaya gönderip, o sayfada biçimlerseniz ve bu iki butonu da o sayfaya koyarsanız sadece yukarıdaki minicik javascript dışında pek bir şeye ihtiyac kalmaz. Umarım faydalı olmuştur. Kolaylıklar.. -- Ali Rıza Keleş > > > > > > Eğer biraz sayfayı biçimlendirmek istiyorsanız bu seçimleri başka bir > > sayfaya post ya da get ile gönderin. Orada yakalayıp yazdırın. Yine > > birinci seçimdeki gibi bastırabilirsiniz. Yeni sayfanın otomatik bir > > biçimde yazdırmasını istiyorsanız body onload bakabilirsiniz. > > > Sayfanın tasarımında birşey olmasada olur. > Tek istediğim anket.php sayfasında kullanıcı anketi doldurduktan sonra > yaptığı seçimleri isterse bilgisayarına temiz bir sayfa(pdf,html,word > vs) olarak kaydedebilsin, isterse yazıcısından çıktı alabilsin. > > Php bu işi yapmaz. Tabi eğer uygulamayı özel bir platformda > > çalıştırmıyorsanız. > > > Yukarıda bahsettiğim işlem için ofise bir tane Ubuntu yada Debian server > kuracağım sonra bu uygulamayı oraya yukleyeceğim. > Böylece herkes kendi makinesi ile bu yugulamayı web browseri uzerinden > kullanabilecek. > Ancak şimdi biz yazdırma işlemini ağırlıklı olarak mic$ sistemi uzerinde > konusuyoruz. > Yani kullanıcıların içinde mic$, linux, mac kullanan insanlarda olacak. > > Kolaylıklar... > > > > -- > > Ali Rıza Keleş > > > > > Yukarıdaki durumlara nasıl bir çzöüm getirebiliriz? > Php de biraz yeniyim ancak daha once bu tip uygulamalar hiç > geliştirmediğim için sadce biraz tecrubesizim. > Bana bu konuda yardımcı olabilrseniz çok memnun olurum. > Herkese teşekkürler. > "SARI" > > _______________________________________________ > > Linux-programlama mailing list > > [email protected] > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > > > > _______________________________________________ > Linux-programlama mailing list > [email protected] > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php _______________________________________________ Linux-programlama mailing list [email protected] http://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
