Witam,
Próbuje już jakiś czas znaleźć problem. Chciałbym aby zdarzenie onclick powodowało zapis do bazy. Przy przycisku "submit" wszystko działa dobrze, natomiast przy zmianie na "button" i kierowaniu formularza najpierw do script.js (jquery) niestety już nie. Czy ktoś pomoże mi znaleźć błąd?
index.html:
<div class="left" id="formularz">
<h3>Dodaj nowy produkt</h3>
<p>Uzupełnij dane o produkcie i kliknij na przycisk "Dodaj".</p>
<form action="form.php" method="get">
<fieldset>
<label for="tytul">Tytuł</label>
<input type="text" id="tytul" size="35" class="field" name="tytul" />
<label for="cena">Cena</label>
<input type="text" id="cena" size="35" class="field" name="cena" />
<label for="kategoria">Kategoria</label>
<input type="text" id="kategoria" size="35" class="field" name="kategoria" />
<input type="button" value="Dodaj" class="button" id="dodaj" />
</fieldset>
</form>
</div>
from.php:
<?php
class Database
{
public function __construct()
{
try{
global $pdo;
$pdo = new PDO('mysql:host=localhost;dbname=ajax', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected";
} catch(PDOException $e) {
exit('Database error');
}
}
}
$user = new Database();
$tytul = $_GET['tytul'];
$cena = $_GET['cena'];
$kategoria = $_GET['kategoria'];
$query = $pdo->prepare("INSERT INTO kursy (tytul, cena, kategorie) VALUES (?, ?, ?)");
$query->execute(array($tytul, $cena, $kategoria));
?>
script.js:
$(document).ready(function(){
$("#dodaj").click(function(){
var tytul = escape($("#tytul").val());
var cena = escape($("#cena").val());
var kategoria = escape($("#kategoria").val());
var url = "form.php?tytul=" + tytul + "&cena=" + cena + "&kategoria=" + kategoria;
$.get(url);
});
});