login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Pagina wordt gedownload bij submit

Offline Maarten - 22/04/2006 12:50
Avatar van MaartenErelid Ik zit met een gek probleem. Ik ben bezig met een financieel systeem, en daar heb je dus verscheidene formulieren om zaken in te vullen, bv. een verkoopformulier. Dat werkt naar behoren, maar nu doe ik de uitgaven, en wanneer je op de submit drukt geeft hij altijd dat venster om index.php te downloaden..? (form is index.php?x=transacties&actie=uitgave).
Andere forms in die trent, zoals het verkoopformulier, klantenformulier,.. doen dat niet.. 
  1. <h1>Transacties :: Uitgave</h1>
  2. <?php
  3. if($_SERVER['REQUEST_METHOD'] == 'POST') {
  4. $fout = array();
  5. if(trim($_POST['type']) == '') {
  6. $fout[] = 'Je moet de aard van de uitgave invullen.';
  7. }
  8.  
  9. if(!is_numeric($_POST['bedrag'])) {
  10. $fout[] = 'Je moet een geldig bedrag invullen.';
  11. }
  12.  
  13. if(count($fout) > 0) {
  14. echo jsAlert('De uitgave werd niet opgeslaan.\n* '.implode('\n* ',$fout));
  15. } else {
  16. $t = new transactie('uitgave');
  17. $t->klant(1);
  18. $t->betaald(true);
  19. $t->betaalwijze('cash');
  20. $t->uitgave($_POST['type']);
  21. $t->bedrag($_POST['bedrag']);
  22. $t->uitvoeren();
  23. header('Location: index.php?x=transacties&actie=archief&transactieId='.$t->transID);
  24. }
  25.  
  26.  
  27. }
  28. ?>
  29. <form action="<?=htmlentities($_SERVER['REQUEST_URI'])?>" method="post">
  30. <table class="tabel" cellpadding="3" cellspacing="0">
  31. <tr>
  32. <td>Aard van de uitgave:</td>
  33. <td><input type="text" name="type" class="box" id="type" value="<?=(isset($_POST['type']) ? htmlentities($_POST['type']) : '')?>" /> [ <a href="#" onclick="document.getElementById('type').value = 'Bank';">Bank</a> ] [ <a href="#" onclick="document.getElementById('type').value = 'Restaurant';">Restaurant</a> ] [ <a href="#" onclick="document.getElementById('type').value = 'Post';">Post</a> ]</td>
  34. </tr>
  35. <tr>
  36. <td>Bedrag:</td>
  37. <td>&euro; <input type="text" name="bedrag" class="box" style="width: 100px; " value="<?=(isset($_POST['bedrag']) ? htmlentities($_POST['bedrag']) : '')?>" /></td>
  38. </tr>
  39. <tr>
  40. <td></td>
  41. <td><input type="submit" class="submit" value="Uitgave opslaan" /></td>
  42. </tr>
  43. </table>
  44. </form>


'k Snap echt niet hoe dat nu kan 

3 antwoorden

Gesponsorde links
Offline vinTage - 22/04/2006 12:55
Avatar van vinTage Nieuw lid Moet die htmlentities bij de formactie erbij ?
Offline Wim - 22/04/2006 12:56
Avatar van Wim Crew algemeen
  1. <h1>Transacties :: Uitgave</h1>
  2. <?php
  3. if(isset($_POST['submit']) {
  4. $fout = array();
  5. if(trim($_POST['type']) == '') {
  6. $fout[] = 'Je moet de aard van de uitgave invullen.';
  7. }
  8.  
  9. if(!is_numeric($_POST['bedrag'])) {
  10. $fout[] = 'Je moet een geldig bedrag invullen.';
  11. }
  12.  
  13. if(count($fout) > 0) {
  14. echo jsAlert('De uitgave werd niet opgeslaan.\n* '.implode('\n* ',$fout));
  15. } else {
  16. $t = new transactie('uitgave');
  17. $t->klant(1);
  18. $t->betaald(true);
  19. $t->betaalwijze('cash');
  20. $t->uitgave($_POST['type']);
  21. $t->bedrag($_POST['bedrag']);
  22. $t->uitvoeren();
  23. header('Location: index.php?x=transacties&actie=archief&transactieId='.$t->transID);
  24. }
  25.  
  26.  
  27. }
  28. ?>
  29. <form method="post">
  30. <table class="tabel" cellpadding="3" cellspacing="0">
  31. <tr>
  32. <td>Aard van de uitgave:</td>
  33. <td><input type="text" name="type" class="box" id="type" value="<?=(isset($_POST['type']) ? htmlentities($_POST['type']) : '')?>" /> [ <a href="#" onclick="document.getElementById('type').value = 'Bank';">Bank</a> ] [ <a href="#" onclick="document.getElementById('type').value = 'Restaurant';">Restaurant</a> ] [ <a href="#" onclick="document.getElementById('type').value = 'Post';">Post</a> ]</td>
  34. </tr>
  35. <tr>
  36. <td>Bedrag:</td>
  37. <td>&euro; <input type="text" name="bedrag" class="box" style="width: 100px; " value="<?=(isset($_POST['bedrag']) ? htmlentities($_POST['bedrag']) : '')?>" /></td>
  38. </tr>
  39. <tr>
  40. <td></td>
  41. <td><input type="submit" name="submit" class="submit" value="Uitgave opslaan" /></td>
  42. </tr>
  43. </table>
  44. </form>


give it a try...

Heb hetzelfde probleem ook ooit gehad, en mijn oplossing was om het opnieuw te scripten :/
Offline Maarten - 22/04/2006 13:54 (laatste wijziging 22/04/2006 14:06)
Avatar van Maarten Erelid vinTage: dat is omdat er in m'n URL wel ergens een & staat, en volgens de W3-richtlijnen moet dat &amp; zijn 

@Wim: I'll give it a try

edit: heb het gevonden, het was een fout in de transactieclass:
  1. <?php
  2. function bedrag($b) {
  3. $d = array('verkoop','verkoop:factuur');
  4. if(!in_array($this->type,$d)) {
  5. $this->bedrag= $b;
  6. // Niet van toepassing op verkoop
  7. // Bij verkoop -> som van $this->producten
  8. }
  9. }
  10. ?>

Ipv $this->bedrag = $b had ik $this->bedrag($b); gezet maar dat is dus nogal idioot 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.216s