3

请帮帮我。我有一个表单,它从客户端表单的上传字段中收集图片,并将图片打印在用户页面上。这在本地主机上工作得很好,它看起来像下面的 Ilamini Ayebatonye 非常感谢

NAME:     Name Surname

EMAIL ADDRESS:     email@provider.com

HOME ADDRESS:     123 Random Street, FakeTown

PHONE NUMBER:     012345678911

QUALIFICATION:     I.C.T Certificate

SECTOR:     CCNA

INTEREST:     please put in your interest

请打印此单,附上您的简历和证书复印件,并在研讨会当天随身携带。

但问题是当我上传网站并尝试注册图片时不会再次显示,

我看到的是下面

ECO9JA-CREATING JOBS IN ICT
          Backgrounds_15670_zps11bc080d.png    

NAME:     Name Surname

EMAIL ADDRESS:     email@provider.com

HOME ADDRESS:     123 Random Street, FakeTown

PHONE NUMBER:     012345678911

QUALIFICATION:     I.C.T Certificate

SECTOR:     CCNA

INTEREST:     please put in your interest

请打印此单,附上您的简历和证书复印件,并在研讨会当天随身携带。

感谢您注册

图像变量的脚本如下,表单上传和打印 fxn 如下:

多变的

<?php
$file= "file.csv";
$name = $_POST['name'];
$email = $_POST['email'];
$address = $_POST['address'];
$phone = $_POST['phone'];
$qualification = $_POST['qualification'];
$sector = $_POST['sector'];
$interest = $_POST['interest'];
$image= $_POST['image'];
<input type="hidden" name="MAX_FILE_SIZE" value="500">
<P>
<br>
<input type="file" name="image" value="upload" >

在用户页上打印此代码

<?php print"<img src=\"$image\" width=\"100px\" height=\"100px\"\/>";?>
4

6 回答 6

5

使用它只需复制并粘贴到您的项目中。

$contents=  file_get_contents('http://localhost/elgg_social/data/36/641483447202.jpg');

$expires = 14 * 60*60*24;

header("Content-Type: image/jpeg");
header("Content-Length: " . strlen($contents));
header("Cache-Control: public", true);
header("Pragma: public", true);
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $expires) . ' GMT', true);

echo $contents;
exit;
于 2017-01-04T11:06:46.983 回答
0

当您发布图像文件的路径时,问题必须存在。我已经用图像“test.png”测试了以下 php,它可以工作。

<?php 
$image="test.png";
print"<img src=\"$image\" width=\"100px\" height=\"100px\"\/>";
?>
于 2013-09-03T12:58:03.833 回答
0

看起来您的图像属性有问题,请删除“px”。应该是这样的

<?php print"<img src=\"$image\" width=\"100\" height=\"100\"\/>";?>
于 2013-09-03T12:58:24.237 回答
0

基于上传您的照片

<input type="file" name="image" value="upload" >

它自己获取文件路径。您可以将上传的文件移动到您的文件夹,相应的文件路径是保存在 db 中。

如果您上传的路径看起来像

C:\Users\Public\Pictures\Sample Pictures\Desert.jpg

如果您发布为$image = $post['image']

回显它返回错误或 null 的路径

<img src="C:\Users\Public\Pictures\Sample Pictures\Desert.jpg"/>

如果有时可行,但大多数时间都行不通,因为我觉得这种类型的问题。

谢谢。

于 2013-09-03T13:02:21.503 回答
0

根据我对您的 php 脚本的评论,您应该有一个类似于此的代码:

$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br>";
    echo "Type: " . $_FILES["file"]["type"] . "<br>";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }

逐行仔细观察。您可以在以下位置设置图片上传的最大文件大小:$_FILES["file"]["size"] < 20000

此外,这将代码将确保用户正在上传图像而不是其他东西。

最后根据你的需要和这个脚本上传成功后

 move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; 

然后你可以这样做来显示图像:

echo '<img src="upload/'.$_FILES["file"]["name"].'">';
于 2013-09-03T13:07:12.527 回答
0
  header('Content-Type: image/jpeg');
  print $response;
于 2016-11-21T08:07:01.540 回答