【发布时间】:2016-11-08 19:58:50
【问题描述】:
我有一个名为images 的表。它有两列 id 和 image (varchar300)。我有这个代码 upload.php :
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$image = $_POST['image'];
require_once('dbConnect.php');
$sql ="SELECT id FROM images ORDER BY id ASC";
$res = mysqli_query($con,$sql);
$id = 0;
while($row = mysqli_fetch_array($res)){
$id = $row['id'];
}
$path = "uploads/$id.png";
$actualpath = "/home/kinanday/public_html/$path";
$sql = "INSERT INTO images (image) VALUES ('$actualpath')";
if(mysqli_query($con,$sql)){
file_put_contents($path,base64_decode($image));
echo "Successfully Uploaded";
}
mysqli_close($con);
}else{
echo "Error";
}
这是upload.html:
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="image" />
<button>Upload</button>
</form>
</body>
问题是:它保存到我的数据库中,但我在 Cpanel 的文件管理器中的图像是 0kb
我正在使用此代码集成到我的 android 应用程序中,该应用程序需要 varchar 类型的图像。所以在我的应用程序中没有显示任何图像,因为图像是 0KB。
任何人都可以提前修复我的 php.ini 文件。每个答案对我都非常有帮助。提前致谢。
【问题讨论】:
-
$image = $_POST['image'];=>$image = $_FILES['image'];魔法可能会发生。您还需要使用提交类型按钮。 -
@Fred-ii- 警告:base64_decode() 期望参数 1 为字符串,数组在第 26 行的 /home/kinanday/public_html/image_content/upload.php 中给出,但图像大小仍为 0Kb :(