Parameter doorgeven naar andere .php pagina

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Manon van de Wiel

Manon van de Wiel

01/10/2015 22:45:44
Quote Anchor link
Ik heb in mijn "hoofdpagina" de volgende code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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>";


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

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$_GET["idee"];


geen resultaat geeft.... Iemand enig idee wat ik verkeerd doe/zou moeten aanpassen om het werkend te krijgen?
 
PHP hulp

PHP hulp

15/01/2025 13:50:10
 
- Ariën  -
Beheerder

- Ariën -

01/10/2015 22:56:17
Quote Anchor link
Het is niet nodig om deze regels volledig te echoén, en HTML hoort overigens in kleine letters.

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)
PHP script in nieuw venster Selecteer het PHP script
1
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>


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 -
 
Frank Nietbelangrijk

Frank Nietbelangrijk

01/10/2015 23:21:19
Quote Anchor link
Hallo Manon, Welkom.

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)
PHP script in nieuw venster Selecteer het PHP script
1
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>


Toevoeging op 01/10/2015 23:28:36:

@aar: Jouw voorbeeldje gaat ook niet werken en zou wel werken in de POST method.
 
Manon van de Wiel

Manon van de Wiel

01/10/2015 23:30:00
Quote Anchor link
Bedankt voor de antwoorden, het werkt nu! (Nou ja, dit stukje dan, loop inmiddels weer ergens anders tegenaan, maar morgen weer een dag....)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.