0

我正在尝试创建一个代码来获取上传的图像、存储它们并显示图像预览并确认图像已成功上传。

<?php
$name=$_FILES['myfile']['name'];
$tmp=$_FILES['myfile']['tmp_name'];
$error=$_FILES['myfile']['error'];
$path='myweb/';
if(move_uploaded_file($tmp,$path.$name)==1){echo 'success';}else{echo $error;};
echo ('<img src="$path.$name" height="100px" width="100px"/>');
<?php

问题是图像不显示。

我也试过

echo ('<img src="$path$name" height="100px" width="100px"/>');

但它仍然不起作用。

如何让图像显示?

4

5 回答 5

1
<img src="<?php echo $path,$name; ?>" height="100px" width="100px"/>

或者

echo '<img src="' . $path.$name . '" height="100px" width="100px"/>';
于 2013-02-04T11:29:06.687 回答
1

问题在于单引号和双引号。

echo '<img src="' . $path.$name . '" height="100px" width="100px"/>';

您使用了单引号,因此它没有使用变量名。

于 2013-02-04T11:27:45.720 回答
1

您必须在打印的字符串中包含变量,如下所示:

echo ('<img src="'.$path.$name.'" height="100px" width="100px"/>');

您可以在文档中阅读有关它的更多信息。

如果你不这样做,PHP 会认为你想打印文本$path.$name而不是变量内容。

于 2013-02-04T11:27:52.727 回答
0

使用双 "" 和单 '' 引号是有区别的。

双引号正在被解析,这意味着

$variable = 10;
echo "$variable";

将输出:

10

单引号不会被解析:

$variable = 10;
echo '$variable';

将输出:

$variable

您在 '' 中使用变量,这意味着它们不会被解析。

于 2013-02-04T11:30:42.267 回答
0

我像这样替换了上面代码中的第 13 行。

echo (" <img src=$path.$name height=100px width=100px/>");

它现在正在工作。似乎双引号是这里的问题。我会读m0re关于它的。非常感谢你们,你们都非常有帮助。:)

于 2013-02-04T12:08:27.177 回答