У меня есть входящие данные MYSQL в вводах формы HTML при открытии страницы. Когда я нажимаю кнопку обновления после изменения информации, операция обновления выполняется успешно, но данные не обновляются.
<?php
$servername = "";
$username = "";
$password = "";
$dbname = "";
$baglan = mysqli_connect($servername,$username,$password,$dbname) or die(myslqi_error());
$place = $_POST['n_place'];
$description = $_POST['n_description'];
$latitude = $_POST['lat'];
$longitude = $_POST['long'];
$kayitliyer = $_POST['search_new_places'];
$yetkiliad = $_POST['n_yetkiliad'];
$magazaad = $_POST['n_magazaad'];
$telefon = $_POST['n_telefon'];
$yetkilitelefon = $_POST['y_telefon'];
$derece = $_POST['derece'];
$country = $_POST['country'];
$sql = "UPDATE tbl_places SET place='$place',description='$description',lat='$latitude', lng='$longitude', kayitliyer='$kayitliyer',
yekiliad='$yetkiliad', magazaad='$magazaad', telefon='$telefon', yetkilitelefon='$yetkilitelefon', derece='$derece' WHERE place_id='$gID' ";
if (mysqli_query($baglan,$sql)) {
echo '<br/><div class="container"><div class="alert alert-success" role="alert">
Kayıt Güncelleme <b>Başarılı :-)</b> <a href=javascript:history.back(-1)>Geri Dön</a>
</div></div> ';
}else {
echo '<br/><div class="container"><div class="alert alert-danger" role="alert">
Güncelleme İşlemi <b>Başarız!</b> <a href=javascript:history.back(-1)>Geri Dön</a>
</div></div>'. mysqli_error($baglan);
}
?>
Форма HTML-страницы SELECT Query.Thanks для вашего ответа. Я получаю значение "$ gID" на странице формы HTML, где я ввел данные БД с помощью запроса SELECT.UPDATE
<?php
//UPDATE ID
$gID = $_GET["place_id"];
include ("baglanti.php");
$sorgu = mysqli_query($baglan,"select * from tbl_places where place_id='$gID'");
while($goster = mysqli_fetch_array($sorgu)){
$grupadi = $goster["place"];
$id = $goster["place_id"];
$desc = $goster["description"];
$adres = $goster["kayitliyer"];
$yetkiliad = $goster["yekiliad"];
$magazaad = $goster["magazaad"];
$telefon = $goster["telefon"];
$yetkilitelefon = $goster["yetkilitelefon"];
$derece = $goster["derece"];
$country = $goster["country"];
$lat =$goster["lat"];
$long = $goster["lng"];
}
?>
<!DOCTYPE html>
<html lang="tr">
<head>
Вы должны использовать PDO для этого, для обеспечения безопасности и очистки кода. Кроме того, и без дополнительной информации о том, откуда $gID
, я бы попытался удалить одинарные кавычки вокруг значения, по сравнению с которым он, по-видимому, является целым числом, а не строкой:
$sql = "... WHERE place_id=$gID";
mysqli_
или PDO_
- реальная разница заключается в использовании prepared statements
а не в их использовании. Подготовленные операторы могут использоваться как с mysqli_, так и с PDO_. Таким образом, использовать «PDO для безопасности» не соответствует действительности. Речь идет об использовании «подготовленных заявлений для безопасности» - PDO и подготовленные заявления не одно и то же !!! bobby-tables.com
WHERE place_id='$gID'
откуда вы получаете значение$gID
?