это мой первый вопрос, поэтому, пожалуйста, не жарьте на меня.сравнить запись в базе данных с формой
В настоящее время я работаю над проектом html, php, mysql в школе, и я хочу знать, можно ли сравнить запись формы в html со таблицей в моей базе данных, чтобы получить ее идентификатор.
форма выглядит
Prename: ""
Фамилии:»"
Стола:
ID: '1'
Prename: 'а'
Фамилии: 'хуг'
Теперь, если кто-то заполняет форму и отправляет, я хочу отправить ее функции, которая просматривает базу данных, и если совпадение найдено, возвращает идентификатор.
Спасибо за ваши идеи!
Edit: Как вы хотите, вот что я до сих пор включает в себя код из @Patchesoft
Тем не менее оно не работает
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="db_class.php" method="post">
<p>Vorname: <input type="text" name="prename"/></p>
<p>Nachname: <input type="text" name="last_name"/></p>
<input type="submit" name="submit" value="Start"/>
</form>
</body>
</html>
А для PHP части наш учитель получил нас класс с большим количеством функции для добавления и выбрать из базы данных и т.д. Самого главного:
<?php
DB::init(...); // The connection is ok. I just delted the login data for purpose
$prename = mysqli_real_escape_string($_POST['prename']);
$lastname = mysqli_real_escape_string($_POST['last_name']);
$result = mysqli_query("SELECT `ID` FROM `user` WHERE `prename` = '" . $prename . "' AND `last_name` = '" . $lastname . "' ");
if(mysqli_num_rows($result) > 0) {
$row = mysqli_fetch_array($result);
return $row['ID'];
}
echo $result;
class DB {
public static $db = null;
public static $insertID;
public static function init($dbHost, $dbUser, $dbPassword, $dbName) {
self::$db = new mysqli($dbHost, $dbUser, $dbPassword, $dbName);
if (self::$db->connect_errno) {
$_SESSION['errors'][] = "MySQL connection failed: ". self::$db->connect_error;
}
self::$db->query("SET NAMES utf8;");
}
public static function select($table, $columns = '*', $key=null, $where = null, $limit = null, $debug = false) {
$sql = "SELECT " . self::generateColumnList($columns) . " FROM $table";
if ($where != null) {
$sql .= " WHERE ".$where;
}
if ($limit != null) {
$sql .= " LIMIT ".$limit;
}
if ($debug == true) {
$_SESSION['debug'][] = __FUNCTION__ . ': $sql is <strong>' . $sql . '</strong>';
}
$result = self::$db->query($sql);
if (self::$db->errno) {
$_SESSION['errors'][] = '<p>select failed: ' . self::$db->error . '<br> statement was: <strong>' . $sql . '</strong></p>';
return array();
} else {
$ret = array();
while ($row = $result->fetch_assoc()) {
if (!empty($key)){
$ret[$row['id']] = $row;
}
else
$ret[] = $row;
}
if (count($ret) == 1) {
return $ret[0];
} else {
return $ret;
}
}
}
public static function select2($sql, $debug = false) {
$result = self::$db->query($sql);
if (self::$db->errno) {
$_SESSION['errors'][] = '<p>select failed: ' . self::$db->error . '<br> statement was: <strong>' . $sql . '</strong></p>';
return array();
} else {
$ret = array();
while ($row = $result->fetch_assoc()) {
if (!empty($key)){
$ret[$row['id']] = $row;
}
else
$ret[] = $row;
}
if (count($ret) == 1) {
return $ret[0];
} else {
return $ret;
}
}
}
Добро пожаловать в SO. В сети есть сотни обучающих программ. Просто используйте большую поисковую систему и возвращайтесь с кодом, чтобы показать нам, что вы пробовали. –
Почему вы думаете, что мы будем жарить вас? Мы самые красивые люди в мире. – CodeGodie
Какой код вы пробовали? можете ли вы «отредактировать» свой исходный вопрос и предоставить этот код? – CodeGodie