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

Przeładowanie części strony php

Object Storage Arubacloud
0 głosów
1,067 wizyt
pytanie zadane 18 stycznia 2018 w PHP przez Radosław Foltyński Obywatel (1,180 p.)

Część wszystkim forumowiczą. Po raz enty będę się musiał prosić o pomoc przy kodzie. Tym razem chodzi o php. Mianowicie o przeładowanie tylko części strony w php  bez odświeżania całej. Chodzi o to, że tworze grę, która wyciąga z bazy losowe pytanie. Teraz połączenie i wypisywanie działa bez zarzutu, problem pojawia się gdy po raz kolejny wczytuje skrypt i wyświetla pytanie. Mianowicie, nie zmienia się pytanie no i również odpowiedzi. Po niżej dołączam kod źródłowy skryptu:
 

<?php
	
	echo '<div id="pytka"><p>Treść Pytania:<br></p>';
		
	// połączenie z bazą

	$z = mysqli_query($c,'SELECT id, Pytanie,OdpA,OdpB,OdpC,Poprawna,PTS FROM dywizja303 JOIN (SELECT CEIL(RAND() * (SELECT MAX(id) FROM dywizja303)) AS id) AS rows USING (id)');

    while($row = mysqli_fetch_array($z))
	{
    echo $row['Pytanie'].'</br>';

	echo '</div><br>';
	
	echo '<div id="OdpA" onclick="sprawdz(OdpA)"><h1>A) ';
	echo $row['OdpA'].' '.'</h1>';
	echo '</div><br>';
	
	echo '<div id="OdpB" onclick="sprawdz(OdpB)"><h1>B) ';
	echo $row['OdpB'].' '.'</h1>';
	echo '</div><br>';
	
	echo '<div id="OdpC" onclick="sprawdz(OdpC)"><h1>C) ';
	echo $row['OdpC'].' '.'</h1>';
	echo '</div><br>';
	
	echo '<div id="komunikat1" font size="14"><br><center>Brawo, udąło Ci się zdobyć punkt!</center></div>';
	echo '<div id="komunikat2" font size="14"><br><center>Błąd, nie otrzymujesz punktu!</center></div>';
	}
mysqli_close($c);	
?>

 

Z góry dziękuję za pomoc :).

2 odpowiedzi

+1 głos
odpowiedź 18 stycznia 2018 przez Artek Stary wyjadacz (11,800 p.)
Nieco abstrahując od tematu html, który masz w kodzie jest przestarzały. Nie używaj <center> ani font size. Używaj css w arkuszu stylów. Onclick też nie używaj, skorzystaj z document.addEventListener albo jQuery - nie mieszaj warst aplikacji.
komentarz 18 stycznia 2018 przez Radosław Foltyński Obywatel (1,180 p.)
Domyślam się, że AJAX ale jak to zrobić aby to przeładować? Chodzi mnie o jakieś rozwiązanie, przykładowy kodzik, byłbym bardzo wdzięczny :). Nie przepadam za addEventListener i dlatego używam onclick. No faktycznie może z tym center i font size trochę przesadziłem ale chciałem na szybko coś wklepać :).
komentarz 18 stycznia 2018 przez Artek Stary wyjadacz (11,800 p.)

Jeżeli nie lubisz addEventListener(chociaż nie wiem co można tam nie lubieć :) ) to zawsze możesz użyć jQuery. Nie wiem do czego potrzebujesz to zadanie, ale według mnie coś takiego będzie źle widziane przez pracodawcę.

 

Co do przykładowego kodziku to na szybko wyciąłem kod jaki napisałem dla panelu admina sklepu internetowego. Zapewne nie jest idealny, ale powinien odzwierciedlić ogólną zasadę działania. Korzystam z jQuery.

 $.ajax({
				 url : "/skrypty-php/zmodyfikuj-kolumne.php",
				 type : "POST",
				 dataType : "text",
				 data : {
					   id: ID,
					   new_value: NewValue,
					   column: SelectedProperty
				   },			   
				   
				   success: function(data)
				   {
						switch(data)
                        {
                           case "sukces":
						      AnimatedText("Zmodyfikowano wartość pola : " + SelectedProperty + " dla produktu o ID : " + ID);
						   break;
						   
						   case "connection_error":
						     AnimatedText("Błąd połaczenia z bazą danych. Spróbuj ponownie za chwilę. Sprawdź połączenie z internetem. Jeżeli problem będzie się powtarzał skontaktuj się z Mostem",true)
						   break;
						   
						   case "query_error":
						    AnimatedText("Błąd zapytania w bazie danych.",true);  
						   break;
                        }						
				   },
				   
				   error: function()
				   {
                      AnimatedText("Bliżej niezidentyfikowany błąd. Skontaktuj się z Mostem.",true);					  
				   },
				   
				   
				 }); 

 

komentarz 18 stycznia 2018 przez Radosław Foltyński Obywatel (1,180 p.)
Mam farta, mój pracodawca zna się na biznesie ale nie na kodowaniu :). Mam zrobić grę na stronę i tyle :). Dziękuję za skrypcik, coś z nim się postaram podziałać.
0 głosów
odpowiedź 18 stycznia 2018 przez Artek Stary wyjadacz (11,800 p.)
AJAX

Podobne pytania

0 głosów
0 odpowiedzi 225 wizyt
pytanie zadane 14 kwietnia 2017 w JavaScript przez raverssis Początkujący (330 p.)
0 głosów
2 odpowiedzi 3,860 wizyt
pytanie zadane 15 maja 2018 w JavaScript przez yoomati Początkujący (460 p.)
0 głosów
1 odpowiedź 154 wizyt
pytanie zadane 29 czerwca 2015 w PHP przez SebastianGomularz Dyskutant (9,370 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 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

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy 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!

...