• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Prosty ajax, nie przesyła kodu do hmla

VPS Starter Arubacloud
0 głosów
132 wizyt
pytanie zadane 10 czerwca 2017 w JavaScript przez glocek2121 Nowicjusz (160 p.)

Witam, mam problemy co do przesłań w ajax, jestem początkującym programistą wiec proszę o wyrozumiałość.
Pisząc swój pierwszy sklep internetowy napotkałem na problem z przesłaniem kodu php'a za pomoca js. 
Wiem ze błąd jest w js sprawdzałem to poprzez wpisaniem php w html i działa kod poprawnie, a gdy próbuje za pomocą js przesłać ten sam kod php to w ogóle go nie wyświetla. PHP pobiera dane z bazy i wyświetla odpowiednie kategorie. 
Proszę o pomoc, napisanie, wskazanie błędu w kodzie js:

$(document).ready(function(){
    cat();
    function cat(){
        $.ajax({
            url	:	"action.php",
            method:	"POST",
            data	:	{category:1},
            success	:	function(data){
                $("#get_category").html(data);
 
            }
        })
    }
 
});

Kod PHP:

<?php
$servername = "localhost";
$username = "root";
$password ="";
$db = "alatex";
 
$con = mysqli_connect ($servername, $username,$password,$db);
 
if (!$con){
    die("Połaczneinie nie powiodło sie: ". mysql_connect_error());
}
 
if(isset($_POST["category"])){
    $category_q[/manual]uery = "SELECT * FROM categories";
    $run_query = mysqli_query($con,$category_query) or die(mysqli_error($con));
    echo "
		<div class='nav nav-pills nav-stacked'>
			<li class='active'><a href='#'><h4>Categories</h4></a></li>
	";
    if(mysqli_num_rows($run_query) > 0){
        while($row = mysqli_fetch_array($run_query)){
            $cid = $row["cat_id"];
            $cat_name = $row["cat_title"];
            echo "
					<li><a href='#'> $cat_name</a></li>
			";
        }
        echo "</div>";
    }
}
?>

no a w HTML'u jest tylko w odpowiednim miejscu div:

 <div id="get_category"></div>

 

komentarz 10 czerwca 2017 przez Magicone Nałogowiec (45,100 p.)
co mówi konsola?
komentarz 10 czerwca 2017 przez glocek2121 Nowicjusz (160 p.)
właśnie konsola nie mówi nic :/ niby wszystko jest ok.

2 odpowiedzi

+1 głos
odpowiedź 10 czerwca 2017 przez Boshi VIP (100,240 p.)
Powinieneś zwrócić jsona z wynikami z bazy i w jquery obrobić je wyświetlając na stronie.
0 głosów
odpowiedź 10 czerwca 2017 przez Ehlert Ekspert (212,630 p.)

Tak jak napisał Boshi skorzystaj z funkcji json_encode, która zwróci Ci Jsona z danymi. 

Jeśli zaczynasz to polecam Ci korzystać z IDE do PHPa; PHPStorma. Do tego instalujesz Xdebuga i łapie Ci on wszystkie requesty. Analizujesz linijka po linijce co się dzieje. 

Do testowania takich funkcjonalności serwera pod kątem requestów ajaxowych polecam Ci używać program Postman.

komentarz 10 czerwca 2017 przez Tomek Sochacki Ekspert (227,510 p.)
do prostych ajax'ów dla początkującego wystarczy nawet analiza konsola + zakładka network, w której możesz zobaczyć swoje żądanie do serwera i uzyskaną odpowiedź (narzędzia webmasterów Chrome).

a tak na marginesie to bardzo pewnie korzystasz z $_POST w PHP - polecam zawsze rozważyć jakąś walidację POSTa jeśli pochodzi on od klienta.

Pozdrawiam

Podobne pytania

0 głosów
0 odpowiedzi 112 wizyt
pytanie zadane 20 listopada 2016 w JavaScript przez Q_Nick Mądrala (5,010 p.)
0 głosów
1 odpowiedź 99 wizyt
pytanie zadane 13 kwietnia 2016 w JavaScript przez demotywatorking Obywatel (1,210 p.)
0 głosów
1 odpowiedź 699 wizyt

92,451 zapytań

141,261 odpowiedzi

319,073 komentarzy

61,853 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...