På en beställningsida kan man bocka för vilka produktbroshyrer man vill beställa. Produkterna hämtas från databasen och namnet på bockrutorna blir därför dynamiskt.
Hur tar man hand om detta innan man skickar mailet med uppgifter om vilka rutor som är valda. Gör man som i perl att man först delar upp det som skickas med Post eller finns det möjligen någon annan variant i PHP som man hellre använder?
Formulärdata
2 svar · 160 visningar · startad av FlashX
Menar du hur man ser vilken POST-data som kommit in? En ledtråd: $HTTP_POST_VARS ;)
Men varför inte göra så att produktnamnen hamnar i en array i stället?
order_catalogue.php
<h1>Beställ katalog om...</h1>
<form name="place_catalogue_order.php" method="post">
<input type="checkbox" name="catalogues[]" value="1"> Frukter<br>
<input type="checkbox" name="catalogues[]" value="2"> Bär<br>
<input type="checkbox" name="catalogues[]" value="3"> Rotfrukter<br>
</form>
place_catalogue_order.php
<?php
$sql = sprintf('SELECT * FROM katalogtabell WHERE katalogtyp IN (%s)', implode(',', $catalogues));
// $sql == "SELECT ... WHERE katalogtyp IN (1,2,3)" om man markerade alla typer
?>
------------------
You can be a coward for a few minutes, or dead forever. /Rincewind
I en array hamnar de ju automagiskt i eftersom det är en sql-fråga.
Jag måste veta vilken data som kommer med Post och det är fullt möjligt att det var $HTTP_POST_VARS som jag letade efter :)
[r]
Det var det som löste mina problem
reset ($HTTP_POST_VARS);
while (list ($key, $val) = each ($HTTP_POST_VARS)) {
// ...
}
Många tack :)
[/r]
[Redigerat av FlashX den 07 dec 2001]