Загрузка картинки в базу данных через php
В базе данных в столбце img выводиться C:fakepathpepe.png, как это исправить?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
<div class="adm_order">
<div class="goods-out"></div>
<h2>Товар</h2>
<p>Имя: <input type="text" name="" id="gname"></p>
<p>Стоимость: <input type="text" name="" id="gcost"></p>
<p>Описание <textarea id="gdescr"></textarea></p>
<p>Изображение: <input type="file" name="" id="gimg" multiple accept="image/*,image/jpeg"></p>
<p>Порядок: <input type="text" name="" id="gorder"></p>
<input type="hidden" name="" id="gid">
<button class="add-to-db">Обновить</button>
</div>
<script src="js/jquery-3.5.1.min.js"></script>
<script src="js/admin.js"></script>
</body>
</html>
php код
<?php
$servername = "localhost";
$username = "root";
$password = "root-";
$dbname = "order_pizza";
function connect(){
$conn = mysqli_connect("localhost", "root", "root", "order_pizza");
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
mysqli_set_charset($conn, "utf8");
return $conn;
}
function init(){
//вывожу список товаров
$conn = connect();
$sql = "SELECT * FROM goods";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
$out = array();
while($row = mysqli_fetch_assoc($result)) {
$out[$row["id"]] = $row;
}
echo json_encode($out);
} else {
echo "0";
}
mysqli_close($conn);
}
function selectOneGoods()
{
$conn = connect();
$id = $_POST['gid'];
$sql = "SELECT * FROM goods WHERE id = '$id'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
$out = array();
$row = mysqli_fetch_assoc($result);
echo json_encode($row);
} else {
echo "0";
}
mysqli_close($conn);
}
function updateGoods()
{
$conn = connect();
$id = $_POST['id'];
$name = $_POST['gname'];
$cost = $_POST['gcost'];
$descr = $_POST['gdescr'];
$ord = $_POST['gorder'];
$img = $_POST['gimg'];
$sql = "UPDATE goods SET name='$name', cost='$cost', description='$descr', ord='$ord', img='$img' WHERE id='$id' ";
if (mysqli_query($conn, $sql)) {
echo "1";
} else {
echo "Error updating record: " . mysqli_error($conn);
}
mysqli_close($conn);
writeJSON();
}
function newGoods()
{
$conn = connect();
$name = $_POST['gname'];
$cost = $_POST['gcost'];
$descr = $_POST['gdescr'];
$ord = $_POST['gorder'];
$img = $_POST['gimg'];
$sql = "INSERT INTO goods (name, cost, description, ord, img) VALUES ('$name', '$cost', '$descr', '$ord', '$img')";
if ($conn->query($sql) === TRUE) {
echo "1";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
mysqli_close($conn);
writeJSON();
}
function writeJSON()
{
$conn = connect();
$sql = "SELECT * FROM goods";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
$out = array();
while($row = mysqli_fetch_assoc($result)) {
$out[$row["id"]] = $row;
}
$a = file_put_contents('../goods.json', json_encode($out));
echo 'write+'.$a;
} else {
echo "0";
}
mysqli_close($conn);
}
function loadGoods()
{
$conn = connect();
$sql = "SELECT * FROM goods";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
$out = array();
while($row = mysqli_fetch_assoc($result)) {
$out[$row["id"]] = $row;
}
echo json_encode($out);
} else {
echo "0";
}
mysqli_close($conn);
}
Код js
function init() {
$.post(
"core.php",
{
"action" : "init"
},
showGoods
);
}
function showGoods(data) {
data = JSON.parse(data);
console.log(data);
var out='<select>';
out +='<option data-id="0">Новый товар</option>';
for (var id in data) {
out +=`<option data-id="${id}">${data[id].name}</option>`;
}
out +='</select>';
$('.goods-out').html(out);
$('.goods-out select').on('change', selectGoods);
}
function selectGoods() {
var id = $('.goods-out select option:selected').attr('data-id');
console.log(id);
$.post(
"core.php",{
"action" : "selectOneGoods",
"gid" : id
},
function (data){
data = JSON.parse(data);
$('#gname').val(data.name);
$('#gcost').val(data.cost);
$('#gdescr').val(data.description);
$('#gorder').val(data.ord);
$('#gimg').val(data.img);
$('#gid').val(data.id);
}
);
}
function saveToDb() {
var id = $('#gid').val();
if (id != "") {
$.post(
"core.php",
{
"action" : "updateGoods",
"id" : id,
"gname" : $('#gname').val(),
"gcost" : $('#gcost').val(),
"gdescr" : $('#gdescr').val(),
"gorder" : $('#gorder').val(),
"gimg" : $('#gimg').val()
},
function (data) {
if (data == 1) {
alert('Запись добавлена');
init();
} else {
console.log(data);
}
}
);
}else{
console.log('new');
$.post(
"core.php",
{
"action" : "newGoods",
"id" : 0,
"gname" : $('#gname').val(),
"gcost" : $('#gcost').val(),
"gdescr" : $('#gdescr').val(),
"gorder" : $('#gorder').val(),
"gimg" : $('#gimg').val()
},
function (data) {
if (data == 1) {
alert('Запись добавлена');
init();
} else {
console.log(data);
}
}
);
}
}
$(document).ready(function () {
init();
$('.add-to-db').on('click', saveToDb);
});
