Wywoływanie funkcji php w button onClick (ajax)

Wszystko związane ze skryptami JS, DHTML itd.
testy123test
Posty: 1
Rejestracja: 10 cze 2015, 23:00:50
Płeć: Niewybrana
User Agent: Firefox Windows

Wywoływanie funkcji php w button onClick (ajax)

Post autor: testy123test »

Próbuję pierwszy raz użyć AJAX. Chcę użyć jejdo wywołania funkcji php w buttonie onClick'iem i nie działa mi to. Używałem przeróżnych metod z różnych stron. Aktualnie próbuję zastosować główną odpowiedź z tego tematu:
http://stackoverflow.com/questions/2073 ... f-a-button
na swojej stronie. Zmiany w bazie działają, jak funkcja wywołująca zapytanie do bazy jest w pliku index.php, ale już ajax nie chwyta nawet alertu.
Linki do moich stron z kodem z stack'a:
http://robiesobietesty.cba.pl/index.php
http://robiesobietesty.cba.pl/ajax.php

Od razu podaje kod, który tam jest. Podaje cały bo nie wiem co nawala:

index.php:

Kod: Zaznacz cały

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>

<input type="submit" class="button" name="insert" value="insert" />
<input type="submit" class="button" name="select" value="select" />

<script>
$(document).ready(function(){
    $('.button').click(function(){
        var clickBtnValue = $(this).val();
        var ajaxurl = 'ajax.php',
        data =  {'action': clickBtnValue};
        $.post(ajaxurl, data, function (response) {
            // Response div goes here.
            //alert("action performed successfully");
        });
    });

});
</script>

<?php
$con = new mysqli('mysql.cba.pl', 'test12345testy', 'spierdalaj666', 'robiesobietesty_cba_pl');
    
function call($sql){ 
    global $con;
    return mysqli_query($con, $sql);
}
     
function row($sql){ 
    global $con;
    return @mysqli_fetch_assoc(mysqli_query($con, $sql));
}
row("UPDATE `test` SET `zmienna`= 3 WHERE 1");
?>

</body>
</html>
ajax.php:

Kod: Zaznacz cały

<?php
if (isset($_POST['action'])) {
    switch ($_POST['action']) {
        case 'insert':
            insert();
            break;
        case 'select':
            select();
            break;
    }
}
    
function select() {  
    row("UPDATE `test` SET `zmienna`= 1 WHERE 1");
    exit;
}

function insert() {
    row("UPDATE `test` SET `zmienna`= 2 WHERE 1");
    exit;
}
?>
Nie wiem czy ajax jest tutaj potrzebny, ale wszelka wiedza w internecie trafiała głównie na ten dział. Jeżeli da się to zrobić inaczej to nie ma to dla mnie żadnego znaczenia. Byle dało się wysyłać zapytania do bazy przyciskiem nie przeładowując strony.

EDIT: Poszperałem, poklikałem, pomęczyłem i mi się udało, także nie było tematu.
Wariks
Posty: 3
Rejestracja: 09 lip 2015, 18:04:56
Płeć: Niewybrana
User Agent: Firefox Windows 1280x1024

Re: Wywoływanie funkcji php w button onClick (ajax)

Post autor: Wariks »

YY ale co poszperałeś i co tam zmieniłeś ? Kod jak dla mnie i wszystkie funkcje wyglądają na pewno w miarę zdrowo. PEwnie źle coś skopiowałeś z tej stronki i chciałeś nas w ciula zrobić :P ? oczywiście taki żart..Ale szczerze powiedz co u siebie zmieniłeś?
jarzyn112
Posty: 17
Rejestracja: 18 paź 2014, 10:23:11
Płeć: Niewybrana
User Agent: Chrome Windows 1920x1080

Wywoływanie funkcji php w button onClick (ajax)

Post autor: jarzyn112 »

osobiście wolę stosować $.ajax niż $.post

Kod: Zaznacz cały

$.ajax({
	async: true,
	url: 'skrypt.php',
	type: 'POST', //lub GET
	dataType: 'json',
	data: { id: 1, nazwa: "imie i nazwisko" },
	success: function(e){
		// Do zrobienia gdy się "uda" ajax
	},
	error: function(e){
		// Do zrobienia przy błędzie
	},
	beforeSend: function(){
		// Ma się wykonać przed wysłaniem zapytania ajax
	}
});
idalonia
Posty: 2
Rejestracja: 25 wrz 2018, 13:06:25
Płeć: Niewybrana
User Agent: Chrome Windows 2560x1440

Wywoływanie funkcji php w button onClick (ajax)

Post autor: idalonia »

czesc
ODPOWIEDZ