Из моего предыдущего поста (дублированный - Как редактировать и обновлять в php? )
Задача
После того, как я нажму на кнопку обновления (в front.php), отобразится сообщение сеанса, но запрос не обновился.
То, что я пробовал до сих пор
В edit&update.php
, count()
недоступен после PHP 7.0 +.
Итак, я перешел на is_countable()
, но я не знаю, эквивалентна ли это / совместимая функция count()
или нет.
Примечания
Для edit&update.php
я перейду в подготовленный оператор позже, если запрос может быть обновлен после нажатия на кнопку обновления.
Нет предупреждений или уведомлений во время выполнения кода, но запрос не обновился после нажатия на кнопку обновления.
front.php
<html>
<?php
require_once 'edit&update.php';
include 'connection.php';
?>
<body>
<!--ID (hidden)-->
<input type="hidden" name="id" value="<?php echo $id; ?>"><!--ID-->
<!--Category-->
<label>Category</label>:
<select name="category" value="<?php echo $category; ?>">
<option value="0">(Please any type below)</option>
<option value="A">A</option>
<option value="D">D</option>
<option value="M">M</option>
<option value="S">S</option>
<option value="T">T</option>
<option value="Tr">Tr</option>
<option value="Other">Other</option>
</select>
<!--URL-->
<label>URL</label>:
<input type="url" name="url" value="<?php echo $url; ?>" placeholder="URL (www.)" required>
<!--Issued date-->
<label>Issued date:</label><br>
<input type="datetime-local" name="datetime" value="<?php echo $datetime; ?>" required>
<!--Latitude-->
<label>Latitude</label>:
<input type="text" value="<?php echo $lat; ?>" name="lat" placeholder="Latitude">
<!--Longitude-->
<label>Longitude</label>: 
<input type="text" value="<?php echo $lng; ?>" name="lng" placeholder="Longitude">
<div class="row" style="padding: 10px">
<div class="col">
<?php if($update == true):
?>
<button type="submit" name="Update">Update</button>
<?php else: ?>
<button type="submit" name="Save">Save</button>
<?php endif ?>
</div>
<div class="col">
<button type="reset" value="Reset">Reset</button>
</div>
</div>
</body>
</html>
редактировать и update.php
<?php
include 'connection.php';
//Default
$id=0;
$update = false;
$category = '';
$url = '';
$datetime = '';
$lat = '';
$lng = '';
if (isset($_GET['id']))
{
$id = $_GET['id'];
$update = true;
$sql = "SELECT * FROM crimenews WHERE crimenews_id=$id";
$query = mysqli_query($conn,$sql);
if(mysqli_num_rows($query) == 1)
{
$row = mysqli_fetch_array($query);
$category = $row['crimenews_cat'];
$url = $row['crimenews_url'];
$datetime = $row['crimenews_datetime'];
$lat = $row['crimenews_locationLat'];
$lng = $row['crimenews_locationLong'];
}
}
if (isset($_POST['Update']))
{
$id = $_POST['id'];
$category = mysqli_real_escape_string($conn,$_POST['category']);
$url = mysqli_real_escape_string($conn,$_POST['url']);
$datetime = mysqli_real_escape_string($conn,$_POST['datetime']);
$lat = mysqli_real_escape_string($conn,$_POST['lat']);
$lng = mysqli_real_escape_string($conn,$_POST['lng']);
$conn->query("UPDATE crimenews SET crimenews_cat='$category', crimenews_url='$url', crimenews_datetime='$datetime', crimenews_locationLat='$lat', crimenews_locationLong='$lng' WHERE crimenews_id=$id");
$_SESSION['message'] = "This news has updated";
$_SESSION['msg_type'] = "warning";
header('location: front.php');
}