Wszystko śmiga ale lokalnie ( symulacja serwera XAMPP)
Jak wrzucę pliki na serwer i odpalę stronę to cześć rzeczy się nie odświeża.
Zauważyłem taką zależność, że jak dane mam na serwerze:
Kopiuj
{
"images": ["breck_1.jpg", "breck_2.jpg"] ,
"zawodnicy": ["GonzoBonzo", "SpeedyTweedy"]
}
i jak je zmienię to na stronie pojawi się aktualizacja.
Tak przekazuję dane i wszytko co przechodzi tędy odświeża się
Kopiuj
echo json_encode([
'array' => $arr_all,
'arraySedziowie'=> $sedziowie,
'images' => $images,
'zawodnicy' => $zawodnicy
]);
Natomiast wszytko co zrobię już po stronie strony www (java scrypt), nie chcę się odświeżyć.
To fragment funkcji która przetwarza wszystkie dane które mają się odświeżyć:
Kopiuj
fetchIteratively(data => {
span.innerText = data.array;
const images = data.images; // tutaj będzie to co jest w pliku JSON
const zawodnicy = data.zawodnicy;
// console.log(data);
// image1.src = images[0];
// image2.src = images[1];
const arr = data.array;
const arrSedziowie = data.arraySedziowie;
sedzia1 = arrSedziowie[0]
sedzia2 = arrSedziowie[1]
sedzia3 = arrSedziowie[2]
document.getElementById("sedzia1").innerHTML = sedzia1; // podstawianie nazwy sedziego1
document.getElementById("sedzia2").innerHTML = sedzia2; // podstawianie nazwy sedziego2
document.getElementById("sedzia3").innerHTML = sedzia3; // podstawianie nazwy sedziego3
zawodnik1 = zawodnicy[0];
zawodnik2 = zawodnicy[1];
//console.log(zawodnik1);
//console.log(zawodnik2);
document.getElementById("zawodnik1").innerHTML = zawodnik1 ;
document.getElementById("zawodnik2").innerHTML = zawodnik2 ;
s1Wynik = arr[0][0]; //tablica sedzia1 1/2 1-red , 2-blue
s1Runda = arr[0][1];
s1OnOff = arr[0][2]; //0-Off , 1-On
s2Wynik = arr[1][0]; //tablica sedzia2
s2Runda = arr[1][1];
s2OnOff = arr[1][2]; //0-Off , 1-On
s3Wynik = arr[2][0]; //tablica sedzia1
s3Runda = arr[2][1];
s3OnOff = arr[2][2]; //0-Off , 1-On
if(s1OnOff == 0 && s2OnOff == 0 && s3OnOff == 0)
{
document.getElementById("rozgrywka5").style.color = 'black';
document.getElementById("rozgrywka4").style.color = 'black';
document.getElementById("rozgrywka3").style.color = 'black';
document.getElementById("rozgrywka2").style.color = 'black';
document.getElementById("rozgrywka1").style.color = 'black';
document.getElementById("kafelek_lewy_1").style.backgroundColor = 'black';
document.getElementById("kafelek_lewy_2").style.backgroundColor = 'black';
document.getElementById("kafelek_lewy_3").style.backgroundColor = 'black';
document.getElementById("kafelek_lewy_4").style.backgroundColor = 'black';
document.getElementById("kafelek_lewy_5").style.backgroundColor = 'black';
document.getElementById("kafelek_srodkowy_1").style.backgroundColor = 'black';
document.getElementById("kafelek_srodkowy_2").style.backgroundColor = 'black';
document.getElementById("kafelek_srodkowy_3").style.backgroundColor = 'black';
document.getElementById("kafelek_srodkowy_4").style.backgroundColor = 'black';
document.getElementById("kafelek_srodkowy_5").style.backgroundColor = 'black';
document.getElementById("kafelek_prawy_1").style.backgroundColor = 'black';
document.getElementById("kafelek_prawy_2").style.backgroundColor = 'black';
document.getElementById("kafelek_prawy_3").style.backgroundColor = 'black';
document.getElementById("kafelek_prawy_4").style.backgroundColor = 'black';
document.getElementById("kafelek_prawy_5").style.backgroundColor = 'black';
Zauważyłem że ma to jakiś związek z wersją PHP...
Przy zmianie na najnowszą wersję (8.1) wywala:
Uncaught (in promise) SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
Podobnie przy wersji starszej (5.6). Przy 7 jest lepiej ale właśnie tak połowicznie.
Ustawiłem 8.1 bo XAMPP taką aktualnie wersję obsługuje więc chyba tak jest logicznie.
Tu link do strony
link