PHP로 작성된 다운로드 스크립트가 있습니다. 내보기 파일 스크립트는 ID에 연결 한 다음 ID와 일치하는 모든 데이터를 선택합니다.다운로드 PHP는 항상 손상되었습니다
그런 다음 데이터를 사용하여 사진을 다운로드합니다. 내 사진이 폴더에 있는지가 중요합니까? 폴더로 이동 한 후 디렉토리가 MYSQL 데이터베이스로 업로드됩니다.
지금 코드는 일부 파일을 완벽하게 다운로드 한 다음 대다수를 손상시킬 수 있습니다. 이유가 뭐야? 당신이 데이터를 에코 후 PHP가 어떤 정보를 전송하기 때문에이 문제가 발생
Mysql table info...
$cool = $_GET['id'];
$sql = "SELECT id, type, name, size FROM upload WHERE id='$cool'";
$result = mysql_query($sql, $db);
$data = mysql_result($result, 0, "id");
$name = mysql_result($result, 0, "name");
$size = mysql_result($result, 0, "size");
$type = mysql_result($result, 0, "type");
header("Content-type: $type");
header("Content-length: $size");
header("Content-Disposition: attachment; filename=$name");
header("Content-Description: PHP Generated Data");
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
ob_clean();
flush();
readfile($name);
exit();
그 불쾌한 @을 제거하십시오 –
[** 새 코드 **에서 mysql_ * 함수를 사용하지 마십시오. http://bit.ly/phpmsql. 그들은 더 이상 유지 관리되지 않으며 [비추천 프로세스] (http://j.mp/Rj2iVR)가 시작되었습니다. [** 빨간색 상자 **] (http://j.mp/Te9zIL)를 참조하십시오. 대신 [* prepared statements *] (http://j.mp/T9hLWi)에 대해 알아보고 [PDO] (http://php.net/pdo) 또는 [MySQLi] (http://php.net/)를 사용하십시오. mysqli) - [이 기사] (http://j.mp/QEx8IB)는 어떤 결정을 내리는 데 도움이 될 것입니다. PDO를 선택하면 [여기는 좋은 튜토리얼입니다] (http://j.mp/PoWehJ). –
mysql을 가지고 있다면 최소한 mysql_result를 사용하지 마십시오. '$ row = mysql_fetch_assoc ($ result);가 잘못되었습니다. echo $ row [ 'data']'? –