RobIII schreef op zondag 17 augustus 2008 @ 22:08:
[...]
Nee, niet echt. Wat heb je so far? Wat lukt er niet? Wat lukt er wel? Relevante code?
[...]
Dus...

Een volgende/vorige knopje maken, een paginanummer meegeven in de request en per result 4 items (of 'pagesize') teruggeven. Niet echt rocket science lijkt me.
Laat ik even voorop stellen dat mijn intensie niet is om codes of iets dergelijks voorgekauwd te krijgen!
Ik zou alleen wat tips willen krijgen om zoiets op te zetten en wat een makkelijke / goede manier is om dit in combinatie met PHP uitgevoerd te krijgen.
Ik heb het nu nog simpel gedaan door in php de aantal pagina's te laten berekenen en die door te sturen naar AJAX. Dit heb ik met een echo in php gedaan. Het probleem is hier dat een cijfer in php in Ajax niet wordt gezien als een cijfer (tenminste, dat is mijn ervaring).
Code:
PHP:
1
| <? echo '4'; // aantal pagina's ?> |
Zeer omslachtig waarschijnlijk:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
| var numberList = 0;
var listItem = 0;
var totalNum;
function totalNumber() {
var xmlhttp = makeXmlHttp();
xmlhttp.open("GET", "test.php?total=1", true);
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState == 4){
totalNum = xmlhttp.responseText;
alert(totalNum);
showList(1,2);
createNav();
} else {
document.getElementById("itemsholder").innerHTML = "Bezig met laden...";
}
}
xmlhttp.send('');
}
function createNav() {
var navItems = '<a href="javascript:showList(0,1);" id="previousBtn"><</a>';
for (i=1; i<totalNum; i++) {
navItems += ' - <a href="javascript:showList('+i+',2);">'+i+'</a>';
}
navItems += ' <a href="javascript:showList(0,3);" id="nextBtn">></a>';
document.getElementById("navHolder").innerHTML = navItems;
alert(navItems);
}
function showList(id,number){
if(number == "2") {
numberList = id;
} else if(number == "1") {
numberList--;
} else {
numberList++;
}
listItem = numberList;
var xmlhttp = makeXmlHttp();
xmlhttp.open("GET", "test.php?list="+listItem, true);
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState == 4){
document.getElementById("itemsHolder").innerHTML = xmlhttp.responseText;
} else {
document.getElementById("itemsHolder").innerHTML = "Bezig met laden...";
}
}
xmlhttp.send('');
}
addEvent(window, 'load', totalNumber); |
(het is zoals ik al zei zeer omslachtig, maar ik ben dus ook niet heel lang bezig met AJAX)
[
Voor 14% gewijzigd door
radem205 op 17-08-2008 22:20
]