Все данные поля обновляются, но изображение не обновляется
<?php include_once 'database.php'; if(count($_POST)>0) { date_default_timezone_set("Asia/Kathmandu"); $insertdate = date("Y-m-d H:i:s"); $img = file_get_contents($_FILES['image']['tmp_name']); mysqli_query($conn,"update report set id='" . $_POST['id'] . "', name='" . $_POST['name'] . "', contactno='" . $_POST['contactno'] . "', address='" . $_POST['address'] . "' ,labno='" . $_POST['labno'] . "',age='" . $_POST['age'] . "',gender='" . $_POST['gender'] . "',refdoctor='" . $_POST['refdoctor'] . "',image='" . $img . "' WHERE id='" . $_GET['id'] . "'"); if(mysqli_affected_rows($conn)){ $message = "Record Modified Successfully"; }else{ $message = "Record Not Modified Successfully"; } } ?>
<?php $id = isset($_GET['id']) ? $_GET['id'] : ''; $result = mysqli_query($conn,"SELECT * FROM report WHERE id='$id'"); $row= mysqli_fetch_array($result); ?>
<!doctype html> <meta charset="utf-8"> <title>form add <div class="container-fluid"> <div class="panel panel-default"> <div class="panel-heading" style="background-color: aqua"> <h3 class="panel-title" style="text-align: center">Add form</h3> </div> <div class="panel-body"> <div><?php if(isset($message)) { echo $message; } ?> </div> <div style="padding-bottom: 5px"> <a href="display.php">Patient Report</a> </div> <table class="table table-bordered table-responsive"><tbody><tr> <td>ID.</td><td> </td> </tr> <tr> <td>Name.</td> <td></td> </tr> <tr> <td>Contact No.</td> <td></td> </tr> <tr> <td>Address</td> <td></td> </tr><tr> <td>Lab No.</td> <td></td> </tr><tr> <td>Age</td> <td></td> </tr><tr> <td>Gender</td> <td> <div class="col-sm-6"> <input type="radio" name="gender" id="gender1" value="male"<?php echo $row['gender']=="male"?>/>Male <input type="radio" name="gender" id="gender2" value="female"<?php echo $row['gender']=="female" ?>/>Female </div></td> </tr><tr> <td>Ref.Doctor</td> <td></td> </tr><tr> <td>Insert Report Img.</td> <td> <?php echo ''; ?> </td> </tr><tr> <td colspan="2" style="text-align: center; background-color: aqua"> </td> </tr></tbody></table> <? mysqli_close($conn); ?> </div> <div class="panel-footer" style="text-align: center">"We Wish You a Good Health"</div> </div> </div>
Что я уже пробовал:
<?php include_once 'database.php'; if(count($_POST)>0) { date_default_timezone_set("Asia/Kathmandu"); $insertdate = date("Y-m-d H:i:s"); $img = file_get_contents($_FILES['image']['tmp_name']); mysqli_query($conn,"update report set id='" . $_POST['id'] . "', name='" . $_POST['name'] . "', contactno='" . $_POST['contactno'] . "', address='" . $_POST['address'] . "' ,labno='" . $_POST['labno'] . "',age='" . $_POST['age'] . "',gender='" . $_POST['gender'] . "',refdoctor='" . $_POST['refdoctor'] . "',image='" . $img . "' WHERE id='" . $_GET['id'] . "'"); if(mysqli_affected_rows($conn)){ $message = "Record Modified Successfully"; }else{ $message = "Record Not Modified Successfully"; } } ?>
Jochen Arndt
Практически невозможно ответить на этот вопрос, не имея доступа к вашей базе данных и не зная, как вызывается PHP-код при отправке формы.
"Все полевые данные обновляются, но изображение не обновляется"
Я прочитал это как "никаких ошибок не произошло, и все переданные полевые данные, кроме данных изображения, обновляются."
Если это так, то единственная возможная причина заключается в том, что команда UPDATE передает те же данные, что и alredy.
КСТАТИ:
Почему вы используете $_GET в предложении WHERE?
Это требует, чтобы вы вызвали скрипт с "?id=value", и он изменит этот набор записей с вероятностью изменения идентификатора, когда $_POST['id'] отличается.
Member 13751016
это и есть database.php файл
<?php
$имя_сервера='localhost';
$username='root';
$пароль='';
$dbname = "labrptdb";
$Конн=mysqli_connect($имя_сервера,$имя пользователя,$пароль"$имя_бд");
если(!$conn){
die('не удалось подключить Мой Sql:' .mysql_error());
}
?>
Member 13751016
и база данных создание таблица
Создать таблицу, если она не существует " отчет` (
`id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` varchar(250) NOT NULL,
`контактно` варчар(30) НЕ НУЛЕВОЙ,
`address` varchar(250) DEFAULT NULL,
`labno` int(9) DEFAULT NULL,
`age` int(9) DEFAULT NULL,
`gender` varchar(30) DEFAULT NULL,
`refdoctor` varchar(250) DEFAULT NULL,
`image` longblob,
`датавремя` типа timestamp null по умолчанию значение null,
Первичный ключ (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=5 кодировка по умолчанию=latin1;