Это, безусловно, может быть достигнуто с помощью встроенных функций PHP. Несмотря на то, что какие-либо учебники, которые вы найдете в Интернете, не используют никаких функций mysql_*
- они небезопасны и устарели. Вместо этого используйте mysqli
или PDO
.
Я приведу вам пример. Предположим, у вас есть таблица со следующими столбцами:
id employee_name employee_address
у вас есть переменная PHP с идентификатором сотрудника, хранящегося в нем: $employee_id
. Использование PDO вы можете получить подробную информацию работника следующим образом:
// connect to the mysql database server
$db = new PDO('mysql:host=localhost;dbname=testdb;charset=utf8', 'username', 'password');
// Prepare the statement (the basic outline of your query)
$st = $db->prepare('SELECT * from employees WHERE id = ?');
// Actually execute the query, putting in your id
$st->execute(array($employee_id));
// Get the actual employee details out of the result
$employee = $st->fetch();
Подготовленные заявления полезны с наступающими любые данные из unsanitised источников, т.е. от пользователей, так как они делают фильтрацию, и т.д., чтобы убедиться, что вы не рискуете SQL-инъекций.
UPDATE:
Что-то вроде этого должны работы, но это не тестировалась. В основном есть форма и обработчик в том же файле (не самая лучшая практика, но в этом маленьком примере это прекрасно). Если форма была отправлена, выполните поиск и покажите некоторые детали. В противном случае отобразите форму.
<?php
//if the form's been sent, the "name" index will be in $_POST
if(isset($_POST['name'])) {
// connect to the mysql database server
$db = new PDO('mysql:host=localhost:3306;dbname=db_test14;charset=utf8', 'root', 'password');
// Prepare the statement (the basic outline of your query)
$st = $db->prepare('SELECT * from techsols_employee WHERE id = ?');
// Actually execute the query, putting in your id
$st->execute(array($employee_id));
// Get the actual employee details out of the result (as associative array)
$employee = $st->fetch(PDO::FETCH_ASSOC);
echo "Employee Details: " . $employee['name'] . ", " . $employee['address'];
} else {
// otherwise, show the form
// I've changed the action to the set it to the php file that shows the form.
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="get">
Employee ID: <input type="text" name="name"><input type="submit">
</form>
<?php } ?>
Вы можете разбить это на два файла: form.html и results.php, то есть PHP файл редирект form.html, если ничего не было отправлено по почте, используя следующие вместо кода отображения формы там :
header('Location: form.html');
Для ваших нужд вам понадобятся основные функции PHP. См .: http://www.php.net/manual/de/book.mysql.php –
Рамка представляет собой кучу предварительно написанного кода, который вы можете использовать как есть. Это не волшебство, и это не то, что вы не можете сделать сами. – deceze
Изменил тему моего вопроса. – Jeiman