SQL php met radiobuttons

  • Onderwerp starter Onderwerp starter roben
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

roben

Gebruiker
Lid geworden
4 dec 2008
Berichten
65
Ik heb een vraag:

HTML:
<h4>Merk:</h4>

<form action="http://www.verlengsimonly.nl/test" method="GET" id="Form1">
<input type="radio" name="merk" value="allet" onclick="document.getElementById('Form1').submit();"> Alle Telefoons
<br />
<input type="radio" name="merk" value="nokia" onclick="document.getElementById('Form1').submit();"> Nokia
<br />
<input type="radio" name="merk" value="samsung" onclick="document.getElementById('Form1').submit();"> Samsung
<br />
<input type="radio" name="merk" value="lg" onclick="document.getElementById('Form1').submit();"> LG
<br />
<input type="radio" name="merk" value="htc" onclick="document.getElementById('Form1').submit();"> HTC
<br />
<input type="radio" name="merk" value="blackberry" onclick="document.getElementById('Form1').submit();"> Blackberry
<br />
<input type="radio" name="merk" value="sony" onclick="document.getElementById('Form1').submit();"> Sony Ericsson
<br /><br />

</form>

<h4>Prijs:</h4>

<form action="http://www.verlengsimonly.nl/test" method="GET" id="Form2">
<input type="radio" name="prijs" value="allep" onclick="document.getElementById('Form2').submit();"> Alle Prijzen 
<br />

<input type="radio" name="prijs" value="honderd" onclick="document.getElementById('Form2').submit();"> tot &euro; 100 
<br />

<input type="radio" name="prijs" value="driehonderd" onclick="document.getElementById('Form2').submit();"> &euro; 100 tot &euro; 300
<br />
 
<input type="radio" name="prijs" value="vijfhonderd" onclick="document.getElementById('Form2').submit();"> &euro; 300 tot &euro; 500 
<br />

<input type="radio" name="prijs" value="meer" onclick="document.getElementById('Form2').submit();"> meer dan &euro; 500
<br /><br />

</form>


PHP:
<?php

include('connect.php');


if ($_GET['merk'] == "allet") {
$sql = "SELECT * FROM `datafeed` WHERE `title` NOT LIKE 'title' ORDER BY price";
}
elseif ($_GET['merk'] == "nokia") {
$sql = "SELECT * FROM `datafeed` WHERE `title` LIKE '%nokia%' ORDER BY price";
}
elseif ($_GET['merk'] == "samsung") {
$sql = "SELECT * FROM `datafeed` WHERE `title` LIKE '%samsung%' ORDER BY price";
}
elseif ($_GET['merk'] == "lg") {
$sql = "SELECT * FROM `datafeed` WHERE `title` LIKE 'lg%' ORDER BY price";
}
elseif ($_GET['merk'] == "sony") {
$sql = "SELECT * FROM `datafeed` WHERE `title` LIKE '%sony%' ORDER BY price";
}
elseif ($_GET['merk'] == "htc") {
$sql = "SELECT * FROM `datafeed` WHERE `title` LIKE '%htc%' ORDER BY price";
}
elseif ($_GET['merk'] == "blackberry") {
$sql = "SELECT * FROM `datafeed` WHERE `title` LIKE '%blackberry%' ORDER BY price";
}
else {
$sql ="SELECT * FROM `datafeed` WHERE `title` NOT LIKE 'title' ORDER BY price";
}


if ($_GET['prijs'] == "allep") {
$sqlb = $sql;
}
elseif ($_GET['prijs'] == "honderd") {
$sqlb = "$sql AND price < 100";
}
elseif ($_GET['prijs'] == "driehonderd") {
$sqlb = "$sql AND price < 300";
}
elseif ($_GET['prijs'] == "vijfhonderd") {
$sqlb = "$sql AND price < 500";
}
elseif ($_GET['prijs'] == "meer") {
$sqlb = "$sql AND price > 500";
}
else {
$sqlb = $sql;
}


// $sql = "SELECT * FROM `datafeed` WHERE `title` NOT LIKE 'title' ORDER BY 'title' ";


$result = mysql_query($sqlb);

if (!$result) {
    echo("<P>Error performing query: " . mysql_error() . "</P>");
    exit();
    }

Dit werkt alleen bij de eerste radiobuttons. De tweede serie die zorgt alleen maar dat het word gereset? Nu moet het dus worden dat ik een merk EN een prijs klasse bij elkaar kan kiezen. Iemand een suggestie?

