Parameter doorgeven naar andere .php pagina
Code (php)
1
2
3
2
3
echo "Zijn deze gegeven juist en volledig?";
echo "<FORM METHOD=\"LINK\" ACTION=\"pagina2.php?idee=".$nummercombi."\"><INPUT TYPE=\"submit\" VALUE=\"Ja\"></FORM>";
echo "<FORM METHOD=\"LINK\" ACTION=\"javascript:history.back(1)\"><INPUT TYPE=\"submit\" VALUE=\"Nee\"></FORM>";
echo "<FORM METHOD=\"LINK\" ACTION=\"pagina2.php?idee=".$nummercombi."\"><INPUT TYPE=\"submit\" VALUE=\"Ja\"></FORM>";
echo "<FORM METHOD=\"LINK\" ACTION=\"javascript:history.back(1)\"><INPUT TYPE=\"submit\" VALUE=\"Nee\"></FORM>";
Als ik boven de knop zweef met de muis, geeft deze weer dat pagina2.php?idee=22 de link is waar hij naar toe zal gaan. Als ik op de knop klik, gaat hij echter naar pagina2.php, waardoor in pagina2.php mijn
geen resultaat geeft.... Iemand enig idee wat ik verkeerd doe/zou moeten aanpassen om het werkend te krijgen?
Verder is LINK geen geldige 'method'. Dit is GET of POST, in jouw geval wil je de data in de URL doorgeven, dus is het GET.
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
Zijn deze gegeven juist en volledig?
<form method="GET" action="pagina2.php?idee=<?php echo $nummercombi;?>">
<input type="submit" value="Ja">
</form>
<form method="GET" action="javascript:history.back(1)">
<input type="submit" value="Nee">
</form>
<form method="GET" action="pagina2.php?idee=<?php echo $nummercombi;?>">
<input type="submit" value="Ja">
</form>
<form method="GET" action="javascript:history.back(1)">
<input type="submit" value="Nee">
</form>
Waarom eigenlijk twee form's? Gezien de waardes bij elkaar horen, zou het prima in een één form-veld passen.
Gewijzigd op 01/10/2015 23:01:42 door - Ariën -
Je gebruikt twee aparte formulieren. Dat is niet erg maar waarschijnlijk zou je het met één af kunnen.
Dan 'echo' je bijna alle (statische) HTML. Waarom doe je het niet volgens het voorbeeldje hieronder?
Vervolgens bestaat er geen METHOD="link". Je mag kiezen uit GET of POST. (Dit is niet de volledige lijst maar voor nu even voldoende). Waarschijnlijk bedoel je de method GET omdat je wilt dat de waarde in je URL komt te staan.
Dan het antwoord op je uiteindelijke vraag: je URL heeft geen idee=22 omdat de querystring (het gedeelte achter de ? in de url) opnieuw wordt gemaakt aan de hand van je formulier. Daarbij worden alleen formuliervelden opgenomen die een name attribuut hebben, en die heb jij niet. Je kunt dit oplossen met een extra formulierveld met type="hidden" zodat die verborgen blijft:
Klein voorbeeldje hoe het ook kan:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
$nummercombi = 22;
?>
<p>Zijn deze gegeven juist en volledig?</p>
<form action="pagina2.php" method="get">
<input type="hidden" name="idee" value="<?php echo $nummercombi; ?>">
<input type="submit" value="Ja">
</form>
$nummercombi = 22;
?>
<p>Zijn deze gegeven juist en volledig?</p>
<form action="pagina2.php" method="get">
<input type="hidden" name="idee" value="<?php echo $nummercombi; ?>">
<input type="submit" value="Ja">
</form>
Toevoeging op 01/10/2015 23:28:36:
@aar: Jouw voorbeeldje gaat ook niet werken en zou wel werken in de POST method.
Bedankt voor de antwoorden, het werkt nu! (Nou ja, dit stukje dan, loop inmiddels weer ergens anders tegenaan, maar morgen weer een dag....)