login  Naam:   Wachtwoord: 
Registreer je!
 Forum

mailform geeft niks weer

Offline leendert - 25/08/2005 20:54
Avatar van leendertHTML beginner Hoe komt het dat dit mailform niks weer geeft?

wat doe ik verkeerd?

  1. <?php
  2.  
  3. class formControle
  4. {
  5. function controle()
  6. {
  7. $this->aErrors = array();
  8. if (empty($_POST['sNaam']))
  9. {
  10. $aErrors[] = "Naam invullen";
  11. return false;
  12. }
  13. return true;
  14. }
  15.  
  16. function check($value)
  17. {
  18. if ( isSet ( $aErrors ) AND ( count ( $aError ) > 0 ) )
  19. {
  20. foreach ( $aErrors as $value )
  21. {
  22. return $aErrors['$value'];
  23. }
  24. }
  25. return true;
  26. }
  27.  
  28. }
  29.  
  30. if ( $_SERVER['REQUEST_METHOD'] == 'POST' )
  31. {
  32. $sControle = new formControle;
  33. $sControle->controle();
  34. $sControle->check($_POST['sNaam']);
  35.  
  36. if ($sControle->controle()===true)
  37. {
  38. echo "Er zijn geef fouten";
  39. }
  40. else
  41. {
  42. echo check();
  43. }
  44. }
  45. else
  46. {
  47. ?>
  48. <form method="post" action="" >
  49. Naam: <input type="text" name="sNaam" value="" />
  50. <input type="submit" name="submit" value="Opslaan" />
  51. </form>
  52. <?php
  53. }
  54. ?>

10 antwoorden

Gesponsorde links
Offline DRUNK - 25/08/2005 21:02 (laatste wijziging 25/08/2005 21:03)
Avatar van DRUNK PHP gevorderde Snap je het wel?
Waar gaat het fout, wat gebeurd er wel/niet?
Waar komt de check() functie vandaan? Bedoel je niet $sControle->check();?

Ik denk dat we je hier iets beter kunnen helpen als je iets meer omschrijft en iets minder code geeft ;).
Offline leendert - 25/08/2005 21:20
Avatar van leendert HTML beginner Ja ik snap het aardig ja.
Waar het fout gaat? Hij geeft gewoon helemaal NIKS weer. Geen error en ook geen formulier.

-Waar komt de check() functie vandaan? Bedoel je niet $sControle->check();?

Nee hij moet toch op de $value checken?

Dit is toch niet veel code:S
Offline Ontani - 25/08/2005 21:28
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
bij mij geeft ie het form gewoon weer 
Offline DRUNK - 25/08/2005 21:31 (laatste wijziging 25/08/2005 21:43)
Avatar van DRUNK PHP gevorderde 1. Waarom declareer je je vars binnen je klass niet? | var $aErrors;
2. return $aErrors['$value']; << zoek de fout | hint: wat doen vars tussen ''?
3. Wie/wat is check()? En wat doet deze? niets..? (heb het niet over formControle::check())
Offline Ibrahim - 25/08/2005 21:34
Avatar van Ibrahim PHP expert Bij mij ook. Waar test jij deze script eigelijk. Op je pc kun je het alleen testen als je php hebt geinstalleerd op je pc. En apache ook nog 

Als het bij een host op internet is, moet je wel nakijken of die host wel php ondersteunt. WAMP5 is een leuk pakket waar je op je eigen pc php scripts kunt testen 
Offline leendert - 26/08/2005 08:44 (laatste wijziging 26/08/2005 08:51)
Avatar van leendert HTML beginner @DRUNK

Ik ben net begonnen met php dus fouten die ik maar hoor ik graag ;).

2. return $aErrors['$value']; << zoek de fout | hint: wat doen vars tussen ''?

$value is hier toch een string? dus...
Wat bedoel je precies met punt 3?

@siliecom14
Ik programmeer al 'iets' ;) langer php hoor dus ik weet wel dat je dit apache moet draaien.!

edit:
Hij geeft inderdaad wel een form weer maar dan komt die met de melding undefined function: check()
Offline ikkedikke - 26/08/2005 10:00 (laatste wijziging 26/08/2005 10:00)
Avatar van ikkedikke PHP expert is misshcien maar en idee maar in "controle()" geef je die $aErrors als key een cijfer (0 denk ik) omdat je niks tussen die blokhaken hebt staan, dus datn is het niet zo gek dat
  1. <?return $aErrors['$value'];?>
niets geeft. Die bestaat niet.
  1. <?
  2. foreach ( $aErrors as $iKey => $sValue )
  3. {
  4. return $aErrors[$iKey];
  5. }
  6. ?>
lijkt me beter
Offline leendert - 26/08/2005 10:09
Avatar van leendert HTML beginner Nee want dan krijg ik het id terug van de error maar ik moet de melding krijgen.
Offline ikkedikke - 26/08/2005 10:43
Avatar van ikkedikke PHP expert dit geeft toch echt de melding terug hoor
  1. <?
  2. $aArray = array(0=>'vul je naam in');
  3. echo $aArray[0];
  4. ?>
geeft ook de melding, niet de key


Offline Rens - 26/08/2005 11:03
Avatar van Rens Gouden medaille

Crew algemeen
Op regel 43 staat check();.
Die functie staat in je class, dus moet je $sControle-> er nog voor zetten.
Dan weet PHP ook dat ie de functie uit de class moet gebruiken.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.229s