Example | Ag-grid Php
$limit = $endRow - $startRow;
INSERT INTO users (name, email, age, country, salary) VALUES ('John Doe', 'john@example.com', 28, 'USA', 55000), ('Jane Smith', 'jane@example.com', 32, 'Canada', 65000), ('Carlos Mendez', 'carlos@example.com', 45, 'Mexico', 48000); <?php header('Content-Type: application/json'); header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Methods: GET, POST'); $host = 'localhost'; $dbname = 'ag_grid_demo'; $username = 'root'; $password = ''; ag-grid php example
// Apply sorting if (!empty($sortModel)) { $orderBy = []; foreach ($sortModel as $sort) { $colId = $sort['colId']; $sortDir = $sort['sort']; $orderBy[] = "$colId $sortDir"; } $sql .= " ORDER BY " . implode(', ', $orderBy); } else { $sql .= " ORDER BY id ASC"; } $limit = $endRow - $startRow; INSERT INTO users
try { $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $username, $password); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e) { die(json_encode(['error' => 'Database connection failed'])); } ?> <?php require_once 'config.php'; // Get request parameters from AG Grid $startRow = isset($_GET['startRow']) ? (int)$_GET['startRow'] : 0; $endRow = isset($_GET['endRow']) ? (int)$_GET['endRow'] : 100; $sortModel = isset($_GET['sortModel']) ? json_decode($_GET['sortModel'], true) : []; $filterModel = isset($_GET['filterModel']) ? json_decode($_GET['filterModel'], true) : []; 'text'; $type = $filter['type']
// Apply filters if (!empty($filterModel)) { foreach ($filterModel as $field => $filter) { $filterType = $filter['filterType'] ?? 'text'; $type = $filter['type'] ?? 'equals'; $filterValue = $filter['filter'] ?? '';
case 'number': if ($type === 'equals') { $sql .= " AND $field = :{$field}_filter"; $params[":{$field}_filter"] = $filterValue; } elseif ($type === 'greaterThan') { $sql .= " AND $field > :{$field}_filter"; $params[":{$field}_filter"] = $filterValue; } elseif ($type === 'lessThan') { $sql .= " AND $field < :{$field}_filter"; $params[":{$field}_filter"] = $filterValue; } break;
switch ($filterType) { case 'text': if ($type === 'contains') { $sql .= " AND $field LIKE :{$field}_filter"; $params[":{$field}_filter"] = "%$filterValue%"; } elseif ($type === 'equals') { $sql .= " AND $field = :{$field}_filter"; $params[":{$field}_filter"] = $filterValue; } break;