php ile ekran görüntüsü almak get screenshot with php

Bu konumuzda Php ile nasıl ekran görüntüsü alınabilir bunu inceleyeceğiz. Birkaç destek sitesinde sorulmuş ve hep Javascript kullanılmaya gidilmiş fakat Php 5 ile gelen bir fonksiyon yardımı ile ekran görüntüsünü tek bir fonksiyon ile almak ve dizine kaydedip sonra da okutmak mümkün.

Php ile dahili olarak gelen GD kütüphanesinde resim işleme fonksiyonları zaten mevcut.

Kodumuz aşağıda:

<?php
$eg = imagegrabscreen();
imagepng($eg, "ekrangoruntusu.png");
echo "<img src=\"ekrangoruntusu.png\">";
imagedestroy($eg);
?>

NOT: Eğer kodu çalıştırdıktan sonra siyah bir ekran görüntüsü alıyorsanız aşağıdaki işlemleri uygulayın.

Bilgisayarım’a sağ tıklayalım ve açılan menüden Yönet diyelim.

Servisler ve Uygulamalar altında Servisler’e tıklıyoruz.

Apache2.2 servisine sağ tıklayıp özellikler diyoruz.

Üst kısımda Oturum aç sekmesinde hemen alt kısımda “Masaüstü ile etkileşime izin ver” gibi bir seçenek var, onu işaretliyoruz.

Apache2.2 servisini restart edelim.

Hepsi bu kadar..

PHP kategorisine gönderildi

php ile oracle veritabanı bağlantı scriptleri kodları

Oracle Database Connection Strings in PHP
By Alison Holloway on Apr 20, 2006

It’s easy to get confused as to how to specificy your Oracle database connection string,
and there’s a handy new feature in Oracle 10g
that makes this a whole lot easier. So here’s a little rundown of the three ways to connect to Oracle databases. You can use the:

•tnsnames.ora file
•Full connection string
•Easy connect string
These examples show how to specificy an Oracle connection string using the new OCI8 functions in PHP.

tnsnames.ora File
The tnsnames.ora file is a client side
file that maps an alias used by client programs to a database service. It is used to connect to a non-default database. Here you have to have an entry in the tnsnames.ora file, and
reference the alias to that entry in your connection code.

PHP code:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
oci_connect($un, $pw, 'MYDB');
 
tnsnames.ora entry
 
MYDB = (DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)
(HOST = mymachine.mydomain)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = MYDB.AU.ORACLE.COM)) )
 
Full Connection String
The full connection string does not require the use of a tnsnames.ora file.
You need to enter the full connection string when you connect to the database in your code.
 
PHP code:
 
oci_connect($un, $pw,
'(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=mymachine.mydomain)(PORT=1521))
(CONNECT_DATA=(SERVER=DEDICATED)
(SERVICE_NAME = MYDB)))');

 

Easy Connect String
This is one Oracle 10g feature that I use daily. As I constantly connect to so many different databases in my day, this has saved me so much time as I don’t have to configure anything, just know the machine name and the database alias and I’m off.

The easy connect string does not require the use of a tnsnames.ora file, and is an abbreviated version of the full connection string. you must have the Oracle 10g client-side libraries to use the easy connect string.

PHP code:

