mysql db 업데이트 중. 이 페이지는 페이지 게시물을 통해 ID를 얻습니다. 텍스트 필드 "링크"를 변경하고 제출할 수 있습니다. 제출 후 ID에 mysql 업데이트가 있고 업데이트 후에 페이지가 dbedit.php로 리디렉션되어야합니다. 하지만 난이 얻을 :PHP MYSQL 업데이트/리디렉션
헤더 정보를 수정할 수 없습니다 - 이미 나는 아무 생각도 이유가 없다
라인 (13)에 전송 헤더를? "header()"전에 사용자에게 출력을 찾을 수 없습니다. 내 실수는 어디 갔어?
<html>
<body>
<?php
include('config.php');
if(isset($_GET['id']))
{
$id=$_GET['id'];
if(isset($_POST['submit']))
{
$Links=$_POST['Links'];
$query3=mysqli_query($link, "update posts set Links='$Links' where id='$id'");
if($query3){
header('location:dbedit.php');
}
}
$query1=mysqli_query($link, "select * from posts where ID='$id'");
$query2=mysqli_fetch_array($query1);
?>
<form method="post" action="">
Name:<input type="text" name="Links" value="<?php echo $query2['Links'];?>"/>
<input type="submit" name="submit" value="update" />
</form>
<?php
mysqli_close($link);
};
?>
</body>
</html>
내가 dbedit.php 내가이 쿼리가 실패 할 경우에 언급 얻을 페이지입니다 생각하는 건가요? 잠재적 인 보안 위험, 특히 $ _GET 변수를 이스케이프 처리하지 않은 것처럼 보입니다. – Xorifelse
dbedit.php가 쿼리 실패 페이지가 아닙니다. 그것은 "업데이트가 완료되었습니다"페이지입니다. 보안 위험은 아무런 문제가 없어야합니다. 로컬 호스트 실행 도구 일뿐입니다. – swapfile