Direct naar de link <a name="purchasing"> wordt verzonden. In plaats van de top van de pagina.
Nu heb ik een script:
<?php
echo "<select name=\"id\">";
while($row = mysql_fetch_array($query) {
echo "<option value=\"".$row['nummer']."#".$row['id']."\">".$row['naam']."</option>";
}
?>
Als je dit formulier verzet krijg je het volgende URL:
.../?id=$row['nummer']#$row['id']
Bijvoorbeeld:
.../?id=1#4
Dat is niet het geval. Er komt namelijk dit te staan, bijv.:
.../?id=1%234
%23 is kenelijk het zelfde als een #? Hoe los ik dit probleem op?
Ik wil namelijk gewoon ?id=1#4 hebben als ik het formulier verzend.
Waarschijnlijk als je het er op een andere manier mee zend, gaat het wel ;-) (bijvoorbeeld in de <form>, ik weet alleen niet of dit kan, omdat je geen getwaarden (index.php?id=2) mee kan sturen in de <form>, als de method op GET staat.
Een # neerzetten ipv # krijg je het zelfde resultaat.
Maar ik wil namelijk wel een #... op het eind, omdat je anders telkens de pagina moet scrollen, dus dat is geen optie.
<form action="#..." method="get"> werkt niet.
EDIT:
Het is gelukt om method="post" ervan te maken. Alleen lukt het niet om:
< form action="index.php#$row['id']" ervan te maken. Dus hoe stuur je dan ook nog die $row['id'] mee, waardoor het later in de <form action="" terecht kan komen?
Zoiets :S
action="index.php#$_POST['id']" dat lukt niet?
Nou eigenlijk niet, want het row['nummer'] en row['id'] zijn met elkaar verbonden.
Het ligt dus aan wat je voor row['naam'] kiest.
<?php
echo "<select name=\"id\">";
while($row = mysql_fetch_array($query) {
echo "<option value=\"".$row['nummer']."#".$row['id']."\">".$row['naam']."</option>";
}
?>
Daarom staat het hier ook in een while (in een drop down selectie).