pętla powtarza ostatnie zdjęcie

0

Mam pętlę która pobiera z bazy zdjęcia i wstawia na stronę .
Mam problem z powtarzającym się ostatnim zdjęciem zmiast przejść do ppierwszego foto powtarza ostatnie
czy mógłby ktoś rzucić okiem na kod i powiedzieć co robię źle by jak zmiani ostatnie zdjęcie to kolejna zmiana była na pierwsze

var glownyElement = document.getElementById("next");
	var prince = document.getElementById("princeProduct");
	var name = document.getElementById("names");
	       
        var petla = null; 

	var photos = [ <?php echo $BaseAdapter -> printAllPhotosBetweenDates() ?> ];
	var princes = [ <?php echo $BaseAdapter -> printAllPricesBetweenDates() ?> ];
	var names = [ <?php echo $BaseAdapter -> printAllOpisBetweenDates() ?> ];
	
	var numerZdjecia = 0;

	function wyswietl() {
	  if( photos.length > namberphotos  ){
			glownyElement.src = "img/" + zdjecia[ namberphotos];
			prince.innerHTML = princes[ namberphotos] ;
			name.innerHTML = names[ namberphotos] ;
			
			namberphotos++;

		}else
			namberphotos = 0;
	}
1

Po pierwsze - nie wiem, czy we fragmencie, którego nie wkleiłeś masz jakieś przypisanie wartości do namberphotos (swoją drogą - chyba gorszej i brzydszej nazwy zmiennej by się nie dało wyczarować), ale z tego co widać to wynika, że używasz jej w if, a następnie zwiększasz, chociaż pierwotna wartość nie została ustalona. Trochę to nieładne :P

Tak samo za bardzo nie wiem, po co została stworzona i zainicjowana zmienna petla.

Kolejna sprawa - ponieważ nie wiemy, jaka jest wartość tej "brzydko nazwanej" zmiennej, prawdopodobnie zawsze if( photos.length > namberphotos) zwróci TRUE, a co za tym idzie - operacje w nawiasach klamrowych wykonają się. ALE wykonają się tylko jeden raz, nie widzę tutaj żadnej pętli ani niczego, co by się chciało cyklicznie wykonać. Albo masz błąd w założeniach, albo wkleiłeś zbyt mały fragment, żeby coś sensownie napisać :P

1

buaahahuhua namberphotos jak robisz zmienne to pisz poprawnie i rozdzielaj albo numberPhotos albo number_photos , nie nazywaj zmiennych po polsku i nie robi się tak że "Mam pętlę która pobiera z bazy zdjęcia i wstawia na stronę ." tylko Mam pętle która pobrane zdjęcia z bazy wyświetla. Wywalcie to pytanie do kosza

function wyswietl() {
      if( photos.length > namberphotos  ){
            glownyElement.src = "img/" + zdjecia[ namberphotos];
            prince.innerHTML = princes[ namberphotos] ;
            name.innerHTML = names[ namberphotos] ;
            namberphotos++;
        }else {
            glownyElement.src = "img/" + zdjecia[ 0];
            prince.innerHTML = princes[ 0] ;
            name.innerHTML = names[ 0] ;
            namberphotos++;
       }

1 użytkowników online, w tym zalogowanych: 0, gości: 1