在 php 中,我正在做一个简单的 php 图像上传并在另一个页面中显示该图像。为此,我的代码是这样的 对于数据库,我的查询是这样的
CREATE TABLE IF NOT EXISTS 'article` (
`article_id` int(10) unsigned NOT NULL auto_increment,
`artile_name` varchar(255) NOT NULL,
`article_image` varchar(255) NOT NULL,
PRIMARY KEY (`article_id`))
ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8';
现在我的表格是这样的
<form id="formID" method="post" action="'.$_SERVER['REQUEST_URI'].'" enctype="multipart/form-data">
<div>
<label for="article_name">Article Name</label>
<input class="text-input" type="text" name="article_name" id="article_name" value="'.$value_test['article_name'].'" />
<br/>
</div>
<div>
<label for="article_image">Upload Article Image</label>
<input type="file" name="article_image" id="article_image" value="'.$value_test['article_image'].'" />
</div>
<div>
<input type="submit" name="submit" value="Submit" class="button" />
</div>
</form>
我用于插入数据库值的 php 代码是这样的
mysql_connect(_DB_SERVER_, _DB_USER_,_DB_PASSWD_) or die( mysql_error() );
mysql_select_db(_DB_NAME_) or die( mysql_error() );
if ( isset( $_POST['submit'] ) ) {
"INSERT INTO `article`(`article_id`, `article_name`, `article_image`) VALUES ("","'.$article_name.'","'.$article_image.'")";
if ( move_uploaded_file( $_FILES['file']['tmp_name'], $tmpName.$image_name ) ) {
echo "Data has been inserted into database";
} else {
echo "error in inserting data";
}
这里的值很容易插入到数据库中,并且图像也很容易上传。
我用于从表中获取数据的 php 代码(在另一个页面中)
<?php
include '../config/config.inc.php';
mysql_connect(_DB_SERVER_,_DB_USER_,_DB_PASSWD_) or die(mysql_error());
mysql_select_db(_DB_NAME_) or die(mysql_error());
$result = mysql_query("SELECT * FROM article WHERE `article_name`='".$_GET['loc']."'");
while( $row = mysql_fetch_array( $result ) ) {
echo '<div>';
echo '<img class="article-image" src="article/'.$row['article_image'].'" width="100px" height="100px" >';
echo '</div>';
$article_name = $row['artcle_name'].'<br />';
在这里,我也很容易获得值(图像和文章名称)。当我上传一张图片并定义了一篇文章名称时,它会显示在获取页面中。但是,当一张图片尚未上传时,它不会显示任何图片。我希望如果尚未上传一张图片,则应显示一张默认图片,如果已上传图片,则应显示已上传的图片。那么有人可以告诉我如何解决这个问题吗?