Это мой первый вопрос на SO. Поэтому я очень надеюсь, что все ясно, о чем я спрашиваю. Если нет, пожалуйста, оставьте отзыв.
Я пытаюсь показать данные из базы данных сервера mssql в JSGRID. Я использую PHP для этого, чтобы получить данные из MSSQL и преобразовать их в JSON, чтобы JSGRID мог что-то с этим сделать. Я уже часами пытаюсь повозиться, поэтому мне очень нужна помощь с этим.
HTML-страница с Javascript (вырезано для удобства чтения)
$("#grid_table").jsGrid({
height: "450px",
width: "1200px",
inserting: true,
filtering: true,
editing: true,
sorting: true,
paging: true,
autoload: true,
pageSize: 8,
pageButtonCount: 5,
deleteConfirm: "Do you really want to delete the client?",
controller: {
loadData: function(filter){
return $.ajax({
type: "GET",
url: "fetch_data.php",
data: filter,
//contentType: 'application/json; charset=utf-8',//
dataType: "json", //
}).then(function(result) {
return result.data;
});
},
},
fields: [
{
name: "Naam",
type: "text",
width: 150,
validate: "required"},
{
name: "Rol_Id",
type: "text",
items:
valueField: "rolnummer",
textField: "Name",
width: "auto"},
{
name: "Merk_ID",
type: "text",
width: 100
},
{
name: "Email_Adres",
type: "text",
width: 300
},
{
name: "Afdeling",
type: "text",
width: "auto"},
{
type: "control",
width: "auto"}
]
});
});
fetch_data.php Файл здесь:
<?php
$serverName = "hfdwsql01";
$connectionInfo = array("Database"=>"flexpool_test", "UID"=>"flexpool", "PWD"=>"stPQT%u_8P'd,=&5");
$conn = sqlsrv_connect($serverName, $connectionInfo);
if( $conn ) {
echo "Connection established<br />";
}else{
echo "No Connection<br />";
die( print_r( sqlsrv_errors(), true));
}
//Script to show data in browser
$sql = "SELECT Naam, Rol_Id, Merk_ID, Email_Adres, Afdeling FROM Personeel";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['Naam']." , ".$row['Rol_Id']." , ".$row['Merk_ID']." , ".$row['Email_Adres']." , ".$row['Afdeling']."<br />";
}
sqlsrv_free_stmt( $stmt);
//Script for ajax
$method = $_SERVER['REQUEST_METHOD'];
if($method == 'GET')
{
$data = array(
":Naam" => "%" . $_GET['Naam'] . "%",
":Rol_Id" => "%" . $_GET['Rol_Id'] . "%",
":Merk_ID" => "%" . $_GET['Merk_ID'] . "%",
":Email_Adres" => "%" . $_GET['Email_Adres'] . "%",
":Afdeling" => "%" . $_GET['Afdeling'] . "%");
$query = "SELECT * FROM Personeel WHERE Naam LIKE :Naam AND Rol_Id LIKE :Rol_Id AND Merk_ID LIKE :Merk_ID AND Email_Adres LIKE :Email_Adres AND Afdeling LIKE :Afdeling ORDER BY Naam DESC";
$statement = $conn->prepare($query);
$statement->execute($data);
$result = $statement->fetchAll();
foreach($result as $row)
{
$output[] = array(
"Naam" => $row['Naam'],
"Rol_Id" => $row['Rol_Id'],
"Merk_ID" => $row['Merk_ID'],
"Email_Adres" => $row['Email_Adres'],
"Afdeling" => $row['Afdeling']
);
}
header("Content-Type: application/json");
echo json_encode($output);
}
?>
Задача ещё не решена.
Других решений пока нет …