>我需要一些帮助才能将图像放在用户创建的"AD"上。我正在使用JSON,Android,PHP和MySql来做这件事。
add_ad.php
<?php
//load and connect to MySQL database stuff
require("config.inc.php");
if (!empty($_POST)) {
//initial query
$query = "INSERT INTO ads ( ad_title, ad_price, ad_category, ad_description, ad_user, ad_contact ) VALUES ( :title, :price, :category, :description, :email, :mobile ) ";
//Update query
$query_params = array(
':title' => $_POST['ad_title'],
':price' => $_POST['ad_price'],
':category' => $_POST['ad_category'],
':description' => $_POST['ad_description'],
':email' => $_POST['ad_user'],
':mobile' => $_POST['ad_contact']
);
//execute query
try {
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch (PDOException $ex) {
// For testing, you could use a die and message.
//die("Failed to run query: " . $ex->getMessage());
//or just use this use this one:
$response["success"] = 0;
$response["message"] = "Erro base de dados. Impossível adicionar o anúncio.";
die(json_encode($response));
}
$response["success"] = 1;
$response["message"] = "Anúncio criado com sucesso! Aguarde aprovação.";
echo json_encode($response);
} ?>
我不知道如何转换它以从 android 接收图像并将其保存在服务器/数据库中,也请告诉我数据库字段的类型。
这非常重要,之后我需要将图像从我的 android 发送到此.php并将其保存在该用户身上。
谢谢,请注意我是安卓新手,所以勇敢:)
我不确定 Android 如何将图像发送到这个 php 脚本,但通常(通过网络(是使用 $_FILES 服务器变量。您可以在此处阅读有关文件上传以及如何使用它的更多信息:http://www.w3schools.com/php/php_file_upload.asp。
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if (($_FILES["file"]["size"] < 20000) && in_array($extension, $allowedExts)) {
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
} else {
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"]);
// IMAGE UPLOAD SUCCESSFULL, UPDATE DATABASE ROW
}
}
} else {
echo "Invalid file";
}
将图像上载到服务器后,将文件名保存在数据库中。如果您的文件名不超过 255 个字符,则应在数据库中为此使用 VARCHAR(255( 字段。