This is how I upload an image for a user, it works fine:
if (isset($_POST["button"])) {
$naziv = trim($_POST["naziv"]);
$kategorija = trim($_POST["kategorija"]);
$opis = trim($_POST["opis"]);
$ime = time()."_".$_FILES["slika"]["name"];
$target = "../slike/".$ime;
move_uploaded_file($_FILES["slika"]["tmp_name"], $target);
Zadatak::dodaj($naziv, $korisnik, $kategorija, $opis, $ime, $konekcija));
}
This is how I display the image, it works fine as well:
<div class="slikacontainer">
<div class="slikawrap">
<img src="../slike/<?=$podaci->slika?>"/>
</div>
</div>
But, when I try to use this code to console.log the image, it logs only the beginning before the value I sent it ("../slike/"):
<?php
require "../konekcija/konekcija.php";
require "../modeli/zadatak.php";
$zadatak = trim($_GET["zadatak"]);
$podaci = Zadatak::vratiPodatke($zadatak, $konekcija);
?>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
function popuniKategorije() {
$.ajax({
url: '../funkcije/popuniKategorije.php',
success: function (data) {
$("#kategorija").html(data);
postaviKategoriju();
console.log("../slike/<?=$podaci->slika?>");
}
});
}
popuniKategorije();
function obrisi() {
let zadatak = <?=$zadatak?>;
let slika = <?=$podaci->slika?>;
$.ajax({
url: '../funkcije/obrisiSliku.php',
data: {
zadatak: zadatak,
slika: slika
},
success: function (data) {
console.log($zadatak);
}
});
}
</script>
The vratiPodatke
function looks like this:
public static function vratiPodatke($zadatakID, mysqli $konekcija) {
$upit = "SELECT * FROM zadatak z JOIN kategorija k ON k.kategorijaID = z.kategorija WHERE zadatakID = " . $zadatakID;
$resultset = $konekcija->query($upit);
$zadatak = $resultset->fetch_object();
return $zadatak;
}
What is the problem here? I need that value so I could use it in a different function and I think this is where the problem lies because I'm essentially sending the incorrect one.