This is my first time posting, so forgive me if I'm not perfect at this yet. I'm new to web development and most of what I have already gotten is just through searching for answers. I've been doing pretty well so far, but I can't seem to find a clear answer to what I'm trying to do.
I'm trying create an online database of Teacher Assistant information that's readily accessible. It's a self-assigned project that I'm doing with a combination of MySQL (database), PHP (for querying/echoing JSON), and HTML.
This is what I have so far:
(partial) test_db.sql:
CREATE TABLE IF NOT EXISTS `TAs` (
`ID` int(1) NOT NULL auto_increment,
`Name` varchar(40) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
INSERT INTO `TAs` (`Name`) VALUES
('Firstname Lastname'),
('Firstname2 Lastname2'),
('Firstname3 Lastname3'),
('Firstname4 Lastname4');
...
...
test_to_json.php:
<?php
function name($x) {
$db = new PDO('mysql:host=localhost;dbname=json_test;charset=utf8', 'root', 'user');
$sql = "select TAs.Name, Classes.Classname, Sessions.Day, Sessions.Time, Sessions.Location
from TAs, Classes, Sessions
where TAs.ID = Sessions.TAID and Classes.ID = Sessions.ClassID and TAs.name like '%$x%'";
$array = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC);
echo json_encode($array), "
";
}
name($_POST["name"]);
?>
testing.html:
<!DOCTYPE HTML>
<html>
<body>
<form action="test_to_json.php" method="post">
Name: <input type="text" name="name"><br>
<input type="submit">
</form>
</body>
</html>
First, is this even possible? Or is this an exercise in futility?
If it is, I know that my database and PHP are working to output the JSON. My problem comes with the html; when I'm trying to figure out how to use an online user input to create a search of the database.
So how do I implement something like this? Something like a HTML user input (i.e. a search) that submits to the PHP for for querying the MySQL and then returning the proper JSON for use?
A direct answer would be awesome! Resources that could teach me work too though; learning is great. Really anything that can put me on the right track is welcome.
Thanks for any help!