图像路径在mysql中上传和显示图像

时间:2017-03-30 10:43:37

标签: php mysql image

我需要将图像上传到数据库,路径应该保存在表格中。我使用以下代码上传图像并将路径存储在数据库表中。我创建了一个目录" images"用于存储用户上传的图像。

if(isset($_POST['submit']))
{
  $errors= array();
  $file_name=$_FILES['photo']['name'];
  $file_size =$_FILES['photo']['size'];
  $file_tmp =$_FILES['photo']['tmp_name'];
  $file_type=$_FILES['photo']['type'];
  $file_ext=strtolower(end(explode('.',$_FILES['photo']['name'])));
  $expensions= array("jpeg","jpg","png");
  if(in_array($file_ext,$expensions)=== false){
  $errors[]="extension not allowed, please choose a JPEG or PNG file.";
  }
  if($file_size > 2097152){
  $errors[]='File size must be excately 2 MB';
  }
  if(empty($errors)==true){
  move_uploaded_file($file_tmp,"images/".$file_name);
  echo '<script language="javascript">';
  echo 'alert("Success")';
  echo '</script>';
  }
  else
  {
    echo '<script language="javascript">';
    echo 'alert("Failed")';
    echo '</script>';
    print_r($errors);
  }
  }
  $query = mysql_query("insert into e(photo) values ('$file_name')");
  echo '<script language="javascript">';
  echo 'alert("Ok")';
  echo '</script>';
 }

然后,应使用表中存储的路径从数据库中显示图像。我使用以下代码显示数据库中的图像。

$connection = mysql_connect("localhost", "root", "");
$db = mysql_select_db("s", $connection);
$sql = "SELECT * FROM e";
$result = mysql_query($sql);
while ($o = mysql_fetch_assoc($result))
{
    echo "<tbody>";
    echo "<tr>";
    echo "<td>".'<img src="$photo;"' ."</td>";
    echo "</tr>";
    echo "</tbody>";
}
?>

2 个答案:

答案 0 :(得分:2)

这里你犯了错误

echo "<td>".'<img src="$photo;"' ."</td>";

替换为(确保您正在填写img标签)

echo '<td><img src="your_images_folder_path/'.$o['photo'].'"></td>';

请停止使用自PHP5.6以来已被折旧的mysql_*

答案 1 :(得分:0)

$connection = mysql_connect("localhost", "root", "password", "s");
$sql = "SELECT * FROM e";
$result = mysql_query($sql);
while ($o = mysql_fetch_assoc($result))
{
    echo "<tbody>";
    echo "<tr>";
    echo "<td>".'<img src="path/'.$o['photo']."></td>";
    echo "</tr>";
    echo "</tbody>";
}
?>

其中photo是数据库中的列名。 此外,您只需在连接声明中传递数据库名称,而不是使用mysql_select_db