PHPize Online / SQLize Online  /  SQLtest Online

A A A
Share      Blog   Popular
Copy Format Clear
CREATE TABLE Persons ( PersonID int, LastName varchar(255), FirstName varchar(255), CreatedAt datetime ); INSERT INTO Persons (PersonID, LastName, FirstName, CreatedAt) VALUES (1, "gigi_ln_1", "gigi_fn_1", "2025-1-1 10:10"); INSERT INTO Persons (PersonID, LastName, FirstName, CreatedAt) VALUES (2, "gigi_ln_2", "gigi_fn_2", "2025-1-2 10:10"); INSERT INTO Persons (PersonID, LastName, FirstName, CreatedAt) VALUES (3, "gigi_ln_2", "gigi_fn_3", "2025-1-3 10:10"); SELECT * FROM Persons;
Copy Clear
Copy Format Clear
<?php $user_id = 2; $lastName = "gigi_ln_2"; $firstName = "gigi_fn_2"; $created_at = "2025-01-02 09:10"; $sql = "SELECT * FROM Persons"; $condition = ''; $conditionParameters = array(); if (isset($user_id) && ($user_id != '')) { $condition .= "AND Persons.PersonID = ? "; $conditionParameters[] = $user_id; } if (isset($lastName) && ($lastName != '')) { $condition .= "AND Persons.LastName LIKE ? "; $conditionParameters[] = "%".$lastName."%"; } if (isset($firstName) && ($firstName != '')) { $condition .= "AND Persons.FirstName LIKE ? "; $conditionParameters[] = "%".$firstName."%"; } if (isset($created_at) && ($created_at != '')) { $condition .= "AND TIMESTAMPDIFF(SECOND, Persons.CreatedAt, ?) < 0 "; $conditionParameters[] = date("Y-m-d H:i", time()); } if (strlen($condition) > 0) { $condition = " WHERE " . substr($condition, 3); } $sql .= $condition." ORDER BY Persons.PersonID DESC"; $parameters = array(); foreach ($conditionParameters as $param) { $parameters[] = $param; } print($sql); print_r($parameters); $stmt = $pdo->prepare($sql); $stmt->execute($parameters); $rs = $stmt->fetchAll(PDO::FETCH_ASSOC); print($stmt->debugDumpParams()); print_r($rs);
Show:  
Copy Clear