test/?merk=samsung word nu test/?prijs=driehonderd na keuze in het prijzen menu
test/?merk=samsung Moet worden test/?merk=samsung&prijs=driehonderd na die keuze

De radio buttons moeten dus aan blijven staan na die keuze in het menu, en niet nadat erop word geklikt meteen weer uit gaan....

?
 
Laatst bewerkt:
Komt omdat je met twee formulier werkt.
 
Ik heb het nu in 1 formulier staan, maar het is juist de bedoeling dat hij de aangevinkte stukje aan laat staan. Hij gaat nu direct weer uit. als die radiobuttons aan blijven staan, dan is het mogelijk om verder te selecteren.

Het gaat erom dat die aan blijven staan, daarna kan je pas verder selecteren.

Het gaat om deze site: http://www.verlengsimonly.nl/test

Kan het ermee te maken hebben dat ik mijn radiobuttons op deze manier heb:

HTML:
<input type="radio" name="merk" value="samsung" onclick="document.getElementById('Form1').submit();">


Gr.
 
maak een hidden value aan bij het formulier, met daarin de waarde van het andere, en vice versa. dan zal hij het als het goed is meenemen.
 
maak een hidden value aan bij het formulier, met daarin de waarde van het andere, en vice versa. dan zal hij het als het goed is meenemen.

ja, maar ik heb nu nog maar 1 formulier, en die werkt ook, maar het gaat erom dat hij het moet onthouden. Als ik nu een radio button aanklik, dan is hij direct weer uit. Als deze nou aan bleef staan dan doet hij het wel.

als je op de eerste klikt, dan gebeurt er dit:
http://www.verlengsimonly.nl/test/?merk=samsung

als je vervolgens op de 2e klikt gebeurt er dit:
http://www.verlengsimonly.nl/test/?prijs=honderd

Maar dit moet juist dit worden:
http://www.verlengsimonly.nl/test/?merk=samsung&prijs=honderd

<h4>Merk:</h4>

<form action="http://www.verlengsimonly.nl/test" method="GET" id="Form1">
<input type="radio" name="merk" value="allet" onclick="document.getElementById('Form1').submit();"> Alle Telefoons
<br />
<input type="radio" name="merk" value="nokia" onclick="document.getElementById('Form1').submit();"> Nokia
<br />
<input type="radio" name="merk" value="samsung" onclick="document.getElementById('Form1').submit();"> Samsung
<br />
<input type="radio" name="merk" value="lg" onclick="document.getElementById('Form1').submit();"> LG
<br />
<input type="radio" name="merk" value="htc" onclick="document.getElementById('Form1').submit();"> HTC
<br />
<input type="radio" name="merk" value="blackberry" onclick="document.getElementById('Form1').submit();"> Blackberry
<br />
<input type="radio" name="merk" value="sony" onclick="document.getElementById('Form1').submit();"> Sony Ericsson
<br /><br />



<h4>Prijs:</h4>


<input type="radio" name="prijs" value="allep" onclick="document.getElementById('Form1').submit();"> Alle Prijzen
<br />

<input type="radio" name="prijs" value="honderd" onclick="document.getElementById('Form1').submit();"> tot &euro; 100
<br />

<input type="radio" name="prijs" value="driehonderd" onclick="document.getElementById('Form1').submit();"> &euro; 100 tot &euro; 300
<br />

<input type="radio" name="prijs" value="vijfhonderd" onclick="document.getElementById('Form1').submit();"> &euro; 300 tot &euro; 500
<br />

<input type="radio" name="prijs" value="meer" onclick="document.getElementById('Form1').submit();"> meer dan &euro; 500
<br /><br />

</form>
 
Laatst bewerkt:
ja, dat bedoel ik ook.
als één waarde doorgezonden is via GET, moet je php een hidden value bij het andere formulier laten echoën, zo:
Code:
<?php if($_GET['waarde']){ ?><input type="hidden" name="waardenaam" value="<?php echo $_GET['waarde']; ?>"><?php } ?>

voor het overzicht zou je ook nog bij elk selecteerbaar vakje 'selected' erbij kunnen zetten als de waarde in $_GET staat, dat doe je zo:
Code:
<input type="radio" name="telefoon1"<?php if($_GET['kies']=="telefoon1"){ echo " selected"; } ?>>
 
je bent een held :thumb:

het gaat helemaal lukken, dank je wel :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan