Rabu, 16 Februari 2011

Mengakses SQL Server Dari PHP

WPI telah menginstal rilis terbaru dari PHP dan IIS dikonfigurasi untuk itu. Mari kita periksa apakah IIS dan berjalan. Cara termudah untuk melakukannya adalah untuk mengunjungi http://localhost/ dan memeriksa bahwa default IIS menampilkan halaman dalam browser Anda. 

Memuat Manager IIS ditunjukkan pada Gambar 6, "The IIS Manager interface" -'s di bawah Administrative Tools di Control Panel, tetapi juga akan muncul jika Jenis Anda IIS ke search bar menu Start Anda. 

Gambar 6. IIS Manager antarmuka

Di sini kita bisa mengkonfigurasi dan mengelola server kami IIS, serta mengelola host website. Karena IIS disertakan dengan edisi sebagian besar Windows, WPI telah hanya menambahkan dan memungkinkan komponen yang dibutuhkan tertentu, seperti komponen CGI. Pilihan Anda lihat mungkin tidak persis sama dengan yang di atas, tetapi selama Anda memiliki CGI memungkinkan Anda harus siap untuk pergi. 

Jika Anda tidak bisa mengakses server IIS di http://localhost/ sebelumnya, klik pada server Web Anda (entry level atas pada panel kiri, kemungkinan besar diberi label dengan nama komputer Anda, misalnya, itu BUSLN1 untuk saya) . Klik Start pada panel Actions di sebelah kanan. Kemudian pilih Default Web Site dan menggunakan panel Actions di sebelah kanan untuk memastikan bahwa situs web juga berjalan. 

Sekarang mari kita pastikan bahwa PHP telah terinstal dengan benar. Server kami akan menjalankan PHP melalui modul FastCGI, metode yang direkomendasikan untuk IIS. Pertama, pilih entri teratas untuk server Anda di bawah Koneksi di sebelah kiri, dan double-klik pada Modul di jendela tengah (itu salah satu komponen dikelompokkan dalam IIS). 

Gambar 7. Modul daftar

Anda harus melihat FastCgiModule dalam daftar ini, seperti pada Gambar 7, "Daftar Modul". Jika tidak, klik Konfigurasi Modul asli di sebelah kanan, dan memungkinkan FastCgiModule tersebut. Jika FastCgiModule bukanlah pilihan, klik Register, nama FastCgiModule modul, pilih %windir%\System32\inetsrv\iisfcgi.dll sebagai jalan menuju modul, kemudian mengaktifkannya. 

Sekarang pilih Default Web Site, membuka bagian Modul, dan sekali lagi memastikan bahwa FastCgiModule ada dalam daftar tersebut. (Jika tidak, gunakan instruksi sebelumnya untuk menaruhnya di sana.) Akhirnya, dengan Default Web Site dipilih, klik dua kali Handler pemetaan. 

Gambar 8. Handler pemetaan daftar

Para WPI harus telah menambahkan entri berjudul PHP_via_FastCgi, seperti pada Gambar 8, "Handler pemetaan daftar" , ketika diinstal PHP. Namun, jika opsi ini tidak muncul dalam daftar, klik Tambah Modul Pemetaan di sebelah kanan, masukkan *.php sebagai jalur permintaan, pilih FastCgiModule dari daftar modul, dan pilih php-cgi.exe biner untuk jalan- ini harus di C:\Program Files\PHP\php-cgi.exe atau yang serupa. (Ingatlah untuk menggunakan tanda kutip di sekitar jalan yang dieksekusi, karena itu ruang dalam Program Files .) Pilih nama seperti PHP via FastCgi , dan klik OK. IIS akan meminta Anda untuk membuat aplikasi FastCGI untuk PHP, seperti yang ditunjukkan pada Gambar 9, "Menambahkan modul pemetaan"

Gambar 9. Menambahkan modul pemetaan

Sekarang kita siap untuk menjalankan aplikasi PHP kita di bawah IIS. Website default Anda akan memiliki document root mirip dengan C:\inetpub\wwwroot -Anda dapat mengubah ini menggunakan IIS Manager. Untuk saat ini, hapus default IIS file dalam folder ini dan membuat index.php file. Buka editor teks favorit Anda dan tambahkan berikut ini:
 <?php
phpinfo();
exit;  

Beralih ke web browser Anda dan kunjungi http://localhost/ lagi (atau http://localhost/index.php jika Anda tidak menghapus halaman splash IIS). Search for sqlsrv , yang merupakan asli SQL Server driver untuk PHP yang disediakan oleh Microsoft.  Lewati entri pertama dan Anda harus menemukan bahwa driver terinstal dan diaktifkan, seperti Gambar 10, "SQL Server informasi dari phpinfo" menunjukkan. 

 Gambar 10. SQL Server informasi dari phpinfo

