SO friends... i had a fight with this code.. please help :(
<? ob_start(); ?>
<?php
// Make sure an ID was passed
if(isset($_GET['id'])) {
// Get the ID
$id = intval($_GET['id']);
// Make sure the ID is in fact a valid ID
if($id <= 0) {
die('The ID is invalid!');
}
else {
// Connect to the database
$dbLink = new mysqli('xxxxx', 'xxxx', 'xxxxx', 'xxxxx');
if(mysqli_connect_errno()) {
die("MySQL connection failed: ". mysqli_connect_error());
}
// Fetch the file information
$query = "
SELECT `mime`, `name`, `size`, `data`
FROM `file`
WHERE `id` = {$id}";
$result = $dbLink->query($query);
if($result) {
// Make sure the result is valid
if($result->num_rows == 1) {
// Get the row
$row = mysqli_fetch_assoc($result);
// Print headers
header("Location: ". $row['mime']);
header("Location: ". $row['size']);
header("Location: attachment; filename= ". $row['name']);
// Print data
echo $row['data'];
}
else {
echo 'Error! No image exists with that ID.';
}
// Free the mysqli resources
@mysqli_free_result($result);
}
else {
echo "Error! Query failed: <pre>{$dbLink->error}</pre>";
}
@mysqli_close($dbLink);
}
}
else {
echo 'Error! No ID was passed.';
}
?>
<? ob_flush(); ?>
And the error..
Warning: Cannot modify header information - headers already sent by (output started at /home/topname/public_html/d/get_file.php:3) in /home/topname/public_html/d/get_file.php on line 34
Warning: Cannot modify header information - headers already sent by (output started at /home/topname/public_html/d/get_file.php:3) in /home/topname/public_html/d/get_file.php on line 35
Warning: Cannot modify header information - headers already sent by (output started at /home/topname/public_html/d/get_file.php:3) in /home/topname/public_html/d/get_file.php on line 36
What can i do?