navigatie maken adhv database
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
$database = './database.php';
include($database);
$tbl_name = 'navigation';
$qry = mysql_query("SELECT * FROM ".$tbl_name." WHERE positie IS NOT NULL");
while ($row = mysql_fetch_assoc($qry)) {
print "ID: ".$row['id'] . "<BR>";
print "titel: ".$row['titel'] . "<BR>";
print "verwijzing: ".$row['ref'] . "<BR>";
print "positie: ".$row['positie'] . "<BR>";
}
// list($id, $titel, $ref, $pos) = mysql_fetch_assoc($qry);
//zolang mijn navigatie een positie heeft, wordt deze weergeven(onthouden)
Do {
$nav = mysql_query("SELECT * FROM ".tbl_name." WHERE positie = ".$pos);
$pos = $pos + 1;
echo $nav."<br>";
} while ($row = mysql_fetch_assoc($qry));
?>
$database = './database.php';
include($database);
$tbl_name = 'navigation';
$qry = mysql_query("SELECT * FROM ".$tbl_name." WHERE positie IS NOT NULL");
while ($row = mysql_fetch_assoc($qry)) {
print "ID: ".$row['id'] . "<BR>";
print "titel: ".$row['titel'] . "<BR>";
print "verwijzing: ".$row['ref'] . "<BR>";
print "positie: ".$row['positie'] . "<BR>";
}
// list($id, $titel, $ref, $pos) = mysql_fetch_assoc($qry);
//zolang mijn navigatie een positie heeft, wordt deze weergeven(onthouden)
Do {
$nav = mysql_query("SELECT * FROM ".tbl_name." WHERE positie = ".$pos);
$pos = $pos + 1;
echo $nav."<br>";
} while ($row = mysql_fetch_assoc($qry));
?>
Database =
ID | titel | ref | positie
Id = primaire sleutel
titel = hetgeen ik in mijn navigatie wil zien
ref = de link naar de pagina
positie = volgorde in de navigatie (links naar rechts) (uniek veld)
Helemaal mislukt en ben het noorden kwijt.
Mijn opzet:
Ik kan mijn waarden uitlezen uit de database en printen:
Gaat het om bij $nav in de Do While telkens $nav een andere naam te geven?
bijvoorbeeld $nav1, $nav2 zodat ik een titel kan toewijzen aan mijn variabelen.
Vervolgens zou ik gaan kijken op welke positie ze moeten komen (door de vergelijking groter dan kleiner dan)
----------------------------------------------------------
ik denk dat ik zoals bij die print telkens moet uitlezen in een list. maar elke list zou dan een andere naam moeten hebben (per navigatietitel 1) als dit zou gaan dan kan ik verder met mijn navigatie
Ik denk dat ik het op een verkeerde manier aanpak maar vind hoe het wel moet.
Kan iemand even kijken wat ik fout doe?
Alvast bedankt!
Gewijzigd op 10/09/2011 15:25:48 door Jelle VdB
1 query maken met een order by op positie en dan in een while-lus de navigatie opbouwen (?).
ja... het is idd zo simpel thx!!!
ik haal sla mijn locatie en label op uit de database.
ik wou deze nu updaten, was begonnen met enkel het label te doen, werkte
vervolgens ging ik mijn locatie eraan toevoegen.
als output van dit script krijg ik nu
titel1 = output = komt overeen met opgegeven item
titel2 = output = 0
titel3 = output = 0
al mijn locaties (ref) komen overeen met de opgegeven locatie.
Mijn fout zit in mijn SQL code maar ik vind ze niet.
Code (php)
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
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
<?php
$database = './database.php';
include($database);
$tbl_name = 'navigation';
$location = "./index.php";
$titel1 = "titel1";
$titel2 = "titel2";
$titel3 = "titel3";
$ref1 = "ref1";
$ref2 = "ref2";
$ref3 = "ref3";
$titel1 = mysql_real_escape_string($_POST[$titel1]);
$titel2 = mysql_real_escape_string($_POST[$titel2]);
$titel3 = mysql_real_escape_string($_POST[$titel3]);
$ref1 = mysql_real_escape_string($_POST[$ref1]);
$ref2 = mysql_real_escape_string($_POST[$ref2]);
$ref3 = mysql_real_escape_string($_POST[$ref3]);
$pos1 = "1";
$pos2 = "2";
$pos3 = "3";
$qry1 = mysql_query("UPDATE ".$tbl_name." SET titel='".$titel1."', positie='".$ref1."' WHERE positie='".$pos1."'");
$qry2 = mysql_query("UPDATE ".$tbl_name." SET titel='".$titel2."', positie='".$ref2."' WHERE positie='".$pos2."'");
$qry3 = mysql_query("UPDATE ".$tbl_name." SET titel='".$titel3."', positie='".$ref3."' WHERE positie='".$pos3."'");
header('location: ' .$location);
?>
$database = './database.php';
include($database);
$tbl_name = 'navigation';
$location = "./index.php";
$titel1 = "titel1";
$titel2 = "titel2";
$titel3 = "titel3";
$ref1 = "ref1";
$ref2 = "ref2";
$ref3 = "ref3";
$titel1 = mysql_real_escape_string($_POST[$titel1]);
$titel2 = mysql_real_escape_string($_POST[$titel2]);
$titel3 = mysql_real_escape_string($_POST[$titel3]);
$ref1 = mysql_real_escape_string($_POST[$ref1]);
$ref2 = mysql_real_escape_string($_POST[$ref2]);
$ref3 = mysql_real_escape_string($_POST[$ref3]);
$pos1 = "1";
$pos2 = "2";
$pos3 = "3";
$qry1 = mysql_query("UPDATE ".$tbl_name." SET titel='".$titel1."', positie='".$ref1."' WHERE positie='".$pos1."'");
$qry2 = mysql_query("UPDATE ".$tbl_name." SET titel='".$titel2."', positie='".$ref2."' WHERE positie='".$pos2."'");
$qry3 = mysql_query("UPDATE ".$tbl_name." SET titel='".$titel3."', positie='".$ref3."' WHERE positie='".$pos3."'");
header('location: ' .$location);
?>