Я создал таблицу и сохранил в ней значения. Таблица имеет уникальный идентификатор столбца «ID».Как получить одну строку из таблицы с помощью PHP?
Сейчас я создал бланк, где есть кнопка с пометкой Восстановить. Когда я ввожу ID и нажимаю кнопку Retrieve, я хочу просмотреть данные, соответствующие этому ID.
Как это сделать с помощью PHP и MYSQL?
У меня есть код ниже, но он не работает. Сообщение об ошибке не отображается. Но никаких проблем с подключением db нет. Остальные функции работают, за исключением «RETRIEVE».
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbname = 'DB';
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
if(mysqli_connect_error())
{
die("couldn't connect" . $conn->connect_error());
}
echo ("connected successfully");
$id = $_POST['Id'];
$name = $_POST['Name'];
$blood = $_POST['BloodGroup'];
if(isset($_POST['insert'])){
$insert = "Insert into ins(Id, name, BloodGroup) values ('$id','$name', '$blood')" ;
if($conn->query($insert) === TRUE) {
echo ("Input data entered successfully");
} else {
echo ("Input data failed to be entered" . $conn->error());
}
$conn->close();
} elseif(isset($_POST['update'])) {
$update = "update ins set Name='".$name."', BloodGroup='".$blood."' where Id='".$id."'";
mysql_query($update);
if($conn->query($update) === TRUE) {
echo ("Data updated successfully");
} else {
echo ("Data cant be updated" . $conn->error());
}
$conn->close();
} elseif(isset($_POST['delete'])) {
$id = $_POST['Id'];
$delete = "delete from ins where Id='".$id."'";
if($conn->query($delete) === TRUE) {
echo ("Data deleted successfully");
} else {
echo ("Data cant be updated" . $conn->error());
}
$conn->close();
}
else {
$id = $_POST['Id'];
$retrieve = "SELECT * FROM ins WHERE Id = ".'$id'."";
$dis = $db->query($retrieve);
$row = $dis->fetch_assoc();
echo 'Details are: '.$row['id'];
}
}
$conn->close();
?>
Хотя это не то, о чем вы просите, ваш код уязвим для нескольких атак SQL-инъекций, что может и * приведет к потере данных и проблемам конфиденциальности для ваших пользователей. Пожалуйста, найдите некоторую информацию по этой теме и не ставьте этот код в производство так! –
Да, хорошо. Благодарю. Во всяком случае, я просто проверяю, как это работает. Это не последнее. Еще раз спасибо. –