Problem przedstawia się następująco. Mam panel administratora, administrator może dodawać informacje o nowych produktach do bazy danych wpisując dane w inputy i klikając w button.
Problem polega na tym, że produkty dodawane są poprawnie, normalnie pojawiają się w bazie danych, widzę to. Nie mam zielonego pojęcia dlaczego ale ajax uważa, że zapytanie zakończyło się błędem. Może najpierw kod.
Skrypt js:
$(document).ready(function()
{
$("#add-new-product-button").click(function()
{
var ProductName = $("#product-name").val();
var ProductDescription = $("#product-description").val();
var NowAvailable = $("#now-available").val();
var NettoPrize = $("#netto-prize").val();
var BruttoPrize = $("#brutto-prize").val();
var Category = $("#selected-category").val();
$.ajax({
url : "/skrypty-php/dodajprodukt.php",
type : "POST",
dataType : 'html',
data : {
product_name: ProductName,
product_description: ProductDescription,
now_available: NowAvailable,
netto_prize: NettoPrize,
brutto_prize: BruttoPrize,
category: Category
},
success: function(status)
{
alert(status)
}});
});
});
I kod pliku php dodającego informacje do bazy danych
$ProductName = trim($_POST['product_name']);
$ProductDescription = trim($_POST['product_description']);
$NowAvailable = trim($_POST['now_available']);
$NettoPrize = trim($_POST['netto_prize']);
$BruttoPrize = trim($_POST['brutto_prize']);
$Category = trim($_POST['category']);
$DataBase = mysqli_connect(); /*no tu usunąłem dane z oczywistych przyczyn */
if(mysqli_connect_errno())
{
echo "connection_error";
exit;
}
$DataBase->Query("SET CHARSET utf8");
$DataBase->Query("SET NAMES `utf8` COLLATE `utf8_polish_ci`");
$Result = $DataBase->Query("INSERT INTO produkty (id, nazwa, opis, netto, brutto, ile_dostepnych, kategoria) VALUES (NULL, '$ProductName', '$ProductDescription', $NettoPrize, $BruttoPrize, $NowAvailable, '$Category')");
echo "sukces";
Funkcja która ma się odpalić w przypadku sukcesu nie odpala się. Alert nie zostaje wyświetlony. Co mnie dziwi bo dane pojawiają się w bazie więc na chłopski rozum wszystko działa. Dlaczego maszyna myśli, że operacja zakończyła się niepowodzeniem?