Sekarang mari kita membuat database dan mengambilnya menggunakan PHP. Beralih kembali ke SQL Server Management Studio, terhubung ke server database Anda jika Anda belum melakukannya, dan membuat database baru. Cukup klik kanan pada Databases, lalu pilih New Database ... untuk menampilkan dialog New Database ditunjukkan pada Gambar 11, "Membuat database baru"

Gambar 11. Membuat database baru

Anda akan melihat entri baru muncul untuk database baru Anda di bawah Database.  Perluas entri untuk database anda, klik kanan pada Tabel, dan pilih New Table ... untuk membuat sebuah tabel baru. 

Gambar 12. Membuat tabel database baru

Anda dapat mengubah nama tabel menggunakan panel Properties di sebelah kanan, masukkan informasi skema (di sini kita hanya memiliki ID dan name field dalam tabel yang disebut people ), dan setel id lapangan untuk suatu kunci utama dengan mengklik kanan Nama kolom lapangan. Untuk setara medan kenaikan otomatis, ID pilih sebagai Kolom Identity bawah Designer Tabel di sebelah kanan. Hal ini tidak sepenuhnya diperlukan, tapi kupikir veteran MySQL-ers akan mencari opsi ini. 

Terakhir, klik tombol Save (atau tekan Ctrl + S) untuk membuat meja Anda. Anda akan melihatnya muncul di Object Explorer di sebelah kiri, seperti dalam Gambar 13, "menciptakan tabel baru"

Gambar 13. Baru tabel yang dibuat
 
Klik kanan dbo.people di sebelah kiri, klik Edit Top 200 Baris, dan masukkan beberapa data dummy ke dalam berturut-turut, seperti yang ditunjukkan pada Gambar 14, "Memasukkan data"

Gambar 14. Memasukkan data

Sekarang kembali ke editor teks Anda, buka index.php file kami bekerja pada sebelumnya, dan memperbaruinya dengan:
 <?php
$server = " BUSLN1\\SQLEXPRESS ";
$options = array("UID" => "sa", "PWD" => " password ",  "Database" => "test");
($ server, $ pilihan);
if ($conn === false) die("<pre>".print_r(sqlsrv_errors(), true));
echo "Berhasil tersambung!"; sqlsrv_close ($ conn); 

Anda pasti akan perlu mengubah pilihan dalam huruf miring-ini harus mencerminkan informasi konfigurasi sebelumnya Anda masuk dalam dialog koneksi dari SQL Server Management Studio. Juga, kita menggunakan \\ bukan \ dalam nama server karena \ adalah karakter melarikan diri dalam PHP. Ubah $server untuk mencerminkan nama komputer Anda, dan mengganti “PWD” nilai array dengan password yang Anda pilih. Jika Anda memilih Windows Authentication ketika anda menginstal SQL Server, biarkan “UID” dan “PWD” baris; SQL Server akan menggunakan Windows saat ini account Anda untuk otentikasi dengan database server. 

Kode ini mencoba untuk terhubung ke instance SQL Server lokal menggunakan driver SQL Server asli. API sedikit berbeda dari asli mysql , mysqli , atau pgsql driver untuk PHP, tapi mudah untuk mengambil. Untuk rincian lebih lanjut tentang driver, lihat MSDN host dokumentasi

Memuat http://localhost/index.php dan anda akan melihat pesan "Berhasil tersambung!" Jika tidak, periksa bahwa Anda SQL Server berjalan dan bahwa bekerja kredensial di SQL Server Management Studio, driver PHP harus memberikan Hasil yang sama (termasuk kata-kata pesan kesalahan. Untuk rincian lebih lanjut tentang koneksi ke SQL Server, lihat dokumentasi sqlsrv_connect

Sekarang mari kita mengambil barisan kita buat sebelumnya. Kembali ke editor teks Anda dan menambahkan kode ini setelah "Successfully connected!" baris:
 $sql = "SELECT * FROM dbo.people";
$query = sqlsrv_query($conn, $sql);
if ($ query === false)
{exit("<pre>".print_r(sqlsrv_errors(), true));}
while ($ baris = sqlsrv_fetch_array ($ query))
{echo "<p>Hello, $row[name]!</p}
sqlsrv_free_stmt($query); 

Ini akan mengambil semua catatan dari kami people meja, dan output nilai dalam name bidang tiap rekaman. Akhirnya, kita sebut sqlsrv_free_stmt untuk membebaskan sumber daya terkait dengan pernyataan query. Panggilan terakhir ini adalah opsional, tetapi bisa membuat perbedaan untuk laporan disusun kompleks dan set hasil yang besar. 

Kunjungi http://localhost/index.php di browser web Anda, Anda akan melihat sebuah entri untuk setiap catatan dalam Anda people tabel. Tambahkan baris lagi di SQL Server Management Studio dan refresh halaman untuk mendapatkan satu set hasil baru. Sekarang kita tahu bagaimana mengakses SQL Server dari PHP, kami siap untuk membangun aplikasi web kita! 

0 komentar:

Template by : kendhin x-template.blogspot.com