login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Form send, maar geeft geen naam maar getallen.

Offline DieHard - 04/06/2008 16:00 (laatste wijziging 04/06/2008 16:15)
Avatar van DieHardPHP interesse Ik heb een form die automatisch uitrekent, maar als ik de verstuur krijg ik alleen de getallen (de value) in mijn email.

Hoe kan ik ervoor zorgen dat het aantal "clients" word weergeven?

  1. <script>
  2. function changetotalclients(form){
  3. pages = parseFloat(form.clients.value);
  4. pages = parseFloat(form.pages.value);
  5.  
  6. a=clients;
  7. b=pages;
  8.  
  9. g = a * b;
  10. form.clients.value = +g.toFixed(2);
  11. }
  12. </script>


  1. </select></br>
  2. <select id="clients" name="clients" onChange="changetotalclients(this.form)">
  3. <option value="0">None</option>
  4. <option value="7.2">8 clients</option>
  5. <option value="9">10 clients</option>
  6. <option value="11.4">12 clients</option>
  7. <option value="13.3">14 clients</option>
  8. <option value="15.2">16 clients</option>
  9. <option value="18">18 clients</option>
  10. <option value="20">20 clients</option>
  11. </select></br>
  12.  
  13. </select></br>
  14. <select id="pages" name="pages" onChange="changetotalclients(this.form)">
  15. <option value="0">None</option>
  16. <option value="1">1 Page</option>
  17. <option value="2">2 Pages</option>
  18. <option value="4">4 Pages</option>
  19. <option value="6">6 Pages</option>
  20. <option value="8">8 Pages</option>
  21. <option value="10">10 Pages</option>
  22. <option value="12">12 Pages</option>
  23. </select></br>


  1. <?php
  2. $subject = "totalclients: $homepage";
  3. $message = "clients: "." $clients ". ">\n";
  4. $message .= "pages: "." $pages ". ">\n";
  5. $header = "From: " . $name2 . " <" . $email3 . ">\n";
  6. $header .= "Reply-To: " . $name2 . " <" . $email3 . ">\n";
  7. $header .= "X-Priority: 1";
  8. ?>

10 antwoorden

Gesponsorde links
Offline marten - 04/06/2008 16:01
Avatar van marten Beheerder Moeten we toch echt meer je van je script zien.
Offline DieHard - 04/06/2008 16:03
Avatar van DieHard PHP interesse Welk gedeelte moet je daarvoor zien?
Offline dieterke - 04/06/2008 16:05
Avatar van dieterke Nieuw lid heel je formulier, de manier waarop die naar jou wordt gezonden en het javascriptje
Offline DieHard - 04/06/2008 16:16
Avatar van DieHard PHP interesse Updated first post..
Offline Roland - 04/06/2008 16:45
Avatar van Roland PHP expert var clients = Math.ceil(form.clients.value); je krijgt nu het getal dat in de option staat...

(Math.ceil(7.2) = 8)

In je code van t startbericht gebruik je 2x pages zonder deze te defineren...

var pages, clients; // defineer variablen
pages = ...;
clients = ...;
Offline DieHard - 04/06/2008 17:47 (laatste wijziging 04/06/2008 17:47)
Avatar van DieHard PHP interesse Ik heb het script kort hier opgezet en het orgineel werkt gewoon, het is alleen een voorbeeld.

Als ik je uitleg snap dan moet ik dit toevoegen;
var clients = Math.ceil(form.clients.value);

Waar moet dat dan komen te staan? hier -->

  1. <script>
  2. function changetotalclients(form){
  3. pages = parseFloat(form.clients.value);
  4. pages = parseFloat(form.pages.value);
  5. var clients = Math.ceil(form.clients.value); // op deze plek?
  6.  
  7. a=clients;
  8. b=pages;
  9.  
  10. g = a * b;
  11. form.clients.value = +g.toFixed(2);
  12. }
  13. </script>
Offline Roland - 04/06/2008 19:07
Avatar van Roland PHP expert Ligt eraan wat je van plan bent.. raak er nu geen wijs uit wat je probeert te doen.

pages = parseFloat(form.clients.value);
pages = parseFloat(form.pages.value);

Je overschrijft hier de waarde van clients.value, dus die eerste regel is al doelloos.

a=clients;

clients bestaat dus niet (als variable (in je starttopic had je die regel van mij nog niet toegevoegd.))

g = a * b;

g zal geen juiste waarde hebben omdat 'a' dus undefined is.
Offline DieHard - 04/06/2008 19:24 (laatste wijziging 04/06/2008 19:25)
Avatar van DieHard PHP interesse Nouja ik heb dit er alleen zo bij gezet omdat er werd gevraagd om het hele script te plaatsen, dat is dus een voorbeeld en het is mogelijk dat dat niet klopt ja.

Het gaat mij erom dat ik in een email, de waarden van "7.2" krijg terwijl ik in de email "8 clients" wil krijgen.
Anders moet ik elke keer gaan opzoeken welke waarde bij welke aantal clients hoort.

  1. </select></br>
  2. <select id="clients" name="clients" onChange="changetotalclients(this.form)">
  3. <option value="0">None</option>
  4. <option value="7.2">8 clients</option>
  5. <option value="9">10 clients</option>
  6. <option value="11.4">12 clients</option>
  7. <option value="13.3">14 clients</option>
  8. <option value="15.2">16 clients</option>
  9. <option value="18">18 clients</option>
  10. <option value="20">20 clients</option>
  11. </select></br>
  12.  
  13. </select></br>
  14. <select id="pages" name="pages" onChange="changetotalclients(this.form)">
  15. <option value="0">None</option>
  16. <option value="1">1 Page</option>
  17. <option value="2">2 Pages</option>
  18. <option value="4">4 Pages</option>
  19. <option value="6">6 Pages</option>
  20. <option value="8">8 Pages</option>
  21. <option value="10">10 Pages</option>
  22. <option value="12">12 Pages</option>
  23. </select></br>
Offline memar - 05/06/2008 03:10 (laatste wijziging 07/06/2008 00:35)
Avatar van memar Nieuw lid In je php script:

  1. $clients = ceil($clients);
  2. if ($clients%2 != 0) {
  3. $clients++;
  4. }
  5. $clients .= " clients";


Dat moet voor het deel (php) wat jij gepost hebt..

11.4 geeft dan 12 clients,
13.3 geeft 14 clients,
enz...

En er stond ook denk ik een foutje in je js:
  1. form.clients.value = +g.toFixed(2);


Waarom staat er + voor g?

mvg memar
Offline Ibrahim - 08/06/2008 00:54
Avatar van Ibrahim PHP expert Ik snap het even niet. Waarom zou je zulke JavaScript code schrijvne ? Je maakt gebruik van PHP, waarom gewoon niet method="post" en in PHP gewoon $_POST gebruiken ?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.235s