oci_connect($un, $pw, ‘//mymachine.mydomain:port/MYDB’);

PHP kategorisine gönderildi Etiketler:

wordpress giriş catpcha eşleşme problemi

girişe captcha kodunu etkinleştirmişseniz yazdığınız kod eşeşmemektedir hatası veriyor bu problem host kotanızı aştığınızda meydana gelmektedir kotanızı yükselttiğinizde problem düzeliyor.

Genel kategorisine gönderildi Etiketler:

php ile oracle veritabanı bağlantısı

Oracle Tartışmasız En iyi Veritabanı yazılımı.Rakiplerinin ilerleyişini iyi takip edip fiyatı artmadan satın alan bir yazılım akıllı adamlar gerek fonksiyonları gerekse hızı olarak anlatılamicak kadar çok işlevi var. en basitinden karmaşık sorglarda mysqldeki EXPLAIN işleminde gördüğünüz up uzun yolu o daha pratik işlyebilio mesela. vs vs..

Oracle’a herhangi bişey ile bağlanmak istediğimizde mutlaka aracı olan bir Client programı lazım..

Aşağıdaki Adresten Size Uygun Olanını ufak bir uyelikle temin edebilirsiniz.
http://www.oracle.com/technology/sof…sql/index.html

clientimiz de varsa.

php.ini dosyamızdan

;extension=oci8.dll
;extension=oci.dll

satırlarının başındaki ” ; ” kaldırıp. phpyi çalıştıran servisimizi yeniden başlatıyoruz..

Artıkk php ile oraclea bağlanabiliriz..

şimdi gelelim ufak oracle işlemlerine.. php ile herhangi bir veritabanı bağlantısı yapmışsanız bunda hiç zorlanmicaksınz.

veritabanı kullanıcı adı sunucu adresi ve şifresi gibii işlemlerde diğer sqllerden farkı Veritabanıın aynı zamanda sunucuda bir kullanıcı gibi görünmesi ki kullanıcı oluyo sanırım

PHP- Kodu:
< ?php define('DB_KULLANICI','kullanici_sifresi'); define('DB_SIFRE','kullanici_sifresi'); define('OCIHOST','(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168 .1.1)(PORT=1521))(CONNECT_DATA=(SID=orcl)))'); ?>

böyle bir ayar dosyamız olsun. şimdi bunu açıklayalım..

kullanıcı adı ve şifre dışında alışılmadık bir düzende veritabanı tanımlanmış.

veritabanının açıklmasında Sunucu adresi Portu .. SID de bahsettiğim sunucudaki eşsiz kullanıcı ve Veritabanı adı oluyor sanırım.

işin doğrusu SID – SERVICE_NAME – TNS gibi terimlerini kullansam da tam olarak mantığını anlamış değilim..

neyse..

PHP- Kodu:

< ?php define('DB_KULLANICI','kullanici_sifresi'); define('DB_SIFRE','kullanici_sifresi'); define('OCIHOST','//127.0.0.1:1521/orcl'); ?>

gibi de tanımlanabilir Veritabanı

bir kaç fonksiyon grubu ve sınıf mevcut phpde oraclea bağlanmak için.

oci_ fonksiyonlarını kullanarak anlatıcam..

oci_connect(); -> Bağlantı oluşturan fonksiyondur default session time outu ben bulamadım ama mysql bağlantısında bikaç dakikalık zamanı php belirlemişse bu da aynıdır sanıyoru.. oc_pconnect(); daha kısa süreli bir session oluşturarak bağlanan fonksiyondur.

bağlantıya bir isim veriyoruz ornek

< ? $baglanti=oci_connect(KULLANICI_ADI,SIFRE,OCIHOST) ; ?>

yazdığımız sql i direk sorgu olarak gonderemiyoruz oraclea. önce oci_parse(); Fonksiyonundan Geçirip onu Oraclea Gonderilmeye Musait hale getiriorz.. Tehlikeli Sorgular daha işin başında patlak verio yani.

parse işleminden sonra çıktı olarka aldığımız değer $sql olsun..

Oci_Execute($sql); Fonksiyonundan Geçiriyoruz. query işlemi elimizde oluyor.

eğer buna bir isim vermemişsek yine $sql olarak elimizde oluyor artık bu bir Datasource.
tipi de Oracle result.. mysql_query(); den dönen sonuç gibi satırlı sütunlu bir depo..

ve artık ayrıştırma işlemne geldik o da klasik OCI_Fetch_Assoc (=

şimdi tek dosyada toplayalım

PHP- Kodu:

< ?php define('DB_KULLANICI','kullanici_sifresi'); define('DB_SIFRE','kullanici_sifresi'); define('OCIHOST','//127.0.0.1:1521/orcl'); $baglanti=oci_connect(DB_KULLANICI,DB_SIFRE,OCIHOST); $sql=oci_parse("SELECT Adi||' '||Soyadi AS Ad_Soyad FROM uyeler WHERE Nick='DeLLy'"); $data_source=oci_execute($sql); $sonuc=oci_fetch_assoc($data_source); echo $sonuc[Ad_Soyad]; // Sonuç Olarak # # # Seyit Onbaşı Gibi Bir Çıktı Alırız (: # ?>

PHP kategorisine gönderildi Etiketler:

Oracle veritabanı bağlantısı

Oracle’ın kurulu olduğu bir makinada klasörleme yapısı ve bilinmesi gerekli dosyalar hakkında bilgi edineceğiz. Oracle Database Server’a erişim kodlarını saklayan tnsnames.ora dosyasının yapısını tanıyacağız. Server’daki tablolara ul aşıp sorgulayabileceğimiz araçları yakından tanıyacağız.
1. Oracle Database Server’da Dosya Dizin Yapısı

Oracle server kurulu olduğu bir makinada oracle’ın kurulu bulunduğu dizin
Standart olarak : C:\oracle’dır
Bu dizin altında 3 klasör bulunur.

1- C:\oracle\admin : yönetime ilişkin dosyaların bulunduğu dizin
2- C:\oracle\ora90 : tüm kütüphanelerin bulunduğu dizin
3- C:\oracle\oradata : Control, data ve redo log file’ların tutulduğu dizindir.
Data file’lar verilerin tutulduğu uzantısı .dbf (Data Base File) olan dosyalardır.
DİKKAT:
C:\oracle\ora90\network\ADMIN\tnsnames.ora Dosyası sistem için en önemli dosyadır.
Bu dosyada yerel(local) yada uzak(remote)‘a bağlantı için host string tutulur.
Örnek 2 blok asağıdaki gibidir:
Local bağlantı için :
GLOBE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = betul)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = GLOBE) ) )Blokları bulunuyor. GLOBE oracle serverının adı. Betul ise makinamın adı. Bunun yerine ip’de yazılabilir. Bu blok oracle server kurulunca otomatik olarak oluşturulur.
Remote bağlantı için:
UNIX = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = BETUL)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST =195.164.209.155)(PORT = 1521)) ) (CONNECT_DATA = (SID = CDR) ) )Local olmayan bir server’a (örneğin unix bir makina üzerinde oracle kurulu) bağlantı için bu bloğu manuel olarak eklenmesi gerekir.
UNIX karşı server’a bağlantı adım.
HOST (1) : bağlanılan makinanın adı (BETUL)
HOST (2) : baglanılacak hedef makinanın ip’si (195.164.209.155)
SID : bağlanacağım serverdaki oracle server’ın adı (CDR)

