我正在尝试制作一个简单的上传脚本,它有一个图像上传部分和一个文件上传部分我想尝试将图像和文件以及其他一些变量存储在同一个数据库中,但我无法完成这个想知道是否有人可以帮助解决我的困境。
指数:
<body>
<form method="post" action="insert_file.php">
<table>
<tr><td>Title:</td><td><input type="text" name="title" /></td></tr>
<tr><td>Author:</td><td><input type="text" name="author"/></td></tr>
<tr><td>Description:</td><td><textarea cols="30" rows="10" name="description"></textarea></td></tr>
<tr><td>Category:</td>
<td>
<select name="category">
<option value="poker">Poker</option>
<option value="sportsbetting">Sports Betting</option>
<option value="financialbetting">Financial Betting</option>
<option value="casino">Casino</option>
<option value="bingo">Bingo</option>
<option value="socialgaming">Social Gaming</option>
<option value="affiliatemarketing">Affiliate Marketing</option>
</select>
</td>
</tr>
<tr><td>Publication Date:</td><td><input type="text" name="pub_date" id="datepicker"/></td></tr>
<tr><td>Tags:</td><td><input type="text" name="tags"/></td></tr>
<tr><td>Price:</td><td><input type="text" name="price"/></td></tr>
<tr><td>Image:</td><td><input type="file" name="image"/></td></tr>
<tr><td>Website:</td><td><input type="text" name="website"/></td></tr>
<tr><td>Contact Email:</td><td><input type="text" name="email"/></td></tr>
<tr><td>File:</td><td><input type="file" name="uploaded_file"/></td></tr>
<tr><td></td><td><input type="submit" value="Submit"/></td></tr>
</table>
</form>
</body>
插入:
<?php
// Check if a file has been uploaded
if(isset($_FILES['uploaded_file'])) {
// Make sure the file was sent without errors
if($_FILES['uploaded_file']['error'] == 0) {
// Connect to the database
include('../config.inc');
// Connect to the database
$dbLink = $con;
// Gather all required data
$username = $_SESSION['username'];
$title = $_POST['title'];
$author = $_POST['author'];
$description = $_POST['description'];
$category = $_POST['category'];
$pub_date = $_POST['pub_date'];
$tags = $_POST['tags'];
$price = $_POST['price'];
$website = $_POST['website'];
$email = $_POST['email'];
$name = $title;
$mime = $dbLink->real_escape_string($_FILES['uploaded_file']['type']);
$data = $dbLink->real_escape_string(file_get_contents($_FILES ['uploaded_file']['tmp_name']));
$size = intval($_FILES['uploaded_file']['size']);
// Create the SQL query
$query = "
INSERT INTO `file2` (
`username`,
`title`,
`author`,
`description`,
`category`,
`pub_date` ,
`tags`,
`price`,
`website`,
`email`,
`name`,
`mime`,
`size`,
`data`,
`created`
)
VALUES (
'{$username}',
'{$title}',
'{$author}',
'{$description}',
'{$category}',
'{$pub_date}',
'{$tags}',
'{$price}',
'{$website}',
'{$email}',
'{$name}',
'{$mime}',
'{$size}',
'{$data}',
NOW()
)";
// Execute the query
$result = $dbLink->query($query);
// Check if it was successfull
if($result) {
echo '<center>Success! Your file was successfully added!';
}
else {
echo '<center>Error! Failed to insert the file'
. "<pre>{$dbLink->error}</pre>";
}
}
else {
echo 'An error accured while the file was being uploaded. '
. 'Error code: '. intval($_FILES['uploaded_file']['error']);
}
// Close the mysql connection
$dbLink->close();
}
else {
echo 'Error! A file was not sent!';
}
// Echo a link back to the main page
echo '<center><font face=arial>';
echo 'You file has been uploaded successfully, please allow upto 24 Hours for your report to be approved by administration. ';
echo '<p>Click <a href="index.php">here</a> to go back</p>';
?>
数据库 - http://postimg.org/image/n0loned2v/
任何解决此问题的帮助将不胜感激:)