我正在创建一个包含个人资料图片的个人资料系统.如果用户没有上传图片,我想要一张默认图片.要查看适合用户的图片,我使用他们的user_id.但是如何设置默认图片?
我目前的代码是;
<image src="img/upload/groot/'. $user_id .'.jpg" height="120px" width="120px" /><br/><br />';
Run Code Online (Sandbox Code Playgroud) 我之前有过几个上传表单,但是,即使在几乎复制我之前的代码之后,这似乎也不起作用,我更喜欢在一个php脚本文件中完成所有操作,所以它都是在这个单个文件中生成的.
我的表格:
<form action="" method="post" enctype="multipart/form-data">
<ul>
<li>
<label for="file">File : </label>
<input type="file" id="file" name="file" required="required" />
</li>
<li>
<input type="submit" value="Upload" />
</li>
</ul>
</form>
Run Code Online (Sandbox Code Playgroud)
我的php上传:
if(!empty($_POST['file']))
{
echo "Found.";
$exts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$ext = 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($ext, $exts))
{
if($_FILES["file"]["error"] > 0)
{ …
Run Code Online (Sandbox Code Playgroud) 我环顾四周,一直在努力寻找如何上传多个图像(.jpg/.png/etc).对于我的任务,我希望上传5张图片到数据库记录.到目前为止,我很难在一个记录中上传5个.我已经在Ws3网站上使用过PHP,它运行成功,但这段代码只适用于一个图像.
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/png"))
&& ($_FILES["file"]["size"] < 2000000)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else
{
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . uniqid() . "_" . $_FILES["file"]["name"]);
}
}
}
else
{
$error = "Invalid …
Run Code Online (Sandbox Code Playgroud) 我正在使用expressjs作为中间件在节点服务器上创建一个简单的文件上传器.到目前为止,服务器端看起来像:
app.post('/upload', function(req, res) {
console.log(req.files);
//Handle the file
fs.readFile(req.files.imageUploader.path, function(err, data) {
var newPath = __dirname;
console.log(newPath);
console.log(data);
fs.writeFile(newPath, data, function(err) {
console.log(err);
res.send("AOK");
});
});
});
Run Code Online (Sandbox Code Playgroud)
现在,日志语句__dirname
是我的源目录,如预期的那样(C:\ Development\GitHub\ExpressFileUpload),但上传时发生错误:
{ [Error: EISDIR, open 'C:\Development\GitHub\ExpressFileUpload']
errno: 28,
code: 'EISDIR',
path: 'C:\\Development\\GitHub\\ExpressFileUpload' }
Run Code Online (Sandbox Code Playgroud)
我试着改变newPath
是/
和./
,但没有改变,不同的错误,但还是错误.它是什么做的双重\\
的path
错误?我错过了一些简单的东西吗?感谢您的帮助,如果需要更多信息,请与我们联系.
我的图片上传过程中出现了疑似问题,我会告诉你:
<form action="check.php" method="POST">
File: <input type="file" name="picture" value="" id="picture-field">
<span class="error" id="file-error"></span>
<br><br>
<input type="submit" name="submit" value="send">
</form>
Run Code Online (Sandbox Code Playgroud)
我的check.php:
require 'ImageChecker.php';
if (!$_FILES)
echo "exit because no FILES";
$imageChecker = new ImageChecker();
$imageError = "";
if(!$imageChecker->php_error($_FILES['picture']['error'])) {
$imageError = "php error ocurred!";
echo $imageError;
Run Code Online (Sandbox Code Playgroud)
ImageChecker.php类:
class ImageChecker {
// function for php-error-check
public function php_error ($php_error) {
if ($php_error === UPLOAD_ERR_OK) {
return TRUE;
} else {
return FALSE;
}
}
// more functions..
}
Run Code Online (Sandbox Code Playgroud)
每次,我上传一张图片,我得到:
exit because no …
Run Code Online (Sandbox Code Playgroud) 我在jsff页面中使用inputFile组件,用户可以在其中浏览文件系统,选择文件以将其存储在数据库中.
我ValueChangeListener
为这个组件创建了一个方法来处理这个文件并将其存储在db中.
问题是,一旦用户选择了文件,它就会在页面中显示一秒钟,并且它会消失并且ValueChangeListener
不会被调用.
注意:该AutoSubmit
属性设置true
为此组件.我正在使用带有ADF的JDeveloper 11g.
我有一个我的表格领域(上传个人照片).因此用户从pc中选择图像并提交表单.
控制器:
function do_upload()
{
$config['upload_path'] = './images/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '100000';
$config['max_width'] = '10240';
$config['max_height'] = '7680';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload())
{
$error = array('error' => $this->upload->display_errors());
$this->load->view('upload_form', $error);
}
else
{
$data = array('upload_data' => $this->upload->data());
print_r($this->upload->data());
$datafoto = $this->upload->data();
$nm_file = time().$datafoto['orig_name'];
$this->load->model('mkegiatan');
$this->mkegiatan->update_foto($nm_file);
copy('images/'.$datafoto['orig_name'], 'images/'.$nm_file);
}
}
Run Code Online (Sandbox Code Playgroud)
和contoller编辑这样的事件:
function edit_kegiatan()
{
$id_kegiatan = $this->uri->segment(4);
//set validation properties
$this->form_validation->set_rules('tanggal_kegiatan', 'Tanggal', 'required');
$this->form_validation->set_rules('nama_kegiatan', 'Judul Berita', 'required');
$this->form_validation->set_rules('content', 'Content', 'required');
//run validation
// jika dia …
Run Code Online (Sandbox Code Playgroud) 我正在使用AMD/RequireJS的.NET项目上使用Blueimp文件上传.我目前只上传图片,并希望在图片上传之前在页面上显示预览.这是图书馆的原生特色,似乎工作正常.
问题是当我将"previewMaxWidth"和"previewMaxHeight"选项设置为超过80像素(默认值)时,预览图像始终模糊/像素化.因此,将这两个选项设置为例如220像素会创建一个220像素的画布,但内部的图像会像素化一样,就像它从80像素放大一样.
我在这里找不到任何类似的问题,但是注意到如果你将"previewMaxWidth"和"previewMaxHeight"更改为我正在使用的相同220px,在实际的Blueimp演示页面中会出现相同的行为.
编辑:问题仅适用于JPG图像.PNG不会模糊/像素化.
点击这里观看视觉演示.以下是我的代码:
$(config.browseButton).fileupload({
url: "/myEndpointUrl.aspx",
acceptFileTypes: /(\.|\/)(jpe?g)$/i,
maxFileSize: 5000000,
previewMaxWidth: 220,
previewMaxHeight: 220,
previewCrop: true,
dataType: 'json',
autoUpload: false,
disableImageResize: /Android(?!.*Chrome)|Opera/.test(window.navigator.userAgent)
}).on('fileuploadadd', function(e, data) {
if (data.files && data.files[0]) {
// Successfully injects the Canvas preview in the DOM
config.elements.pictureHolder.html(data.files[0].preview);
} else {
console.log("No files have been selected");
}
}).on('fileuploadprocessalways', function(e, data) {
// ...
}).on('fileuploadprogressall', function(e, data) {
// ...
}).on('fileuploaddone', function(e, data) {
// ...
}).on('fileuploadfail', function(e, data) {
// ...
}); …
Run Code Online (Sandbox Code Playgroud) 我能够将文件大小小于1Mb的图像上传到服务器,如果我上传超过1Mb,将会出现OutOfMemory错误.我使用BitmapFactory解码文件但仍然无法上传大图像文件.
12-15 22:33:51.465: E/AndroidRuntime(11968): java.lang.OutOfMemoryError
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.graphics.BitmapFactory.nativeDecodeStream(Native Method)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:652)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:391)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:451)
12-15 22:33:51.465: E/AndroidRuntime(11968): at sp.com.NewProductActivity.onActivityResult(NewProductActivity.java:137)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.app.Activity.dispatchActivityResult(Activity.java:5390)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.app.ActivityThread.deliverResults(ActivityThread.java:3201)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3248)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.app.ActivityThread.access$1200(ActivityThread.java:140)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1285)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.os.Handler.dispatchMessage(Handler.java:99)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.os.Looper.loop(Looper.java:137)
12-15 22:33:51.465: E/AndroidRuntime(11968): at android.app.ActivityThread.main(ActivityThread.java:4921)
12-15 22:33:51.465: E/AndroidRuntime(11968): at java.lang.reflect.Method.invokeNative(Native Method)
12-15 22:33:51.465: E/AndroidRuntime(11968): …
Run Code Online (Sandbox Code Playgroud) 我正在使用RESTful API将文件上传到Alfresco Share.通过使用noderef我可以上传文件.有没有办法按文件夹名称上传文件?
在我们的应用程序中,我有名为Testing under testing的文件夹.我有一个名为test 1,test 2等的子文件夹.只要用户使用Alfresco REST API注册应用程序,就会在Alfresco中生成test1和test2.但是每次查找noderef和nodeid并不是一件好事.您能否提供任何可行的解决方案,并提供用于按路径上传和下载文件的示例代码.
upload ×10
php ×5
file ×2
forms ×2
image ×2
java ×2
jquery ×2
alfresco ×1
android ×1
blueimp ×1
codeigniter ×1
eclipse ×1
express ×1
html ×1
javascript ×1
jdeveloper ×1
node.js ×1
oracle-adf ×1
rest ×1