DİKKAT:
1. Oracle servera default olarak 1521 nolu porttan bağlanılır.

2. C:\oracle\ora90\Apache\Apache\conf\ httpd.conf dosyasında ise 80 default port ile bağlanılır.
Bu portu explorer veya herhangi bir web browser üzerinden servera bağlanıp sorgulamak icin kullanacağız.

2. Oracle Database Server’a Bağlantı Araçları

2.1. SqlPlus

SqlPlus oracle server ile birlikte kurulur.
Başlat/ Programlar/ Oracle-OraHome90/Application Development/SQL PLUS’dan erişilip çalıştırılabilir.

Username : system (en yetkili kullanıcı) Password : ******* Host String: Oracle Server’ın adı (GLOBE) connect SQL>

Şeklinde bir satır görüntülenirse artık oracle’da istenilen sorgu yapılabilir.
LOG ON penceresinde
User name : kullaniciadi/sifre@oracle_server_adi as sysdba (system/123@GLOBE as sysdba )
Yazılıp diğer girişler boş bırakılırsa da bağlanılabilir
Eğer kullanıcıda sorgulama yetkileriniz varsa istediginiz tabloyu sorgulayabilirsiniz.
Örnegin : SQL>Select * from employee; Şeklinde sorguların sonuna noktalı virgül konulmalıdır.
Eğer tek satıra veri sığmıyorsa
SQL>Set pages 100;
SQL>Set lines 190;
ile satır stun düzeni ayarlanabilir.
SQL>exit ile oracle ile bağlantı kesilerek sistemden çıkılır

2.2. ISqlPlus

Web browser’da (explorer, fire fox vs…)
Local servera bağlanılacaksa : http://127.0.0.1:80/isqlplus yazılır.
127.0.0.1 : bağlanılacak makinanin ip’si
(127.0.0.1 loopback benim local ip’m)
Eğer remote bir makinaya bağlanılacaksa o makinanin ip’si verilmelidir.
80 : portundan (httpd.conf dosyasindaki varsayılan(default) port)
Eğer bağlantıda sorun olursa
Denetim masası, yönetimsel araçlar, hizmetlerde (Control Panel/administrative tools/services)
OracleOraHome90HTTPServer’ı başlatılması gerekir.

DİKKAT:

System kullanıcısı ile isqlplusa bağlanılamıyorsa (windows’un parola penceresi geliyorsa)
Once sys kullanıcısıyla sysdba olarak servera bağlanılıp
SQL>Grant sysdba to system ile system kullanıcısına sysdba yetkisi verilmelidir.
Command satırında
C:\oracle\ora90\Apache\Apache\bin>htpasswd C:\oracle\ora90\sqlplus\admin\iplusdba.pw system Automatically using MD5 format on Windows. New password: ***** (Sistemde tanımlı herhangi bir kullanıcı ve şifresi girilmelidir) Re-type new password: ***** Adding password for user systemŞeklinde command satırından htppassword’e parametre verilmelidir.
http://127.0.0.1:80/isqlplusdba denildikten sonra windowsun parola penceresinde ise verilen bu kullanıcı adı ve şifre girilmelidir.

2.3. Toad

(En sık kullandığım tooldur, tavsiye ederim, kullandıkça bir çok marifeti ile karşılaşacaksınız)
TOAD adı verilen bir program ile. Tnsnames.ora dosyasından bağlantıyı otomatik okuyan bir araçtır.
Menuden : File/new connection
Database : oracle server_adı (örneğin GLOBE )

User/Schema :kullanici_adi (örneğin system)
Password: *********
Connect as : SYSDBA Connect butonu tıklanır.
Üstteki alanda sorgu (query) cümlelerini yazıp cümleyi fare ile tarayıp F9 ile çalıştırabilirsiniz.

İPUCU:

Oracle’da System, Sys , diğer olmak üzere kullanıcılar mevcuttur. Sys en yetkili kullanıcıdır. Veritabanını açıp kapatabilir.
(sysdba, sysoper yetkileri vardır) System de en yetkili kullanıcıdır ancak veritabanini açıp kapatamaz. Diğer kullanıcılar ise system ve sys’nin dağıttığı yetkilerle veritabanında işlem yürütürler. Toad ile bağlanırken sysoper veritabanını açıp kapatma yetkisi olan kişilerin bağlantı tipidir.

Related Posts Plugin for WordPress, Blogger...
PHP kategorisine gönderildi Etiketler:

Son Yazılar

doraglass