login  Naam:   Wachtwoord: 
Registreer je!
 Forum

fout bij het laden van pagina

Offline texarcana - 26/08/2006 16:02 (laatste wijziging 26/08/2006 16:15)
Avatar van texarcanaNieuw lid Hallo

ik heb een pagina met een tekstveld (name = invullen) en een submit knop. Bij het al dan niet of wel invullen moet er iets geëchoed worden.

//edit

if ($_POST['invullen'] != ""){
echo "tekstveld ingevuld";
}
else{
echo "tekstveld niet ingevuld";
}

Wanneer ik nu voor de allereerste keer mijn pagina open, dan krijg ik de volgende foutmelding:

Notice: Undefined index: invullen in c:\program files\easyphp1-8\www\testen\index.php on line...

Normaal bij het laden van een pagina, als ie de post niet vindt, dan vult ie die toch met een lege string ?
Wat kan ik doen dat die pagina direct goed laadt en dat ie meteen de juiste tekst echoed ?

10 antwoorden

Gesponsorde links
Offline Crazed - 26/08/2006 16:05 (laatste wijziging 26/08/2006 16:06)
Avatar van Crazed PHP interesse $_POST['invullen']

tussen aanhalingstekens dus.
Offline texarcana - 26/08/2006 16:15
Avatar van texarcana Nieuw lid ff editeren hier
want in originele code staat het tussen '' en toch geeft ie die fout, ksnap er niks van
Offline CDNC - 26/08/2006 16:20
Avatar van CDNC PHP ver gevorderde of maak er eens van: if(!empty($_POST['iets']))
Offline Xtent - 26/08/2006 16:20
Avatar van Xtent Onbekend $_POST['invullen'] zal altijd eerst leeg zijn, controleer of de submit knop aangeklikt is en controleer daarna pas of $_POST['invullen'] leeg is of niet.
Offline texarcana - 26/08/2006 16:23
Avatar van texarcana Nieuw lid zal ff proberen,
maar als $_POST['invullen'] altijd eerst leeg is, dan moet ie toch gewoon meteen de else uitvoeren ?
Offline Xtent - 26/08/2006 16:25
Avatar van Xtent Onbekend Nee, want $_POST['invullen'] is van te voren nog niet aangemaakt. 
Offline Maarten - 26/08/2006 16:26 (laatste wijziging 26/08/2006 16:26)
Avatar van Maarten Erelid $_POST['invullen'] bestaat gewoon niet bij het laden van de pagina, die bestaat pas na de submit.
if(isset($_POST['invullen']) && empty($_POST['invullen'])) {
// empty
}
Offline CDNC - 26/08/2006 16:31
Avatar van CDNC PHP ver gevorderde empty() checkt ook of die bestaat en geeft geen notice als het niet bestaat dus isset is overbodig.

en wat is het nut van (isset() && empty()) ? op die manier samen?
Offline texarcana - 26/08/2006 16:32
Avatar van texarcana Nieuw lid ahzo, dit is terug iets nuttigs bijgeleerd en ga ik dus vanaf nu nooit meer vergeten

alles werkt nu mooi, hartelijk bedankt voor jullie hulp
Offline Voldemort - 26/08/2006 17:16 (laatste wijziging 26/08/2006 17:22)
Avatar van Voldemort PHP ver gevorderde @texarcana: Ik doe steeds dit en dat werkt perfect:

  1. <?php
  2. if(isset($_POST['submit']))
  3. {
  4. //Formulier is verzonden, hier komen checks ivm checken of alles ingevuld is, etc en achteraf de werkelijke actie zoals users aan de DB toevoegen
  5. }
  6. else
  7. {
  8. //Formulier is NIET verzonden, hier komt je formulier en de verzendenknop heeft als name submit
  9. }
  10. ?>


@CDNC:

Is niet hetzelfde:

  1. <?php
  2. $var = '';
  3. $var2 = 'Tekst';
  4.  
  5. isset($var); //=> TRUE
  6. empty($var); //=> TRUE
  7.  
  8. isset($var2); //=> TRUE
  9. empty($var2); //=> FALSE
  10.  
  11. isset($var3); //=> FALSE
  12. empty($var3); //=> TRUE (en een Notice als je niet eerst met isset test)
  13.  
  14. //Beide FALSE krijgen is onmogelijk tenzij je !isset of !empty gebruikt
  15. ?>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.198s