Bagaimana terhubung ke kode php di sql server?

Pada bagian ini Anda akan membuat aplikasi PHP sederhana. Aplikasi PHP akan melakukan Sisipkan, Perbarui, Hapus, dan Pilih dasar

Langkah 2. 1 Instal Driver PHP untuk SQL Server

Unduh Driver Microsoft PHP untuk SQL Server dari halaman unduhan

Pilih dll yang sesuai - misalnya php_pdo_sqlsrv_74_nts. dll untuk Driver PDO dan php_sqlsrv_74_nts. dll untuk driver SQLSRV

Salin file dll ke C. \Program Files\iis express\PHP\v7. 4\ekstensi folder

Daftarkan file dll di php. file ini

    cd C:\Program^ Files\iis^ express\PHP\v7.4\ext
    echo extension=php_sqlsrv_74_nts.dll >> C:\Program^ Files\iis^ express\PHP\v7.4\php.ini
    echo extension=php_pdo_sqlsrv_74_nts.dll >> C:\Program^ Files\iis^ express\PHP\v7.4\php.ini

Langkah 2. 2 Buat database untuk aplikasi Anda

Buat database menggunakan sqlcmd

sqlcmd -S localhost -U sa -P your_password -Q "CREATE DATABASE SampleDB;"
_

Langkah 2. 3 Buat aplikasi PHP yang terhubung ke SQL Server dan mengeksekusi kueri

mkdir SqlServerSample
cd SqlServerSample

Menggunakan editor teks favorit Anda, buat file baru bernama connect. php di folder SqlServerSample. Rekatkan kode di bawah ini ke dalam file baru

<?php
    $serverName = "localhost";
    $connectionOptions = array(
        "Database" => "SampleDB",
        "Uid" => "sa",
        "PWD" => "your_password"
    );
    //Establishes the connection
    $conn = sqlsrv_connect($serverName, $connectionOptions);
    if($conn)
        echo "Connected!"
?>

Jalankan skrip PHP Anda dari terminal

php connect.php
_

Connected!

Jalankan skrip T-SQL di bawah ini di terminal dengan sqlcmd untuk membuat skema, tabel, dan masukkan beberapa baris

sqlcmd -S localhost -U sa -P your_password -d SampleDB -Q "CREATE SCHEMA TestSchema;"
sqlcmd -S localhost -U sa -P your_password -d SampleDB -Q "CREATE TABLE TestSchema.Employees (Id INT IDENTITY(1,1) NOT NULL PRIMARY KEY, Name NVARCHAR(50), Location NVARCHAR(50));"
sqlcmd -S localhost -U sa -P your_password -d SampleDB -Q "INSERT INTO TestSchema.Employees (Name, Location) VALUES (N'Jared', N'Australia'), (N'Nikita', N'India'), (N'Tom', N'Germany');"
sqlcmd -S localhost -U sa -P your_password -d SampleDB -Q "SELECT * FROM TestSchema.Employees;"
_

Menggunakan editor teks favorit Anda, buat file baru bernama crud. php di folder SqlServerSample. Rekatkan kode di bawah ini ke dalam file baru. Ini akan menyisipkan, memperbarui, menghapus, dan membaca beberapa baris

<?php
$serverName = "localhost";
$connectionOptions = array(
    "Database" => "SampleDB",
    "Uid" => "sa",
    "PWD" => "your_password"
);

//Establishes the connection
$conn = sqlsrv_connect($serverName, $connectionOptions);

//Insert Query
echo ("Inserting a new row into table" . PHP_EOL);
$tsql= "INSERT INTO TestSchema.Employees (Name, Location) VALUES (?,?);";
$params = array('Jake','United States');
$getResults= sqlsrv_query($conn, $tsql, $params);
$rowsAffected = sqlsrv_rows_affected($getResults);
if ($getResults == FALSE or $rowsAffected == FALSE)
    die(FormatErrors(sqlsrv_errors()));
