如何上传图片?

时间:2011-07-04 06:29:21

标签: php

我想在php上传图片,这是我的代码

if (isset($_FILES['userfile']['name'])) {
  if ($_FILES['userfile']['error'] == UPLOAD_ERR_OK) {
    $from = $_FILES['userfile']['tmp_name'];
    $to = "/var/www/html/images/".$_FILES['userfile']['name'];
    $res = move_uploaded_file($from, $to);
    if($res)
    {
      print 'upload success';
    }  
    else
    {
      print 'fail';
    }               

这里输出失败请告诉我正确的过程

提前致谢

3 个答案:

答案 0 :(得分:0)

for images/你检查过Linux上的权限它将是755或777。

注意:你不需要绝对的路径,你甚至可以这样做。

$to = "images/".$_FILES['userfile']['name'];

答案 1 :(得分:0)

代码看起来没问题,因此脚本无法写入/var/www/html/images/目录上的非高效权限,或者该目录根本不存在。 请检查目录的存在,然后尝试将另一个文件(而不是通过上载)写入该目录。相应地检查目录权限。

答案 2 :(得分:0)

请试试这个,它已经过测试并且工作正常。

<?php
mysql_connect("localhost","root","");
mysql_select_db("kerala");
error_reporting(0);
?>
<?php
if($_POST[sub1]=="Upload")
{
@mkdir("image");
$link="image/".time()."-".$_FILES[fil][name];
copy($_FILES[fil][tmp_name],$link); 
$sql2="insert into `details`(`photo`) values('$link')";
$query2=mysql_query($sql2);
header("location:photo.php");
}
$sql3="select * from `details`";
$query3=mysql_query($sql3);
while ($row=mysql_fetch_array($query3))
{
//echo "<a href=`$row[photo]`><img src='$row[photo]' height='100' width='100'>$row[photo]</a>";
echo "<img src='$row[photo]' height='100' width='100'>";
}
?>
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="fil">
<input type="submit" name="sub1" value="Upload">
</form>