mysql에서 테이블 형식 데이터를로드합니다. 여태까지는 그런대로 잘됐다. 이제 Update
데이터베이스에서 단일 행을 업데이트 할 수있는 새 페이지를 여는 버튼을 만들었습니다 . 문제는 업데이트 양식을 열 때 모든 필드가 비어 있고 일부 행만 업데이트하고 다른 필드를 비워 두려는 경우 데이터베이스에서도 공백으로 업데이트된다는 것입니다. 업데이트 양식에 정보를 어떻게 채울 수 있습니까? 이것은 내가 현재 데이터베이스의 일부 레코드를 업데이트하는 데 사용하는 것입니다.
파일 edit.php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$id = null;
if ( !empty($_GET['id']))
{
$id = $_REQUEST['id'];
}
if ( null==$id )
{
echo "null==$id";
}
// keep track post values
$name = $_POST['name'];
$image = $_POST['image'];
$image_big = $_POST['image_big'];
$description = $_POST['description'];
// update data
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "UPDATE food set name = ?, image = ?, image_big = ?, description = ? WHERE id = ?";
$q = $pdo->prepare($sql);
$q->execute(array($name, $image, $image_big, $description, $id));
Database::disconnect();
echo "<code>Updated!</code>";
// html form
예를 들어 name
비워 두고 Update
데이터베이스의 버튼을 누를 때 다른 모든 필드에 새 데이터를 넣으면 name
비어 있습니다.
html
양식의 일부로 업데이트 됨
<!-- Text input-->
<div class="form-group">
<label for="meal_name">Име</label>
<input id="name" name="name" placeholder="Name" class="form-control" type="text">
</div>
다른 필드는 동일합니다 ..
이 경우 <input>
필드가 비어 있는지 확인하고 서명 하는 필드 에 다음과 같은 내용을 넣어보세요 . ( 테스트 안함 )
value="<?php echo !empty($name)?$name:'';?>"
따라서 양식 필드는
<!-- Text input-->
<div class="form-group">
<label for="name">Name</label>
<input value="<?php echo !empty($name)?$name:'';?>" id="name" name="name" placeholder="Name" class="form-control" type="text">
</div>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다