我尝试将用户输入插入我的数据库。我想将标题和描述添加到广告表中,将图像添加到图片表中。 这是我到目前为止所提出的,但它根本不起作用。这是一个posthandler.php页面,当用户按下提交时将调用该页面。顶部的变量从html页面分配输入名称。我现在在图片数据库中有路径名和blob,看看哪个选项效果最好。
请帮助
<?php
session_start();
echo "You are signed in as ". $_SESSION['username'];
include 'mysql.php';
$title='title';
$des='des';
$image='image';
if(isset($_POST['submit'])) {
$error = "";
if (!empty($_POST['title'])) {
$title= $_POST['title'];
} else {
$error = "Please enter a title for your Ad. <br />";
}
if (!empty($_POST['des'])) {
$des = $_POST['des'];
} else {
$error = "Please describe your item <br />";
}
if (!empty($_POST['image'])) {
$image=addslashes($_FILES['image']['tmp_name']);
$name=addslashes($_FILES['image']['name']);
$image=file_get_contents($image);
$image=base64_encode($image);
$filepath = "images/".$filename;
move_uploaded_file($filetmp,$filepath);
$image = $_POST['image'];
} else {
}
if (empty($error)) {
$conn= mysql_connect("localhost","km","data");
if (!$conn){
die ("Failed to connect to MySQL: " . mysql_error());
mysql_select_db("mdb_km283",$conn);
$sql = "INSERT INTO Advert (title, description) VALUES ('$_POST[title]','$_POST[des]')";
$sql2 = "INSERT INTO Pictures(image, Path) VALUES ('$_POST[image]' $filepath)";
mysql_query( $sql,$sql2, $conn );
//mysql_query( $sql2,$conn );
mysql_close($conn);
echo 'Upload successfull';
}
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html version="-//W3C//DTD XHTML 1.1//EN"
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/1999/xhtml
http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd"
>
<head>
<link rel="stylesheet" type=text/css" href="stylesheet.css">
<a href="signout.php">Logout</a>
<h1>ERROR - Please go back and fix the below:</h1>
</head>
<body>
<?php
if (!empty($error)) {
echo'<p class="error"><strong>Upload failed. Please go back and fix the below <br/> The following error(s) returned:</strong><br/>' . $error . '</p>';
} else {
echo '<meta http-equiv="refresh" content="0; URL=user.php">';
}
?>
</body>
</html>
答案 0 :(得分:2)
$filename = $_FILES['image']['name'];
$filepath = 'image/' . $filename;
$filetmp = $_FILES['image']['temp_name'];
$result = move_uploaded_file($filetmp,$filepath);
if(!$result)
echo "Photo field was blank";
else
echo "uploaded";
然后在这里写你的mysql代码....