login  Naam:   Wachtwoord: 
Registreer je!
 Forum

post probleem

Offline webmaker - 30/10/2006 22:43
Avatar van webmakerPHP interesse hallo, ik heb een post probleem naar mijn database ik heb een formulier met 2 velden, het bestand noemt test.php. Aan de hand van een id zoekt hij in get. In mijn formulier heb ik $_server['php_self'] gedefineerd. Maar toch als ik post krijg ik alleen test.php in plaats van test.php?id=4.

Als ik op de hyperlink klik krijg ik nogthans dit te zien maar het is alleen als ik post dat hij de $_get weglaat. Aan wat zou dit liggen.

7 antwoorden

Gesponsorde links
Offline BigTeddy - 30/10/2006 22:50
Avatar van BigTeddy Gouden medaille

PHP gevorderde
Je formulier heeft een action dat er bv zo uitzien?
  1. <form method='POST' action='zend.php?id=<?=$id?>' />


Zodat erbij het klikken die actie wordt uitgevoerd, stuur alles met een methode post naar de pagina zend.php.

Op de pagina zend.php dien je enkel $_GET['id'] te plaatsen om het id uit je url te halen. Je kunt natuurlijk ook het id doorgeven dmv een hidden field in je form.

Form velden haal je op dmv $_POST['veld_naam']
Offline webmaker - 30/10/2006 22:57
Avatar van webmaker PHP interesse het probleem zit hem dat als je post hij in else $_get niet meer herkent en toch zou ik het graag in 1 pagina doen.
Offline Simon - 30/10/2006 23:46
Avatar van Simon PHP expert
  1. <?php
  2. if(isset($_POST['form'])) { //als je form gepost werd
  3. //je variabelen
  4. $id = $_GET['id'];
  5. $naam = $_POST['naam'];
  6. echo "Gebruik ID ".$id." heeft als gebruikersnaam ".$naam;
  7. }
  8. else { //form niet gepost
  9. ?>
  10. <form method="post" action="test.php?id=5">
  11. <input type="text" name="naam" />
  12. </form>
  13. <?php
  14. }
  15. ?>

werkt zoiets dan niet?
Offline BigTeddy - 30/10/2006 23:55
Avatar van BigTeddy Gouden medaille

PHP gevorderde
Zou toch moeten...

@Simon
Die je geen hidden field mee om de isset te valideren?
<input type="hidden" name="form" />

Offline Simon - 31/10/2006 00:23
Avatar van Simon PHP expert oja, en ik vergat de submit knop, maja, dat kan hij zelf wel aanvullen 
Offline Thomas - 31/10/2006 09:32
Avatar van Thomas Moderator $_SERVER['PHP_SELF'] (hoofdletters) bevat géén querystring-variabelen.
Wat jij nodig hebt is waarschijnlijk $_SERVER['REQUEST_URI'].
Offline webmaker - 31/10/2006 09:42 (laatste wijziging 31/10/2006 09:47)
Avatar van webmaker PHP interesse
Citaat:
[..code..]
werkt zoiets dan niet?


Dat is het nu juist in else heb je test.php?id=5, maar die id moet hij uit $_get["id"] halen. En die get variabele herkent hij niet in else alleen in if.  

En met $_SERVER['php_self'] lukt het ook niet.
Bewerk: bedankt FangorN het lukt met $_SERVER['REQUEST_URI'] lukt het. Weer iets bijgeleerd  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.197s