SQL uitlezen in adres?
Ik ben bezig met een website waarbij je op de uitverkoop pagina kunt filteren op vestiging. Nu wil ik op de vestigings pagina een link maken met een verwijzing naar hun gedeelte op de uitverkooppagina. Alleen het probleem is, dat de uitverkooppagina één pagina is, die met behulp van een formulier wordt gefilterd.
Kijk maar eens op: http://test1.sveakeukens.nl/uitverkoopuitverkoop
Wat ik eigenlijk wil is, wanneer ik naar http://test1.sveakeukens.nl/uitverkoop/rotterdam ga dat hij direct de filter heeft toegepast van rotterdam...
Maar de vraag is nu hoe kan ik dit voor elkaar krijgen, aangezien hij via het formulier de juiste query zoekt als je op submit hebt gedrukt....
bedankt alvast
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
if(isset($_GET['plaats'])){
$query = mysql_query("SELECT jeweetwel FROM tabel WHERE plaats= '".mysql_real_escape_string($_GET['plaats'])."'");
}
else{
//geen plaats opgegeven dus een lijst weergeven met beschikbare plaatsen
}
?>
if(isset($_GET['plaats'])){
$query = mysql_query("SELECT jeweetwel FROM tabel WHERE plaats= '".mysql_real_escape_string($_GET['plaats'])."'");
}
else{
//geen plaats opgegeven dus een lijst weergeven met beschikbare plaatsen
}
?>
Gewijzigd op 23/09/2011 12:09:10 door gerhard l
Wat jij uitlegt heb ik inderdaad al gedaan, op de uitverkoop pagina. Als je rotterdam kiest dan pakt hij op die manier, alleen dan met post, de juiste query. Dit werkt ook perfect.
Alleen wil ik nu op de vestigings pagina van bijvoorbeeld rotterdam een linkje neerzetten die naar de uitverkooppagina gaat. Op de uitverkoop pagina laad hij dan direct de query voor de keuze rotterdam.
Ben je op de vestigingspagina van spijkenisse en je klikt op de link. Dan moet hij op de uitverkooppagina vestiging spijkenisse laten zien.
is het zo duidelijk wat ik bedoel?
Bedank alvast
uitverkooppagina.php?plaats=rotterdam
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php //Onderstaande Query zorgt ervoor dat je de resultaten kunt uitfilteren
$query ="SELECT vestigingen.vestiging_id, vestigingen.Plaats, naam, foto, prijs_org, prijs_start, uitverkoop_id
FROM uitverkoop INNER JOIN vestigingen ON uitverkoop.vestiging_id=vestigingen.vestiging_id ORDER BY RAND() LIMIT 0,3;";
if ($_SERVER['REQUEST_METHOD'] == "POST")
{ $query ="SELECT vestigingen.vestiging_id, vestigingen.Plaats, naam, foto, prijs_org, prijs_start, uitverkoop_id
FROM uitverkoop INNER JOIN vestigingen ON uitverkoop.vestiging_id=vestigingen.vestiging_id";
if(isset($_POST['vestiging']) or isset($_POST['opstelling']) or isset($_POST['prijs']))//Als er een keuze wordt gemaakt wordt éém van onderstaande querys uitgevoerd
{
if($_POST['vestiging'] !='' and $_POST['opstelling']!='' and $_POST['prijs'] !='')//Als men zoekt op alles
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'
AND opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'
AND prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['vestiging'] !='' and $_POST['opstelling']!='' and $_POST['prijs'] =='')//Als men zoekt op vestiging en opstelling
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'
AND opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'";
}
elseif($_POST['vestiging']!='' and $_POST['prijs'] !='' and $_POST['opstelling'] =='')//Als men zoekt op vestiging en prijs
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'
AND prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['opstelling'] !='' and $_POST['prijs'] !='' and $_POST['vestiging'] =='')//Als men zoekt op opstelling en prijs
{
$query .= " WHERE opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'
AND prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['vestiging'] !='' and $_POST['prijs'] ==''and $_POST['opstelling'] =='')//Als men zoekt op alleen vestiging
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'";
}
elseif($_POST['prijs'] !='' and $_POST['opstelling'] =='' and $_POST['vestiging'] =='')//Als men zoekt op alleen prijs
{
$query .= " WHERE prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['opstelling'] !='' and $_POST['prijs'] =='' and $_POST['vestiging'] =='')//Als men zoekt op alleen opstelling
{
$query .= " WHERE opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'";
}
}
}
$result= mysql_query($query);
if(($result) and (mysql_num_rows($result)<1))
{
echo ("<p style='margin-left:20px;'>Helaas, uw zoekfunctie heeft geen resultaten opgeleverd.</p>");// tekst welke wordt weergegeven als er geen resultaten naar voren zijn gekomen
}
elseif (!$result)
{
echo ("Sorry er is iets fout gegaan, <a href'#'>klik hier om terug te gaan</a>");//Mocht er ondanks mijn zorgvuldigheid iets fout gaan, dan wordt dit bericht weergegeven
}
else
while (list ($vestiging_id, $vestiging_plaats, $naam, $foto, $prijs_org, $prijs_start, $uitverkoop_id) = mysql_fetch_row($result) ){
//Kortingspercentage berekenen
$procent_rek = $prijs_start * 100;
$procent_rek2 = round($procent_rek / $prijs_org);
$korting = 100 - $procent_rek2;
//Resultaten weergeven op het scherm
echo (" <div id='uitverkoop'>
<div id='uitverkoop_img'><a href='img/uitverkoop/". $foto .".jpg' rel='prettyPhoto'><img src='img/uitverkoop/".$foto.".jpg' width='150' height='110'/></a></div>
<div id='uitverkoop_cnt'>
<span class='titel'>$naam</span>
<p>Vestiging: $vestiging_plaats</p>
<p>Reguliere prijs: <span style='text-decoration:line-through;'>");
if ($prijs_org == $prijs_start){
echo "n.v.t. </span></p>";
}
else
echo "€ $prijs_org</span></p>";
echo"
<p style='margin-bottom:10px;'>Meeneem prijs: <span style='font-size:18px;'>€ $prijs_start</span></p>
<div class='button_uitverkoop'><a style='color:#fff;' href='svea-keuken-uitverkoop-detail.php?vestiging_plaats=".$vestiging_plaats."&uitverkoop_id=
".$uitverkoop_id."'>Meer informatie</a></div>";
if ($korting !=0){
echo "<div class='korting'>$korting%<br /><span style='font-size:14px;color:#fff;'>KORTING</span></div>";
}
else
echo "<div class='korting'><span style='font-size:20px; font-weight:bold'>OP=OP</span></div>";
echo"
</div>
<div class='clear'></div>
</div>";
}
?>
$query ="SELECT vestigingen.vestiging_id, vestigingen.Plaats, naam, foto, prijs_org, prijs_start, uitverkoop_id
FROM uitverkoop INNER JOIN vestigingen ON uitverkoop.vestiging_id=vestigingen.vestiging_id ORDER BY RAND() LIMIT 0,3;";
if ($_SERVER['REQUEST_METHOD'] == "POST")
{ $query ="SELECT vestigingen.vestiging_id, vestigingen.Plaats, naam, foto, prijs_org, prijs_start, uitverkoop_id
FROM uitverkoop INNER JOIN vestigingen ON uitverkoop.vestiging_id=vestigingen.vestiging_id";
if(isset($_POST['vestiging']) or isset($_POST['opstelling']) or isset($_POST['prijs']))//Als er een keuze wordt gemaakt wordt éém van onderstaande querys uitgevoerd
{
if($_POST['vestiging'] !='' and $_POST['opstelling']!='' and $_POST['prijs'] !='')//Als men zoekt op alles
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'
AND opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'
AND prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['vestiging'] !='' and $_POST['opstelling']!='' and $_POST['prijs'] =='')//Als men zoekt op vestiging en opstelling
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'
AND opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'";
}
elseif($_POST['vestiging']!='' and $_POST['prijs'] !='' and $_POST['opstelling'] =='')//Als men zoekt op vestiging en prijs
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'
AND prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['opstelling'] !='' and $_POST['prijs'] !='' and $_POST['vestiging'] =='')//Als men zoekt op opstelling en prijs
{
$query .= " WHERE opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'
AND prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['vestiging'] !='' and $_POST['prijs'] ==''and $_POST['opstelling'] =='')//Als men zoekt op alleen vestiging
{
$query .= " WHERE vestigingen.plaats = '" . mysql_real_escape_string($_POST['vestiging']) . "'";
}
elseif($_POST['prijs'] !='' and $_POST['opstelling'] =='' and $_POST['vestiging'] =='')//Als men zoekt op alleen prijs
{
$query .= " WHERE prijs_cat = '" . mysql_real_escape_string($_POST['prijs']) . "'";
}
elseif($_POST['opstelling'] !='' and $_POST['prijs'] =='' and $_POST['vestiging'] =='')//Als men zoekt op alleen opstelling
{
$query .= " WHERE opstelling = '" . mysql_real_escape_string($_POST['opstelling']) . "'";
}
}
}
$result= mysql_query($query);
if(($result) and (mysql_num_rows($result)<1))
{
echo ("<p style='margin-left:20px;'>Helaas, uw zoekfunctie heeft geen resultaten opgeleverd.</p>");// tekst welke wordt weergegeven als er geen resultaten naar voren zijn gekomen
}
elseif (!$result)
{
echo ("Sorry er is iets fout gegaan, <a href'#'>klik hier om terug te gaan</a>");//Mocht er ondanks mijn zorgvuldigheid iets fout gaan, dan wordt dit bericht weergegeven
}
else
while (list ($vestiging_id, $vestiging_plaats, $naam, $foto, $prijs_org, $prijs_start, $uitverkoop_id) = mysql_fetch_row($result) ){
//Kortingspercentage berekenen
$procent_rek = $prijs_start * 100;
$procent_rek2 = round($procent_rek / $prijs_org);
$korting = 100 - $procent_rek2;
//Resultaten weergeven op het scherm
echo (" <div id='uitverkoop'>
<div id='uitverkoop_img'><a href='img/uitverkoop/". $foto .".jpg' rel='prettyPhoto'><img src='img/uitverkoop/".$foto.".jpg' width='150' height='110'/></a></div>
<div id='uitverkoop_cnt'>
<span class='titel'>$naam</span>
<p>Vestiging: $vestiging_plaats</p>
<p>Reguliere prijs: <span style='text-decoration:line-through;'>");
if ($prijs_org == $prijs_start){
echo "n.v.t. </span></p>";
}
else
echo "€ $prijs_org</span></p>";
echo"
<p style='margin-bottom:10px;'>Meeneem prijs: <span style='font-size:18px;'>€ $prijs_start</span></p>
<div class='button_uitverkoop'><a style='color:#fff;' href='svea-keuken-uitverkoop-detail.php?vestiging_plaats=".$vestiging_plaats."&uitverkoop_id=
".$uitverkoop_id."'>Meer informatie</a></div>";
if ($korting !=0){
echo "<div class='korting'>$korting%<br /><span style='font-size:14px;color:#fff;'>KORTING</span></div>";
}
else
echo "<div class='korting'><span style='font-size:20px; font-weight:bold'>OP=OP</span></div>";
echo"
</div>
<div class='clear'></div>
</div>";
}
?>
Waarom wil je het niet in het URL adres? Zoekmachine vriendelijkheid? Ik zou dat dus juist wel doen. Mocht je het echt niet willen, dan kun je een session of cookie gebruiken met hetzelfde doel.
Of htaccess met urlrewrite gebruiken.
Met HTacces ben ik bezig geweest, alleen moet ik in de broncode ook iets veranderen dan?
Heb nu namelijk in mijn htacces bestand de volgende regel:
RewriteRule ^showroomuitverkoop(.*)/(.*)/(.*) /showroomuitverkoop.html?$1=$2
Alleen dit werkt niet, want als ik dan intyp test1.sveakeukens.nl/showroomuitverkoop/Rotterdam dan pakt ie hem niet...:S