echo ($rowsAffected. " row(s) inserted: " . PHP_EOL);

sqlsrv_free_stmt($getResults);

//Update Query

$userToUpdate = 'Nikita';
$tsql= "UPDATE TestSchema.Employees SET Location = ? WHERE Name = ?";
$params = array('Sweden', $userToUpdate);
echo("Updating Location for user " . $userToUpdate . PHP_EOL);

$getResults= sqlsrv_query($conn, $tsql, $params);
$rowsAffected = sqlsrv_rows_affected($getResults);
if ($getResults == FALSE or $rowsAffected == FALSE)
    die(FormatErrors(sqlsrv_errors()));
echo ($rowsAffected. " row(s) updated: " . PHP_EOL);
sqlsrv_free_stmt($getResults);

//Delete Query
$userToDelete = 'Jared';
$tsql= "DELETE FROM TestSchema.Employees WHERE Name = ?";
$params = array($userToDelete);
$getResults= sqlsrv_query($conn, $tsql, $params);
echo("Deleting user " . $userToDelete . PHP_EOL);
$rowsAffected = sqlsrv_rows_affected($getResults);
if ($getResults == FALSE or $rowsAffected == FALSE)
    die(FormatErrors(sqlsrv_errors()));
echo ($rowsAffected. " row(s) deleted: " . PHP_EOL);
sqlsrv_free_stmt($getResults);


//Read Query
$tsql= "SELECT Id, Name, Location FROM TestSchema.Employees;";
$getResults= sqlsrv_query($conn, $tsql);
echo ("Reading data from table" . PHP_EOL);
if ($getResults == FALSE)
    die(FormatErrors(sqlsrv_errors()));
while ($row = sqlsrv_fetch_array($getResults, SQLSRV_FETCH_ASSOC)) {
    echo ($row['Id'] . " " . $row['Name'] . " " . $row['Location'] . PHP_EOL);
}
sqlsrv_free_stmt($getResults);

function FormatErrors( $errors )
{
    /* Display errors. */
    echo "Error information: ";

    foreach ( $errors as $error )
    {
        echo "SQLSTATE: ".$error['SQLSTATE']."";
        echo "Code: ".$error['code']."";
        echo "Message: ".$error['message']."";
    }
}
?>

Jalankan skrip PHP Anda dari terminal

php crud.php
_

Inserting a new row into table
1 row(s) inserted:
Updating Location for user Nikita
1 row(s) updated:
Deleting user Jared
1 row(s) deleted:
Reading data from table
2 Nikita Sweden
3 Tom Germany
4 Jake United States
_

Selamat. Anda telah membuat aplikasi PHP pertama Anda dengan SQL Server. Lihat bagian selanjutnya untuk mempelajari tentang bagaimana Anda dapat membuat PHP Anda lebih cepat dengan fitur Columnstore SQL Server

Lanjutkan ke langkah 3

Punya pertanyaan?

Saya senang bisa membantu. Anda dapat menemukan kami di GitHub, Forum MSDN, dan StackOverflow. Kami juga memantau tagar #SQLServerDev di Twitter

Bisakah Anda menggunakan PHP dengan SQL Server?

Driver Microsoft untuk PHP untuk SQL Server mengaktifkan integrasi dengan SQL Server untuk aplikasi PHP . Drivernya adalah ekstensi PHP yang memungkinkan pembacaan dan penulisan data SQL Server dari dalam skrip PHP.

Bagaimana PHP berinteraksi dengan SQL?

Bahasa PHP menyediakan fungsi yang membuat komunikasi dengan MySQL menjadi sangat sederhana. Anda menggunakan fungsi PHP untuk mengirim query SQL ke database . Anda tidak perlu mengetahui detail komunikasi dengan MySQL; . Anda hanya perlu mengetahui kueri SQL dan cara menggunakan fungsi PHP.