我问了类似的问题,但是没有得到任何可以帮助我的回复,我想做的就是 1.将文件上传到服务器 2.记住文件的名称,如果它是'hope.jpg'文件并上传到名为'uploads'的文件夹,我需要稍后像'uploads / hope.jpg'。
我试图将其作为变量传递,因为它无法显示此信息:
上传文件时出错,请重试! 警告:fopen(uploads /)[function.fopen]:无法打开流:第112行的D:\ www \ 2010-msc \ businesscards \ QRCodeAPI.class.php中的权限被拒绝
警告:curl_setopt():提供的参数不是第121行的D:\ www \ 2010-msc \ businesscards \ QRCodeAPI.class.php中的有效文件句柄资源
警告:fclose():提供的参数不是第130行的D:\ www \ 2010-msc \ businesscards \ QRCodeAPI.class.php中的有效流资源 解码错误:
这是我使用的html表单:
<form enctype="multipart/form-data" action="index.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />
</form>
<form action="<?php echo $_SERVER["SCRIPT_NAME"]; ?>" method="POST">
<label for="action"> Method:</label>
<select id="action" name="action">
<option value="generate" <?php echo $action == "generate" ? 'selected="selected"' : ""; ?>>generate</option>
<option value="encode" <?php echo $action == "encode" ? 'selected="selected"' : ""; ?>>encode</option>
<option value="decode" <?php echo $action == "decode" ? 'selected="selected"' : ""; ?>>decode</option>
</select>
</br>
<label for="message">Message:</label>
<input type="text" id="message" name="message" value="<?php echo $message; ?>" />
<input type="submit" value="Submit" />
</form>
然后我上传了一个这样的文件:
// Where the file is going to be placed
$target_path = "uploads/";
/* Add the original filename to our target path.
Result is "uploads/filename.extension" */
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
$a = basename( $_FILES['uploadedfile']['name']);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path))
{
echo "uploads/". $a;
} else{
echo "There was an error uploading the file, please try again!";
}
文件上传后我尝试用
解码$json = $api->decode ("uploads/". $a);
$start='{"content":"';
$pos_start = strpos($json, $start);
$end='"}';
$pos_end = strpos($json, $end);
if ($pos_start === false || $pos_end === false)
{
echo "error in decode";
exit();
}
$wiadomosc = substr($json,12,$pos_end - 12);
echo $wiadomosc;
exit();
break;
不幸的是,行$json = $api->decode ("uploads/". $a);
只会带来一些错误,但是如果您手动编写服务器上的文件名$json = $api->decode ("uploads/hope.jpg");
,那么一切正常。你可以给我任何关于如何获取文件名称的建议,好像它是手动输入的,因为当我放置变量时显然它不起作用!!感谢所有回复
答案 0 :(得分:0)
名字应该是tmp_name吗? .......