Avatar billede lee Nybegynder
26. januar 2003 - 02:26 Der er 94 kommentarer og
1 løsning

Form

Hej

Jeg ved ikke helt om det er den rette Kategori...

Jeg har brug for at kunne lave en form der gør således :

Der er 5 valgmuligheder.
Man skal kunne vælge alle 5 eller minimum 1 (ved afhak).
alle 5 valgmuligheder har en pris udfor.
Når man har valgt skal prisen lægges sammen (for de afhakkede valg).
Derefter skal man kunne klikke send.
Derefter skal både jeg og brugeren få en mail.
Brugeren skal bekræfte de har fået mailen.

Hvordan gør jeg ?

/Lee
Avatar billede nyhjem Nybegynder
26. januar 2003 - 02:37 #1
Hvis prisen skal opdateres real time, når der klikkes af i felterne skal du bruger javascript til at gøre dette :)
herefter kan du loade værdierne for dine felter ind i et array og pludse den sammen :)
tilsidst sender du en mail med mail(); kommandoen :)
Avatar billede kinguru Nybegynder
26. januar 2003 - 02:42 #2
Det kunne måske godt lade sig gøre hvis man laver en allerhelvedes til masse (eller faktisk kun 5) querystrings, til de 5 valgmuligheder.
Sådan som f.eks. pris.php?valg1=true&valg2=false&valg3=false&valg4=true&valg5=true
men så skal der jo så bare sørges for at opdatere siden HVER gang brugeren klikker på et afkrydsningsfelt, for at opdatere prisen..

Det er nok lige langt fra optimalt, men det kunne godt fungere i rent php! :/

Men det mest optimale er nok som sagt at gøre det med javascript, til den der real time pris. :-)
Avatar billede jakoba Nybegynder
26. januar 2003 - 02:58 #3
selve formularen laver du først i ganske almindelig html


<form action="phpside.php" ondubmit="return validerFormData(this);">

<input type='checkbox' name="cb0" value="19.95" onclick="udregn(this.form)"> leverpostej 19,95<br>
<input type='checkbox' name="cb1" value="14.95" onclick="udregn(this.form)"> 450 gram røde pølser 14,95<br>
<input type='checkbox' name="cb2" value="12.50" onclick="udregn(this.form)"> 2 liter mælk 12,50<br>
<input type='checkbox' name="cb3" value="24.75" onclick="udregn(this.form)"> Lørdagskylling 24,75<br>
<input type='checkbox' name="cb4" value="100.00" onclick="udregn(this.form)"> 5 pakker rejer 100,00<br>
ialt: <input type='text' value="0.00" readonly name="ialt"><br>
<input type="submit" value="send bestilling" name="send">

</form>


og så et script oppe i <head sektionen med de 2 funktioner 'validerFormData' og 'udregn', og også en hjælpefunktion 'toDecimaler'

<script type='text/javascript'>

function validerFormData( formObjekt ) {
    var felter = formObjekt.elements;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' && felter[i].checked ) {
            //det er mindst eet felt valgt
            return true;
        }           
    }
    return false;  // ingen felter var valgt
}; //end validerFormData( Form objekt ) -> boolean


function toDecimaler ( tal ) {
    if ( typeof( tal ) == String ) tal = parseFloat( tal );
    talTx = "_" +Math.round( 100.0*tal ) +"_"
    if ( talTx.length < 5 ) {
        preZero = "_000";
        taltx = preZero.substring(0,6-talTx.length) +talTx.substring(1);
    };
    talTx = talTx.substring(1,talTx.length-3) +","
            + talTx.substring(talTx.length-3,talTx.length-1);
    return talTx;
}; //end toDecimaler ( nummer ) -> string


function udregn( formObjekt ) {
    var felter = formObjekt.elements;
    var sum = 0;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' && felter[i].checked ) {
            sum = sum + parseFloat( felter[i].value );
        }           
    }
    felter['ialt'].value = toDecimaler( sum );
}; //end udregn( Form objekt )

</script>

Vi skal også have skrevet den der .php side, men jeg vi anbefale du laver html-siden først

mvh JakobA
Avatar billede jakoba Nybegynder
26. januar 2003 - 03:33 #4
ups. der er en stavefejl i linien
        taltx = preZero.substring(0,6-talTx.length) +talTx.substring(1);
nummer 2 t i 'taltx skal være med stort:
        talTx = preZero.substring(0,6-talTx.length) +talTx.substring(1);
Avatar billede lee Nybegynder
26. januar 2003 - 08:55 #5
SÅ er den der igen.. fik klikket udfør mens E, var gået ned.


Hej Jakoba ;o)

Nu har jeg så fået sat Formen ind, og rettet leverpostegen til cd'ere ;o)

Nu skal jeg blot have fragt omkostningerne med også.

Vil  du hjælpe mig med resten jakoba ?

/Lee
Avatar billede lee Nybegynder
26. januar 2003 - 08:56 #6
hov jeg mangler lige at sætte et link til dig ind her http://www.pspgrafik.dk/cdtuts.htm
Avatar billede jakoba Nybegynder
26. januar 2003 - 10:27 #7
hej.

ny version af funktion 'udregn'

function udregn( formObjekt ) {
    var felter = formObjekt.elements;
    var sum = 0;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' && felter[i].checked ) {
            sum = sum + parseFloat( felter[i].value );
        }         
    }
    felter['ialt'].value = toDecimaler( sum );
    felter['brutto'].value = toDecimaler( sum + 29.75 );  // tilføj fragtudgifter.

}; //end udregn( Form objekt )


tilføj et ekstra felt

at betale inklusive fragt: <input type='text' value="29.75" readonly name="brutto"><br>


Skal vi lave nogen regler med at hvis CD 5 er valgt udelukker den de andre, og lignende?

mvh JakobA
Avatar billede dennism Nybegynder
26. januar 2003 - 10:29 #8
lee >>

Skal der ikke også være mulighed for at bestille flere af hver slags?
Avatar billede jakoba Nybegynder
26. januar 2003 - 11:29 #9
på den side hvor formularen sendes til 'phpside.php' laver vi præcis de samme tests (nogen mennesker har javascript slået fra i berowseren)

<?php

if ( isset( $_POST['send'] ) ) {
        // formularen er blevet sendt
    extract( $_POST );    // gør udfyldte felter og checkbokse til hver sin variabel

    $fragt = 29.75;
    $boxe = array( 'cb0'=>50.00, 'cb1'=>50.00, 'cb2'=>50.00, 'cb3'=>50.00,
                  'cb4'=>190.00, 'cb5'=>90.00 );
    $netto = 0.0;
    foreach ( $boxe as $navn => $pris ) {
        if ( isset( ${$navn} ) $netto += $pris;
    }
    $brutto = $netto + $fragt;

    if ( $netto < 0.0000001 ) {
        echo "<p>Hvorfor betale fragtudgift uden at købe noger?<br>\n"
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>

    } else {
            // hurrae, en regederlig bestilling
        $vare = array( 'cb0'=>'Begynder Tutorials 50,00kr',
                      'cb1'=>'Øvede Tutorials 50,00kr',
                      'cb2'=>'Pro Tutorials 50,00kr',
                      'cb3'=>'3d pro tutorial 50,00kr',
                      'cb4'=>'Alle Tutorials 190,00kr',
                      'cb5'=>'kun Udskrift af Alle Tutorials 90,00kr'
                    );
        $mailtekst = "Du har bestilt: \n\n";
        foreach ( $vare as $navn => $tekst ) {
            if ( isset( ${$navn} ) $mailtekst .= $tekst ."\n";
        }
        $mailtekst .= "
plus porto: 29.75kr\nat betale: " .$brutto ."kr.\n

Dine CD'er bliver sendt såsnart banken giver mig besked
om at pengene er indsat på konto nummer 1234 1234567890
i Øster Hurups Egnsbank. (det tager ca 3 dage)

mange hilsener Lee osv osv

";

        $kundens_email = "ukendt@ukendt.dk";  // HOVSA, den skal vi have ham (M/K) til at fortælle i formularen

        $lees_email = "dinegen@emailadresse.dk";

        mail( $kundens_email,
              "Bestilleing af CD-er",
              $mailtekst,
              "cc: $lees_email\r\n"
            ."Reply-to: $lees_email" );
        // nu skulle der gerne blive sendt en mail både til dig og til kunden

    }
}

?>


det lærte vi så også lidt af. Vi skal have tilføjet et felt til formularen, hvor kunden kan skrive sin email adresse.

og vi skal have tilføjet  method='post'  i <form kommandoen på formularsiden.

( Det ender med at vi slår de to sider sammen til een; men lad os holde dem som 2 sider indtil videre :-))

Jeg kan desværre ikke selv teste php for tiden, så det må jeg lade dig om, prøv det og meld tilbage her.

mvh JakobA
Avatar billede lee Nybegynder
26. januar 2003 - 20:54 #10
dennism>> jo det var en god tanke ;o) tx

Jakoba>> nu gik det lige så godt, men SÅ tabte du mig på gulvet.
Jeg kan ikke følge hvad jeg skla gøre med dit sidste indlæg ???

Skal jeg her lave en helt ny side eller hvordan med det??

Dennism kom med en god idé, nemlig at man skal kunne bestille flere cd'ere ad gangen , kan du få det med ?

Og det med at man ved et valg udelukker andre, det er også en god idé.

Jeg kan af en eller anden grund ikke slette i dette indlæg så her kommer mine rester : Kan PlEg let

Indtil videre mange mange mange gange tak Jakoba... hvor er det dejligt med hjælp.

/Lee
Avatar billede lee Nybegynder
26. januar 2003 - 21:11 #11
jakoba>> så snart jeg fjerner den gamle udregning i alt... så virker det ikke ?


/Lee
Avatar billede dennism Nybegynder
26. januar 2003 - 21:16 #12
lee >>

Det er jo altid rart at kunne bidrage med gode ideer! :)
Avatar billede jakoba Nybegynder
26. januar 2003 - 21:19 #13
jep, meningen er en helt anden fil der hedder 'phpside.php'. det er den side formulare submittes til.
Lad endelig være med at gøre noget ud af den side aestetisk. den forsvinder igen.

det kan ikke begge dele være gode ideer. og jeg stemmer for dennis's. så folk fx kan købe 2 eller flere af samme cd til gaver op til jul.

men den anden er fjollet så, for søster (nær familie) skal naturligvis have den store Total CD, mens fætter Børge (langt ude) må nøjes med en 'Øvede Tutorials' :-))

Dog bliver det lidt forvirrende med "10 begynder tutorials", hvad med at sige "Mine begynder tutorials" istedet, så vi slipper for det tital man nemt kan rode sammen med antal-CD skiver.

Jep det er nemt nok at sætte et antal på ved hver checkboks.

mvh JakobA
Avatar billede jakoba Nybegynder
26. januar 2003 - 21:30 #14
re 21:11:27 >> den skal ikke fjernes, vi skal have den udregning begge steder.
i javascript for at få alting til at reagere hurtigt når brugeren tilføjer eller fjerne en cd.
i php fordi brugerens javascript måske er slået fra.
Avatar billede lee Nybegynder
26. januar 2003 - 21:45 #15
Så har jeg sat det ind http://www.pspgrafik.dk/cdtuts.htm men jeg tror ikke den virker som den skal ???

Jeg kan godt se krydsningen af de to muligheder, så det er nok bedst med mulighed for at skrive hvor mange stk man ønsker af hver.

/Lee
Avatar billede jakoba Nybegynder
26. januar 2003 - 22:01 #16
en rettelse i det jeg skrev i <form kommandoen:
      ondubmit="return validerFormData(this);">
det hedder onSubmit  (med s istedetfor d)
      onsubmit="return validerFormData(this);">

og så er der en parseerror i linie 16. det er de 2 echo linier som jeg ikke har afsluttet ordentligt:
        echo "<p>Hvorfor betale fragtudgift uden at købe noger?<br>\n"
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>
skal være
        echo "<p>Hvorfor betale fragtudgift uden at købe noger?<br>\n";
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>";
(der er tilføjet ; til den øverste og "; til den nederste.)

mvh JakobA
Avatar billede lee Nybegynder
26. januar 2003 - 22:03 #17
Ahhh på den måde re 21:11:27 så kan jeg falde til ro over den nød ;o)
Avatar billede lee Nybegynder
26. januar 2003 - 22:13 #18
http://www.pspgrafik.dk/cdtuts.htm Så er det rettet... men der er stadig noget der ikke stemmer

/Lee
Avatar billede lee Nybegynder
26. januar 2003 - 22:52 #19
Er det mig der har gjort noget forkert ???

/Lee
Avatar billede jakoba Nybegynder
26. januar 2003 - 23:00 #20
det er ikke til at sige, for jeg ved ikke hvad kode der står i filen, kun den fejl der kommer.
vil du paste den her?
Avatar billede lee Nybegynder
26. januar 2003 - 23:04 #21
<html>
<head>
<title>cdphp</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<?php

if ( isset( $_POST['send'] ) ) {
        // formularen er blevet sendt
    extract( $_POST );    // gør udfyldte felter og checkbokse til hver sin variabel

    $fragt = 29.75;
    $boxe = array( 'cb0'=>50.00, 'cb1'=>50.00, 'cb2'=>50.00, 'cb3'=>50.00,
                  'cb4'=>190.00, 'cb5'=>90.00 );
    $netto = 0.0;
    foreach ( $boxe as $navn => $pris ) {
        if ( isset( ${$navn} ) $netto += $pris;
    }
    $brutto = $netto + $fragt;

    if ( $netto < 0.0000001 ) {
        echo echo "<p>Hvorfor betale fragtudgift uden at købe noger?<br>\n";
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>";} else {
            // hurrae, en regederlig bestilling
        $vare = array( 'cb0'=>'Begynder Tutorials 50,00kr',
                      'cb1'=>'Øvede Tutorials 50,00kr',
                      'cb2'=>'Pro Tutorials 50,00kr',
                      'cb3'=>'3d pro tutorial 50,00kr',
                      'cb4'=>'Alle Tutorials 190,00kr',
                      'cb5'=>'kun Udskrift af Alle Tutorials 90,00kr'
                    );
        $mailtekst = "Du har bestilt: \n\n";
        foreach ( $vare as $navn => $tekst ) {
            if ( isset( ${$navn} ) $mailtekst .= $tekst ."\n";
        }
        $mailtekst .= "
plus porto: 29.75kr\nat betale: " .$brutto ."kr.\n</head>

Dine CD'er bliver sendt s&aring;snart banken giver mig besked
om at pengene er indsat p&aring; konto nummer 1234 1234567890
i Nordea Bank. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

www.pspgrafik.dk

<body bgcolor="#FFFFFF" text="#000000">

</body>
</html>

<p>";

        $kundens_email = "ukendt@ukendt.dk";  // HOVSA, den skal vi have ham (M/K) til at fortælle i formularen

        $lees_email = "lee@pspgrafik.dk";

        mail( $kundens_email,
              "Bestilleing af CD-er",
              $mailtekst,
              "cc: $lees_email\r\n"
            ."Reply-to: $info@pspgrafik.dk" );
        // nu skulle der gerne blive sendt en mail både til dig og til kunden

    }
}

?>



Her er den ;o)

/Lee
Avatar billede lee Nybegynder
26. januar 2003 - 23:44 #22
Her er cdtut siden :

html>
<head>
<title>pspgrafik - K&oslash;b cd med PSP Tutorials</title>
<META Name="description" Content="www.pspgrafik.dk - din danske support.">
<META Name="keywords" Content="Lee, Laursen, hjælp, danske sider, tutorial, begynder, øvede, nybegynder, pro, danmark, dansk, pap, forum, grafik, PSP, chat, animation, shop, 3d, pspgrafik, faq, afstemning, colour, palette , tut">
<meta http-equiv="expires" content="-1">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta HTTP-EQUIV="imagetoolbar" CONTENT="no">
<link rel="stylesheet" type="text/css" href="lee.css">
    <base target="_self">
   
<script type='text/javascript'>

function validerFormData( formObjekt ) {
    var felter = formObjekt.elements;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' && felter[i].checked ) {
            //det er mindst eet felt valgt
            return true;
        }         
    }
    return false;  // ingen felter var valgt
}; //end validerFormData( Form objekt ) -> boolean


function toDecimaler ( tal ) {
    if ( typeof( tal ) == String ) tal = parseFloat( tal );
    talTx = "_" +Math.round( 100.0*tal ) +"_"
    if ( talTx.length < 5 ) {
        preZero = "_000";
        talTx = preZero.substring(0,6-talTx.length) +talTx.substring(1);
    };
    talTx = talTx.substring(1,talTx.length-3) +","
            + talTx.substring(talTx.length-3,talTx.length-1);
    return talTx;
}; //end toDecimaler ( nummer ) -> string


function udregn( formObjekt ) {
    var felter = formObjekt.elements;
    var sum = 0;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' && felter[i].checked ) {
            sum = sum + parseFloat( felter[i].value );
        }         
    }
    felter['ialt'].value = toDecimaler( sum );
    felter['brutto'].value = toDecimaler( sum + 29.75 );  // tilføj fragtudgifter.

}; //end udregn( Form objekt )


</script>
   
</head>

<body bgcolor="#FFFFFF" bgproperties="FIXED" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" background="billederhp/v6site/v6bgstora.jpg" onLoad="MM_preloadImages('billederhp/v6site/tilbagev6.jpg')">
<table width="630" border="0" cellspacing="0" cellpadding="0" height="241">
  <tr>
    <td height="262" align="center" valign="top">
      <table width="630" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td align="center"> <br>
            <table width="600" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td background="billederhp/sidev31a.jpg" align="left" valign="top" width="10"><img src="billederhp/sidev32a.jpg" width="9" height="85"></td>
                <td rowspan="2" width="530">
                  <table width="498" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td>
                        <table width="590" border="0" cellspacing="0" cellpadding="3" class="ydretabel">
                          <tr align="right" valign="middle">
                            <td align="left" width="96" class="lysbg" valign="middle">
                              <p><b>Salg af Tutorials p&aring; Cd'ere.</b></p>
                            </td>
                            <td width="474" class="hvidbg" align="right" valign="bottom">&nbsp;</td>
                            <td width="26" class="hvidbg" align="right" valign="top"><a href="java script:history.go(-1)" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image4','','billederhp/v6site/tilbagev6.jpg',1)"><img name="Image4" border="0" src="billederhp/v6site/tilbagev6a.jpg" width="22" height="22"></a></td>
                          </tr>
                          <tr>
                            <td colspan="3" class="hvidbg" height="100">
                              <table width="590" border="0" cellspacing="0" cellpadding="3">
                                <tr>
                                  <td align="left" valign="middle" colspan="2">&nbsp;</td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" colspan="2">K&aelig;re pspgrafik
                                    bruger<br>
                                    <br>
                                    Som noget nyt her p&aring; pspgrafik.dk kan
                                    du nu bestille cd'ere med pspgrafik's Tutorials
                                    p&aring;.<br>
                                    Overskud g&aring;r til vedligeholdelse af
                                    pspgrafik.dk Dvs. Webhotel omkostninger og
                                    lign. <br>
                                    <br>
                                    Alle cd'ere indeholder udskrfts venlig fil
                                    af hver tutorial.<br>
                                  </td>
                                </tr>
                                <tr align="center" valign="top">
                                  <td align="left">
                                    <form action="phpside.php" onsubmit="return validerFormData(this);">
                                      <p>Cd Nr 1
                                        <input type='checkbox' name="cb0" value="50.00" onclick="udregn(this.form)">
                                        Begynder Tutorials 50,00<br>
                                        Cd Nr 2
                                        <input type='checkbox' name="cb1" value="50.00" onclick="udregn(this.form)">
                                        &Oslash;vede Tutorials 50,00<br>
                                        Cd Nr 3
                                        <input type='checkbox' name="cb2" value="50.00" onclick="udregn(this.form)">
                                        Pro Tutorials 50,00<br>
                                        Cd Nr 4
                                        <input type='checkbox' name="cb3" value="50.00" onclick="udregn(this.form)">
                                        3d pro tutorial 50,00<br>
                                        <br>
                                        Cd Nr 5
                                        <input type='checkbox' name="cb4" value="190.00" onclick="udregn(this.form)">
                                        Alle (cd Nr 1-4) Tutorials 190,00<br>
                                        Cd Nr 6
                                        <input type='checkbox' name="cb5" value="90.00" onclick="udregn(this.form)">
                                        Alle (cd Nr 1-4) Tutorials - Kun de udskrft
                                        venlige filer 90,00<br>
                                        <br>
                                        <br>
                                        I alt (incl moms)
                                        <input type='text' value="0.00" readonly name="ialt">
                                        <br>
                                        I alt (incl moms &amp; fragt / forsendelse)
                                        <input type='text' value="29.75" readonly name="brutto">
                                        <br>
                                        Der skal p&aring;regnes : 29,75 ,- fragt
                                        og forsendelse.<br>
                                        <br>
                                        <input type="submit" value="Send bestilling" name="send">
                                      </p>
                                      </form>
</td>
                                  <td align="center" valign="top"><img src="billedernews/pspgrafik.jpg" width="156" height="156"></td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" colspan="2">&nbsp;</td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" valign="top" width="382">
                                    <table width="380" border="0" cellspacing="0" cellpadding="3">
                                      <tr>
                                        <td colspan="4">&nbsp;</td>
                                      </tr>
                                      <tr>
                                        <td colspan="4">&nbsp;</td>
                                      </tr>
                                      <tr>
                                        <td colspan="4">&nbsp;</td>
                                      </tr>
                                      <tr>
                                        <td colspan="4">&nbsp;</td>
                                      </tr>
                                    </table>
                                  </td>
                                  <td align="center" valign="top" width="196">&nbsp;</td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" valign="top" colspan="2">Du
                                    vil f&aring; tilsendt en mail med en oversigt
                                    af din bestilling.<br>
                                    Denne mail bedes du bekr&aelig;fte ved at
                                    sende en mail retur og inds&aelig;tte bel&oslash;bet
                                    p&aring; vedsendte kontonummer.<br>
                                    Din bestilling vil blive tilsendt, straks
                                    efter din betaling er registreret.</td>
                                </tr>
                              </table>
                            </td>
                          </tr>
                          <tr>
                            <td colspan="3" class="test" height="2">&nbsp;</td>
                          </tr>
                        </table>
                      </td>
                    </tr>
                  </table>
                </td>
              </tr>
              <tr>
                <td background="billederhp/sidev31a.jpg" align="left" valign="bottom" width="10"><img src="billederhp/sidev33a.jpg" width="14" height="10"></td>
              </tr>
            </table>
            <br>
          </td>
        </tr>
      </table></td>
        </tr>
      </table>
   
<script type="text/JavaScript" src="/fokus.js"></script>
</body>
</html>


Jeg tror jeg vil puttesove for i dag... Men glæder mig til at lave videre i morgen. det bliver jo rigtig godt det her *S*

/Lee
Avatar billede jakoba Nybegynder
26. januar 2003 - 23:46 #23
fint jeg kikker.

Jeg huggede din fil http://www.pspgrafik.dk/cdtuts.htm og har rettet i den med nye felter til antal og kundens adresse. Ikke kønt, det er din afdeling.

hvis du hellere vil have antalfelterne foran checkboksen så skal der rettes i funktionen udregn, de 3 steder der står  felter[i+1].value  skal det så rettes til  felter[i-1].value .

grab filen http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp309643.html tilbage så du har noget at designe på mens jeg koder :-))

PS: jeg har tilføjet en javascript sektion med de der standard dreamweawer funktioner du bruger. (MM_preloadImages osv.)

mvh JakobA
Avatar billede lee Nybegynder
27. januar 2003 - 12:54 #24
Hej Jakob

Hmmm.. rode rode mumle mumle...
Jeg har forsøgt at smide noget css på input... men alt bliver samme størrelse, også selvom jeg endre til textarea... roder lidt videre *S*

/Lee
Avatar billede lee Nybegynder
28. januar 2003 - 00:56 #25
er du gået i sort ?? ;o)
Avatar billede jakoba Nybegynder
28. januar 2003 - 01:24 #26
Næe, men jeg ved ikke meget om css på form-felter, andet end at det virker højest forskelligt i forskellige browsere.

mvh JakobA
Avatar billede lee Nybegynder
28. januar 2003 - 03:13 #27
men der er jo stadig en fejl i linie 16
Parse error: parse error in D:\web\pspgrafik.dk_dasjkh\wwwroot\phpside.php on line 16

Har jeg gjort noget forkert ?

<html>
<head>
<title>pspgrafik - K&oslash;b cd med PSP Tutorials</title>

<meta Name="description" Content="www.pspgrafik.dk - din danske support.">
<meta Name="keywords" Content="Lee, Laursen, hjælp, danske sider, tutorial, begynder, øvede, nybegynder, pro, danmark, dansk, pap, forum, grafik, PSP, chat, animation, shop, 3d, pspgrafik, faq, afstemning, colour, palette , tut">
<meta http-equiv="expires" content="-1">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta HTTP-EQUIV="imagetoolbar" CONTENT="no">
<link rel="stylesheet" type="text/css" href="lee.css">
    <base target="_self">
   
<style type="text/css">
input {
    width:                100px;
    height:                19px;
    background:            #667788;
    border:                1px solid #000000;
    font-family:        verdana;
    font-size:            10px;
    color:                #ffffff;
}
textarea {
    width:                287px;
    height:                70px;
    background:            transparent;
    border:                1px none #000000;
    font-family:        verdana;
    font-size:            10px;
    color:                #ffffff;
    overflow-x:            hidden;
    overflow-y:            auto;
}
submit {
    width:                180px;
    height:                19px;
    background:            #667788;
    border:                1px solid #000000;
    font-family:        verdana;
    font-size:            10px;
    color:                #000000;
   
.checkbox    {
    width:                19px;
    height:                19px;
    background:            #667788;
    border:                1px solid #000000;
    font-family:        verdana;
    font-size:            10px;
    color:                #000000;
}
.labels td {
    font-family:        verdana;
    font-size:            10px;
    color:                #ffffff;
}
</style>

<script language="JavaScript">
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
  if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
   
<script type='text/javascript'>

function validerFormData( formObjekt ) {
    var felter = formObjekt.elements;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' && felter[i].checked ) {
            //det er mindst eet felt valgt
            return true;
        }         
    }
    return false;  // ingen felter var valgt
}; //end validerFormData( Form objekt ) -> boolean


function toDecimaler ( tal ) {
    if ( typeof( tal ) == String ) tal = parseFloat( tal );
    talTx = "_" +Math.round( 100.0*tal ) +"_"
    if ( talTx.length < 5 ) {
        preZero = "_000";
        talTx = preZero.substring(0,6-talTx.length) +talTx.substring(1);
    };
    talTx = talTx.substring(1,talTx.length-3) +","
            + talTx.substring(talTx.length-3,talTx.length-1);
    return talTx;
}; //end toDecimaler ( nummer ) -> string


function udregn( formObjekt ) {
    var felter = formObjekt.elements;
    var sum = 0;
    for ( var i=0; i<felter.length; i++) {
        if ( felter[i].type=='checkbox' ) {
            if ( felter[i].checked ) {
                if ( felter[i+1].value == "0" ) felter[i+1].value = "1"
                sum = sum + ( parseFloat( felter[i].value ) * parseInt(felter[i+1].value) );
            } else {
                if ( felter[i+1].value != "0" ) felter[i+1].value = "0"
            }
        }       
    }
    felter['ialt'].value = toDecimaler( sum );
    felter['brutto'].value = toDecimaler( sum + 29.75 );  // tilføj fragtudgifter.

}; //end udregn( Form objekt )


</script>

   
</head>

<body bgcolor="#FFFFFF" bgproperties="FIXED" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" background="billederhp/v6site/v6bgstora.jpg" onLoad="MM_preloadImages('billederhp/v6site/tilbagev6.jpg')">
<table width="630" border="0" cellspacing="0" cellpadding="0" height="241">
  <tr>
    <td height="262" align="center" valign="top">
      <table width="630" border="0" cellspacing="0" cellpadding="0">
        <tr>
          <td align="center"> <br>
            <table width="600" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td background="billederhp/sidev31a.jpg" align="left" valign="top" width="10"><img src="billederhp/sidev32a.jpg" width="9" height="85"></td>

                <td rowspan="2" width="530">
                  <table width="498" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td>
                        <table width="580" border="0" cellspacing="0" cellpadding="3" class="ydretabel">
                          <tr align="right" valign="middle">
                            <td align="left" width="96" class="lysbg" valign="middle">
                              <p><b>Salg af Tutorials p&aring; Cd'ere.</b></p>
                            </td>
                            <td width="474" class="hvidbg" align="right" valign="bottom">&nbsp;</td>

                            <td width="26" class="hvidbg" align="right" valign="top"><a href="java script:history.go(-1)" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image4','','billederhp/v6site/tilbagev6.jpg',1)"><img name="Image4" border="0" src="billederhp/v6site/tilbagev6a.jpg" width="22" height="22"></a></td>
                          </tr>
                          <tr>
                            <td colspan="3" class="hvidbg" height="100">
                              <table width="580" border="0" cellspacing="0" cellpadding="3">
                                <tr>
                                  <td align="left" valign="middle" colspan="2">&nbsp;</td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" colspan="2">K&aelig;re pspgrafik
                                    bruger<br>

                                    <br>
                                    Som noget nyt her p&aring; pspgrafik.dk kan
                                    du nu bestille cd'ere med pspgrafik's Tutorials
                                    p&aring;.<br>
                                    Overskud g&aring;r til vedligeholdelse af
                                    pspgrafik.dk Dvs. Webhotel omkostninger og
                                    lign. <br>
                                    <br>
                                    Alle cd'ere indeholder udskrfts venlig fil
                                    af hver tutorial.<br>

                                  </td>
                                </tr>
                                <tr align="center" valign="top">
                                  <td align="left" width="380">
                                    <form action="phpside.php" onsubmit="return validerFormData(this);">
                                      <table width="378" border="0" cellspacing="0" cellpadding="0">
                                        <tr>
                                          <td width="43">Cd Nr 1</td>
                                          <td width="61">
                                            <input type='checkbox' name="cb0" value="50.00" onClick="udregn(this.form)">
                                          </td>
                                          <td width="28">antal</td>
                                          <td width="60">
                                            <input type='text' size="2" name='ca0' value="0" onClick="udregn(this.form)" onBlur="udregn(this.form)">
                                          </td>
                                          <td width="186">Begynder Tutorials 50,00
                                          </td>
                                        </tr>
                                        <tr>
                                          <td width="43">Cd Nr 2 </td>
                                          <td width="61">
                                            <input type='checkbox' name="cb1" value="50.00" onClick="udregn(this.form)">
                                          </td>
                                          <td width="28">antal</td>
                                          <td width="60">
                                            <input type='text' size="2" name='ca1' value="0" onClick="udregn(this.form)" onBlur="udregn(this.form)">
                                          </td>
                                          <td width="186">&Oslash;vede Tutorials
                                            50,00</td>
                                        </tr>
                                        <tr>
                                          <td width="43">Cd Nr 3</td>
                                          <td width="61">
                                            <input type='checkbox' name="cb2" value="50.00" onClick="udregn(this.form)">
                                          </td>
                                          <td width="28">antal</td>
                                          <td width="60">
                                            <input type='text' size="2" name='ca2' value="0" onClick="udregn(this.form)" onBlur="udregn(this.form)">
                                          </td>
                                          <td width="186">Pro Tutorials 50,00</td>
                                        </tr>
                                        <tr>
                                          <td width="43">Cd Nr 4 </td>
                                          <td width="61">
                                            <input type='checkbox' name="cb3" value="50.00" onClick="udregn(this.form)">
                                          </td>
                                          <td width="28">antal</td>
                                          <td width="60">
                                            <input type='text' size="2" name='ca3' value="0" onClick="udregn(this.form)" onBlur="udregn(this.form)">
                                          </td>
                                          <td width="186">3d pro tutorial 50,00</td>
                                        </tr>
                                        <tr>
                                          <td width="43">&nbsp;</td>
                                          <td width="61">&nbsp;</td>
                                          <td width="28">&nbsp;</td>
                                          <td width="60">&nbsp;</td>
                                          <td width="186">&nbsp;</td>
                                        </tr>
                                        <tr>
                                          <td width="43">Cd Nr 5</td>
                                          <td width="61">
                                            <input type='checkbox' name="cb4" value="190.00" onClick="udregn(this.form)">
                                          </td>
                                          <td width="28">antal</td>
                                          <td width="60">
                                            <input type='text' size="2" name='ca4' value="0" onClick="udregn(this.form)" onBlur="udregn(this.form)">
                                          </td>
                                          <td width="186">Alle (cd Nr 1-4) Tutorials
                                            190,00</td>
                                        </tr>
                                        <tr>
                                          <td width="43">Cd Nr 6</td>
                                          <td width="61">
                                            <input type='checkbox' name="cb5" value="90.00" onClick="udregn(this.form)">
                                          </td>
                                          <td width="28">antal </td>
                                          <td width="60">
                                            <input type='text' size="2" name='ca5' value="0" onClick="udregn(this.form)" onBlur="udregn(this.form)">
                                          </td>
                                          <td width="186">Alle (cd Nr 1-4) Tutorials</td>
                                        </tr>
                                        <tr>
                                          <td width="43">&nbsp;</td>
                                          <td width="61">&nbsp;</td>
                                          <td width="28">&nbsp;</td>
                                          <td width="60">&nbsp;</td>
                                          <td width="186"> - Kun de udskrft venlige
                                            filer 90,00</td>
                                        </tr>
                                      </table>
                                      <p>&nbsp;</p>
                                      <table width="380" border="0" cellspacing="0" cellpadding="3">
                                        <tr>
                                          <td width="208">I alt (incl moms) </td>
                                          <td width="160">
                                            <input type='text' value="0.00" readonly name="ialt">
                                          </td>
                                        </tr>
                                        <tr>
                                          <td width="208">I alt (incl moms &amp;
                                            fragt / forsendelse) </td>
                                          <td width="160">
                                            <input type='text' value="29.75" readonly name="brutto">
                                          </td>
                                        </tr>
                                        <tr>
                                          <td colspan="2">&nbsp;</td>
                                        </tr>
                                        <tr>
                                          <td colspan="2">Der skal p&aring;regnes
                                            : 29,75 ,- fragt og forsendelse.</td>
                                        </tr>
                                      </table>
                                      <p>Du må også hellere fortælle hvem du er
                                        og hvor du bor, <br>
                                        så jeg ken sende DCerne :-))<br>
                                      </p>
                                      <table width="380" border="0" cellspacing="0" cellpadding="3" class="textarea" >
                                        <tr>
                                          <td>e-mail: </td>
                                          <td>
                                            <input type='text' name='emailaddr' value="">
                                          </td>
                                        </tr>
                                        <tr>
                                          <td>navn: </td>
                                          <td>
                                            <input type='text' name='navn' value="">
                                          </td>
                                        </tr>
                                        <tr>
                                          <td>adresse: </td>
                                          <td>
                                            <input type='text' name='adresse' value="">
                                          </td>
                                        </tr>
                                        <tr>
                                          <td>postnr: </td>
                                          <td>
                                            <input type='text' name='postnr' value="">
                                          </td>
                                        </tr>
                                        <tr>
                                          <td>by:</td>
                                          <td>
                                            <input type='text' name='bynavn' value="">
                                          </td>
                                        </tr>
                                      </table>
                                      <p><br>
                                        <input type="submit" value="Send bestilling" name="send">
                                      </p>
                                      </form>
</td>
                                  <td align="left" valign="top" width="188"><img src="billedernews/pspgrafik.jpg" width="156" height="156"></td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" colspan="2">&nbsp;</td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" valign="top" width="380">
                                    <table width="380" border="0" cellspacing="0" cellpadding="3">
                                      <tr>
                                        <td>&nbsp;</td>
                                        <td>&nbsp;</td>
                                      </tr>
                                      <tr>
                                        <td>&nbsp;</td>
                                        <td>&nbsp;</td>
                                      </tr>
                                      <tr>
                                        <td>&nbsp;</td>
                                        <td>&nbsp;</td>
                                      </tr>
                                      <tr>
                                        <td>&nbsp;</td>
                                        <td>&nbsp;</td>
                                      </tr>
                                    </table>
                                  </td>
                                  <td align="center" valign="top" width="188">&nbsp;</td>
                                </tr>
                                <tr align="center" valign="middle">
                                  <td align="left" valign="top" colspan="2">Du
                                    vil f&aring; tilsendt en mail med en oversigt
                                    af din bestilling.<br>
                                    Denne mail bedes du bekr&aelig;fte ved at
                                    sende en mail retur og inds&aelig;tte bel&oslash;bet
                                    p&aring; vedsendte kontonummer.<br>

                                    Din bestilling vil blive tilsendt, straks
                                    efter din betaling er registreret.</td>
                                </tr>
                              </table>
                            </td>
                          </tr>
                          <tr>
                            <td colspan="3" class="test" height="2">&nbsp;</td>
                          </tr>
                        </table>
                      </td>
                    </tr>
                  </table>
                </td>
              </tr>
              <tr>
                <td background="billederhp/sidev31a.jpg" align="left" valign="bottom" width="10"><img src="billederhp/sidev33a.jpg" width="14" height="10"></td>
              </tr>

            </table>
            <br>
          </td>
        </tr>
      </table></td>
        </tr>
      </table>   
<script type="text/JavaScript" src="/fokus.js"></script>
</body>
</html>


/Lee
Avatar billede jakoba Nybegynder
28. januar 2003 - 22:34 #28
Du har ikke gjort noget forkert.
Den fejl kommer fra php-siden som jeg ikke har lavet iorden endnu.
Avatar billede jakoba Nybegynder
28. januar 2003 - 22:52 #29
prøv med denne (uden at rette not i den)

<html>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<body>
<?php

if ( isset( $_POST['send'] ) ) {
        // formularen er blevet sendt
    extract( $_POST );    // gør udfyldte felter og checkbokse til hver sin variabel

    $fragt = 29.75;
    $boxe = array( 'cb0'=>50.00, 'cb1'=>50.00, 'cb2'=>50.00, 'cb3'=>50.00,
                  'cb4'=>190.00, 'cb5'=>90.00 );
    $netto = 0.0;
    foreach ( $boxe as $navn => $pris ) {
        if ( isset( ${$navn} ) {
            if ( isset( ${'ca'+substring($navn,2)} ) {
                $antal = ${'ca'+substring($navn,2)};
            } else {
                $antal = 1;
            }
            $netto += $pris * $antal;
        }
    }
    $brutto = $netto + $fragt;

    if ( $netto < 0.0000001 ) {
        echo echo "<p>Hvorfor betale fragtudgift uden at købe noger?<br>\n";
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>";
    } else {
            // hurrae, en regederlig bestilling
        $vare = array( 'cb0'=>'Begynder Tutorials 50,00kr',
                      'cb1'=>'Øvede Tutorials 50,00kr',
                      'cb2'=>'Pro Tutorials 50,00kr',
                      'cb3'=>'3d pro tutorial 50,00kr',
                      'cb4'=>'Alle Tutorials 190,00kr',
                      'cb5'=>'kun Udskrift af Alle Tutorials 90,00kr'
                    );
        $mailtekst = "Du har bestilt: \n\n";
        foreach ( $vare as $navn => $tekst ) {
            if ( isset( ${$navn} ) {
                if ( isset( ${'ca'+substring($navn,2)} ) {
                    $antal = ${'ca'+substring($navn,2)};
                } else {
                    $antal = 1;
                }
                $mailtekst .= "$antal ." stk. " . $tekst ."\n";
            }
        }
        $mailtekst .= "
plus porto: 29.75kr
at betale: " .$brutto ."kr.

Dine CD'er bliver sendt s&aring;snart banken giver mig besked
om at pengene er indsat p&aring; konto nummer 1234 1234567890
i Nordea Bank. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

www.pspgrafik.dk
";

        $kundens_email = $email;

        $lees_email = "lee@pspgrafik.dk";

        mail( $kundens_email,
              "Bestilleing af CD-er",
              $mailtekst,
              "cc: $lees_email\r\nReply-to: info@pspgrafik.dk" );
        // nu skulle der gerne blive sendt en mail både til dig og til kunden

    }
}

?>
</body>
</html>
Avatar billede lee Nybegynder
29. januar 2003 - 00:37 #30
<html>
<head>
<title>cdphp</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<?php

if ( isset( $_POST['send'] ) ) {
        // formularen er blevet sendt
    extract( $_POST );    // gør udfyldte felter og checkbokse til hver sin variabel

    $fragt = 29.75;
    $boxe = array( 'cb0'=>50.00, 'cb1'=>50.00, 'cb2'=>50.00, 'cb3'=>50.00,
                  'cb4'=>190.00, 'cb5'=>90.00 );
    $netto = 0.0;
    foreach ( $boxe as $navn => $pris ) {
        if ( isset( ${$navn} ) ) $netto += $pris; }
    $brutto = $netto + $fragt;

    if ( $netto < 0.0000001 ) {
        echo "<p>Hvorfor betale fragtudgift uden at købe noget?<br>\n";
        echo "klik på den lille kasse til venstre for de CD-er du ønsker.</p>";   
        } else {
            // hurrae, en regederlig bestilling
        $vare = array( 'cb0'=>'Begynder Tutorials 50,00kr',
                      'cb1'=>'Øvede Tutorials 50,00kr',
                      'cb2'=>'Pro Tutorials 50,00kr',
                      'cb3'=>'3d pro tutorial 50,00kr',
                      'cb4'=>'Alle Tutorials 190,00kr',
                      'cb5'=>'kun Udskrift af Alle Tutorials 90,00kr'
                    );
        $mailtekst = "Du har bestilt: \n\n";
        foreach ( $vare as $navn => $tekst ) {
            if ( isset( ${$navn} ) ) $mailtekst .= $tekst ."\n";
        }
        $mailtekst .= "
plus porto: 29.75kr\nat betale: " .$brutto ."kr.\n</head>

Dine CD'er bliver sendt s&aring;snart banken giver mig besked
om at pengene er indsat p&aring; konto nummer 2016 9506409036
i Nordea Bank. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

www.pspgrafik.dk

<body bgcolor=\"#FFFFFF\" text=\"#000000\">

</body>
</html>

<p>";

      $kundens_email = "ukendt@ukendt.dk";  // HOVSA, den skal vi have ham (M/K) til at fortælle i formularen 
 
        $lees_email = "lee@pspgrafik.dk"; 
 
        $myMail = mail( $kundens_email, 
              "Bestilleing af CD-er", 
              $mailtekst, 
              "cc: $lees_email\r\n" 
            ."Reply-to: $info@pspgrafik.dk" ); 
        // nu skulle der gerne blive sendt en mail både til dig og til kunden 




if ( $myMail ) print "E-mail'en blev afsendt"; 

else print "Øv ... udu :(";
 
    } 
} 
 
?> 

Sådan ser den ud nu... og virker sådan at der ingen fejl er.

Man bliver blot sendt videre til en blank side uden noget.
Og jeg få r ingen e-mail om bestilling.

/Lee
Avatar billede jakoba Nybegynder
29. januar 2003 - 00:48 #31
det med tom ny side er meningen. glem det for nu. Der skal slet ikke designes på den side indtil videre. der skal kun rettes php-fejl

den der email bliver sendt til adressen "ukendt@ukendt.dk"
og til  indholdet af  $info  fulgt af  '@pspgrafik.dk'  hvis der står 'lee' i info bliver det dig.

prøv med filen fra 22:52:31 om ikke den virker bedre (sender en mail).
Avatar billede lee Nybegynder
29. januar 2003 - 00:56 #32
Parse error: parse error in D:\web\pspgrafik.dk_dasjkh\wwwroot\phpside.php on line 15


så kommer denne fejlmelding *S*

/Lee
Avatar billede lee Nybegynder
29. januar 2003 - 01:01 #33
if ( isset( ${$navn}  ) $netto += $pris; }

Magler der ikke en  ) her ?

Så det bliver if ( isset( ${$navn} ) ) $netto += $pris; }

/Lee
Avatar billede lee Nybegynder
29. januar 2003 - 01:04 #34
nej nu roder jeg 2 ting sammen
Avatar billede lee Nybegynder
29. januar 2003 - 01:07 #35
if ( isset( ${$navn}) {

Mangler der en )

if ( isset( ${$navn})) {

Det var sådan jeg mente det.

/Lee
Avatar billede jakoba Nybegynder
29. januar 2003 - 01:11 #36
Ja det gør der. der skal være 2 ) efter hinanden. godt set
Avatar billede jakoba Nybegynder
29. januar 2003 - 01:21 #37
PS: der er 2 steder jeg har lavet den fejl.
Avatar billede jakoba Nybegynder
29. januar 2003 - 01:23 #38
næe, 4 steder også i de to
                if ( isset( ${'ca'+substring($navn,2)} ) {
linier
Avatar billede lee Nybegynder
29. januar 2003 - 08:39 #39
der er stadig fejl i linie 16
Avatar billede lee Nybegynder
29. januar 2003 - 08:44 #40
<html>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<body>
<?php

if ( isset( $_POST['send'] ) ) {
        // formularen er blevet sendt
    extract( $_POST );    // gør udfyldte felter og checkbokse til hver sin variabel

    $fragt = 29.75;
    $boxe = array( 'cb0'=>50.00, 'cb1'=>50.00, 'cb2'=>50.00, 'cb3'=>50.00,
                  'cb4'=>190.00, 'cb5'=>90.00 );
    $netto = 0.0;
    foreach ( $boxe as $navn => $pris ) {
        if ( isset( ${$navn})) { if ( isset( ${'ca'+substring($navn,2)} )) {
$antal = ${'ca'+substring($navn,2)};
            } else {
                $antal = 1;
            }
            $netto += $pris * $antal;
        }
    }
    $brutto = $netto + $fragt;

    if ( $netto < 0.0000001 ) {
        echo echo "<p>Hvorfor betale fragtudgift uden at købe noger?<br>\n";
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>";
    } else {
            // hurrae, en regederlig bestilling
        $vare = array( 'cb0'=>'Begynder Tutorials 50,00kr',
                      'cb1'=>'Øvede Tutorials 50,00kr',
                      'cb2'=>'Pro Tutorials 50,00kr',
                      'cb3'=>'3d pro tutorial 50,00kr',
                      'cb4'=>'Alle Tutorials 190,00kr',
                      'cb5'=>'kun Udskrift af Alle Tutorials 90,00kr'
                    );
        $mailtekst = "Du har bestilt: \n\n";
        foreach ( $vare as $navn => $tekst ) {
            if ( isset( ${$navn} ) { if ( isset( ${'ca'+substring($navn,2)} )) {
$antal = ${'ca'+substring($navn,2)};
                } else {
                    $antal = 1;
                }
                $mailtekst .= "$antal ." stk. " . $tekst ."\n";
            }
        }
        $mailtekst .= "
plus porto: 29.75kr
at betale: " .$brutto ."kr.

Dine CD'er bliver sendt s&aring;snart banken giver mig besked
om at pengene er indsat p&aring; konto nummer 1234 1234567890
i Nordea Bank. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

www.pspgrafik.dk
";

        $kundens_email = $email;

        $lees_email = "lee@pspgrafik.dk";

        mail( $kundens_email,
              "Bestilleing af CD-er",
              $mailtekst,
              "cc: $lees_email\r\nReply-to: info@pspgrafik.dk" );
        // nu skulle der gerne blive sendt en mail både til dig og til kunden

    }
}

?>
</body>
</html>
Avatar billede jakoba Nybegynder
29. januar 2003 - 13:02 #41
Hmme. Det tager for meget tid når du skal remoterette alle mine fejl. Så jeg satte en php fortolker igang og test selv:

denne burde virke:  vi er stadig ikke færdige, men nu burde der blive sendt en mail og en liste over bestilte varer.

<html>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<body>
<?php

if ( isset( $send ) || isset( $_POST['send'] ) ) {
        // formularen er blevet sendt
    if ( !isset( $send ) ) {
        extract( $_POST );    // gør udfyldte felter og checkbokse til hver sin variabel
    }

    $fragt = 29.75;
    $boxe = array( 'cb0'=>50.00, 'cb1'=>50.00, 'cb2'=>50.00, 'cb3'=>50.00,
                  'cb4'=>190.00, 'cb5'=>90.00 );
    $netto = 0.0;
    foreach ( $boxe as $navn => $pris ) {
        if ( isset( ${$navn} ) ) {
            $anavn = 'ca'.substr($navn,2);
            if ( ${$anavn} != '0' ) {
                $antal = ${$anavn};
            } else {
                $antal = 1;
            }
            $netto += $pris * $antal;
        }
    }
    $brutto = $netto + $fragt;

    if ( $netto < 0.0000001 ) {
        echo "<p>Hvorfor betale fragtudgift uden at købe noget?<br>\n";
        echo "klik på den lille kasse tilvenstre for de CD-er du ønsker.</p>";
    } else {
        echo "<p>hurra. kunden vil købe noget?<br>\n";
            // hurrae, en regederlig bestilling
        $vare = array( 'cb0'=>'Begynder Tutorials 50,00kr',
                      'cb1'=>'Øvede Tutorials 50,00kr',
                      'cb2'=>'Pro Tutorials 50,00kr',
                      'cb3'=>'3d pro tutorial 50,00kr',
                      'cb4'=>'Alle Tutorials 190,00kr',
                      'cb5'=>'kun Udskrift af Alle Tutorials 90,00kr'
                    );
        $mailtekst = "Du har bestilt: \n\n";
        foreach ( $vare as $navn => $tekst ) {
            if ( isset( ${$navn} ) ) {
                $anavn = 'ca'.substr($navn,2);
                if ( ${$anavn} != '0' ) {
                    $antal = ${$anavn};
                } else {
                    $antal = 1;
                }
                $mailtekst .= $antal ." stk. " . $tekst ."\n";
            }
        }
        $mailtekst .= "
plus porto: 29.75kr
at betale: " .$brutto ."kr.

Dine CD'er bliver sendt s&aring; snart banken giver mig besked
om at pengene er indsat p&aring; konto nummer 1234 1234567890
i Nordea Bank. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

www.pspgrafik.dk
";

        if ( $emailaddr != "" ) {
            $kundens_email = $emailaddr;
        } else {
            echo "du ønsker at bestille<br>";
            echo "<pre>" .$mailtekst ."</pre><br><br>";
            echo "Men uden din Email og adresse kan jeg ikke sende bekræftelse eller CD'er.<br>";
            die( "det var det. /slutter" );
        }

        $lees_email = "lee@pspgrafik.dk";



echo "<pre>" .$mailtekst ."</pre>";


        mail( $kundens_email,
              "Bestilleing af CD-er",
              $mailtekst,
              "cc: $lees_email\r\nReply-to: info@pspgrafik.dk" );
        // nu skulle der gerne blive sendt en mail både til dig og til kunden

    }
}

?>
</body>
</html>
Avatar billede lee Nybegynder
30. januar 2003 - 07:22 #42
Juhiuuuuu

Så virker det ;o)


Så skal der bare komme en fejlmelding op når man har glemt at udfylde alle felter ;o)

Jeg får heller ikke en mail fra den mail jeg har bestil fra *S*


/Lee
Avatar billede lee Nybegynder
30. januar 2003 - 07:24 #43
PS Jeg har sat pointsene op.. du skal sgu have max for det her.
Avatar billede lee Nybegynder
30. januar 2003 - 07:27 #44
Kan jeg designe siden der kommer frem med bestillingen ??
Avatar billede lee Nybegynder
30. januar 2003 - 07:38 #45
Så for søren.. der fik jeg alligevel også en mail omkring min bestilling *S*

Måske der skal være et nummer man bliver tildelt og skal skrive når man indbetaler ? så jeg ved hvem der har betalt sin bestilling ?

/LEe
Avatar billede jakoba Nybegynder
30. januar 2003 - 11:59 #46
Ja, så kan du designe lidt igen; men det du designer er siden som den skal se ud når alting gik godt, dvs alting var korrekt udfyldt og det lykkedes at sende en mail.

Et ordrenummer er en god ide. jeg klistrer et unikt nummer på (12 cifre). En anden mulighed er at sige at køber skal skrive sin email-adresse i 'besked til modtageren' feltet.

Godt din mail-fra-php virker; den har jeg ikke meget ide om hvordan jeg skulle debugge :-))

mvh JakobA
Avatar billede lee Nybegynder
30. januar 2003 - 23:26 #47
http://www.pspgrafik.dk/cdgennem.htm

Den skal såmn bare se sådan ud. *S*

Jeg syntes et ordre nummer er bedst... ved ikke helt hvorfor...

Hvordan kommer vi så videre herfra *S*

/Lee
Avatar billede jakoba Nybegynder
30. januar 2003 - 23:42 #48
du venter lidt endnu mens jeg kombinerer de to sider sammen.

mvh jakoba
Avatar billede lee Nybegynder
31. januar 2003 - 00:16 #49
Ok jeg venter spændt *S*
Avatar billede jakoba Nybegynder
31. januar 2003 - 19:17 #50
Så er vi vist ved at være der :-)
hent filen  http://localhost/dwnloads/javascript/Homepage/temp/cdtuts.php

den erstatter filerne 'cdtuts.htm', 'cdgennem.htm' og 'phpside.php'

Test om siden nu også gør som du synes den bør

mevh JakobA
Avatar billede lee Nybegynder
31. januar 2003 - 20:03 #51
Siden kan ikke vises ?

/Lee
Avatar billede jakoba Nybegynder
31. januar 2003 - 20:15 #52
intet under :( jeg gav dig min lokale adresse til min egen server. Dooh
her er den rigtige:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/cdtuts.php
Avatar billede lee Nybegynder
31. januar 2003 - 20:21 #53
*GGG* havde jeg ikke engang selv lagt mærke til ;o)
Avatar billede lee Nybegynder
31. januar 2003 - 20:36 #54
så er den sat ind... http://www.pspgrafik.dk/cdtuts.php

Der kommer dog ingen mail til mig om bestillingen ?
Heller ingen fejlmelding når man glemmer at udfylde bestillingen ?

Jeg forstår ikke helt hvordan jeg kan slette cdgennem... da jeg så ikke har nogen fil at "pynte på" ?

/Lee
Avatar billede jakoba Nybegynder
31. januar 2003 - 20:53 #55
Ja der er noget gevaldig underligt her.

jeg får en mail, hvadenten jeg har udfyldt ordentligt eller ikke. (mon ikke din blot er lidt langsom ligesom før.

Det er somom variabelen  $bestilling_er_OK  ikke har en korrekt boolean værdi.
Avatar billede lee Nybegynder
31. januar 2003 - 21:10 #56
Hmm jeg har hele tiden kun fået mine egne bestillinger... og kun bekræftigelse på at jeg har bestilt, aldrig at nogen har bestilt noget ???

når jeg leder efter min mail på siden, findes den ikke.... mangler den del ?

/Lee
Avatar billede lee Nybegynder
31. januar 2003 - 21:12 #57
boolean... mumle mumle.. ehmmm jaeee... *GGG*
Avatar billede jakoba Nybegynder
31. januar 2003 - 21:13 #58
når jeg henter filen http://www.pspgrafik.dk/cdtuts.php får jeg såvidt jeg kan se den fil der før hed  cdtuts.htm

har du hentet filen http://hjem.get2net.dk/Jakob.Aggernaes/temp/cdtuts.php og lagt på din server?
Avatar billede lee Nybegynder
31. januar 2003 - 21:21 #59
Ahaaaaa.. se nu sker der noget igen... jeg ved ikke lige hvad der skete der... men jeg må har fået gemt den gamle som php... nu kommer der skæld ud når man er uartig.. og jeg får besked om at jeg har bestilt....

men stadig intet om at nogen har bestilt ???

/Lee
Avatar billede lee Nybegynder
31. januar 2003 - 21:36 #60
Alle mine mails funker lynhurtigt.. hvad end jeg bruger lee@leenet.dk lee@pspgrafik.dk info@pspgrafik.dk alle kommer som afsender.. men ingen bestilling med navn og adresse til mig !

/Lee
Avatar billede jakoba Nybegynder
31. januar 2003 - 21:41 #61
jeg får også mail som bestiller og den mail jeg får er korrekt formatteret og siger at lee@pspgrafik.dk skulle få en kopi.
Avatar billede jakoba Nybegynder
31. januar 2003 - 21:46 #62
Du kan evt prøve at ændre cc-adressen. det er linie nr 10 i filen hvor der står:

$lees_email = "lee@pspgrafik.dk";

prøv fx med

$lees_email = "jakob.aggernaes@get2net.dk";

( bare husk at rette tilbage igen :-))
Avatar billede jakoba Nybegynder
31. januar 2003 - 21:50 #63
PS: det kunne evt være noget Cliche har lavet for at afskrække spammere. Lidt langt ude, men måske værd at ringe til Thomas og checke.
Avatar billede lee Nybegynder
31. januar 2003 - 21:51 #64
Det er gjort nu *S*
Avatar billede jakoba Nybegynder
31. januar 2003 - 22:17 #65
hvis alt er som det plejer fik du bestillingen denne gang.
Jeg har ikke fået nogen CC af den bestilling jeg sendte.

Opdagede lige at jeg havde helt glemt det der bestillingsnymmer vi snakkede om. har sat det på på http://hjem.get2net.dk/Jakob.Aggernaes/temp/cdtuts.php

Vældig smigrenden med sådan en takketale fornede på siden, men du behøvs det altså ikke :-))
Avatar billede lee Nybegynder
31. januar 2003 - 23:42 #66
http://www.pspgrafik.dk/cdtuts.php der står 0 over cd Nr 1.. jeg tøo ikke røre det. da det ser ud til at høre til php'en ???

Selvfølgelig skal du da have en takketale.... Havde jo slet ikke kunne klare den del uden din hjælp *SS*

/Lee
Avatar billede jakoba Nybegynder
31. januar 2003 - 23:52 #67
du har ret, det er en php-fejl. i linie 470 står der:
                <?php echo (isset($varefejl)?$varefejl:0); ?>
men der skal stå:
                <?php echo (isset($varefejl)?$varefejl:""); ?>
Avatar billede lee Nybegynder
01. februar 2003 - 00:57 #68
Hvad skal jeg så sige til Thomas fra Cliche i morgen ???

hvis nu det var en måde at afskrække spammere på, så er det lidt et problem at jeg ikke får dine og andres bestillinger ?!?

/Lee
Avatar billede jakoba Nybegynder
01. februar 2003 - 01:04 #69
sig til Thomas at en cc: header ser ud til at blive ignoreret af mailserveren.

Men det er nu ikke det vældig store problem. hvis brugeren følger den instruks han får sender han jo en bekræftelses-email.

mvh JakobA
Avatar billede lee Nybegynder
01. februar 2003 - 01:46 #70
det vil jeg gøre.. det ville nu være rarest hvis jeg fik mailen automatisk.. så jeg ikke taber nogen.

/Lee
Avatar billede lee Nybegynder
01. februar 2003 - 01:51 #71
jakoba kommer du aldrig på icq ?
Avatar billede jakoba Nybegynder
01. februar 2003 - 02:00 #72
kun når jeg er nødt til det. I den slags chatform er der slet ikke tid til at tænke.
Avatar billede lee Nybegynder
01. februar 2003 - 02:04 #73
hæhæ okay..
Avatar billede lee Nybegynder
01. februar 2003 - 14:06 #74
Nå... det er lørdag og så kan man ikke ringe til Cliche...

Jakoba... der er stadig et problem .. lad os nu sige at kundens ordre ikke bliver sendt til mig automatisk, og kunden bekræftiger ordren ved at returnere mailen. Så står der stadig ikke noget om hans adresse, og jeg vil ikke kunne sende ham sine cd'ere.

/Lee
Avatar billede jakoba Nybegynder
01. februar 2003 - 14:30 #75
Det kan der være noget om.
og det er vel egentlig også lidt fjollet at insistere på at bruge cc: når det er ligesånemt at sende den email 2 gange med forskellige modtageradresser.
Vi skal så bare huske at skrive kundens email-addr etsted i den mail der bliver sendt til dig.
Avatar billede jakoba Nybegynder
01. februar 2003 - 14:37 #76
Avatar billede jakoba Nybegynder
01. februar 2003 - 14:50 #77
Dooh, igen igen. kundens adresse står jo slet ikke i den mail der bliver sendt. Det skal den naturligvis. vent lidt.
Avatar billede jakoba Nybegynder
01. februar 2003 - 15:00 #78
Så skulle den gerne være der.
Avatar billede lee Nybegynder
01. februar 2003 - 16:09 #79
Ahaaaaa se NU virker det som det var tænkt....

Sig til når du får brug for en grafisk hånd Jakoba... i'll be there ;o)

1000 tak for hjælpen
Avatar billede lee Nybegynder
01. februar 2003 - 16:10 #80
Hov du skal lige svare ;o)
Avatar billede amtoft Novice
01. februar 2003 - 17:27 #81
Har set lidt med på sidelinien af dette spg, og synes at resultatet ser godt ud efterhånden.
Kunne faktisk godt bruge en sådan funktion selv.
Men det er jo ikke sikkert Lee bryder sig om, jeg råt og brutalt bruger hans design.
Samtidig synes jeg det er lidt uoverskueligt med de mange tabeller mv der indeholder grafik osv.
Så jeg tænkte om en af I to hajer der har lavet dette, har mulighed for at lave en "ren" version, som det vil være lettere for andre at genbruge og tilrette til eget brug ?

Opretter naturligvis gerne spørgsmål hvis det er spørgsmål om point.
Avatar billede jakoba Nybegynder
01. februar 2003 - 20:27 #82
svar til lee :-))

amtoft >> du får mere ud af det ved at stille specifikke spm undervejs i at du selv udvikler sådan en side.
    For min skyld må du ellers gerne kopiere hvad du vil, men ham Lee, hun har jo også noget at skulle have sagt.

mvh JakobA
Avatar billede lee Nybegynder
01. februar 2003 - 22:43 #83
;o))

amtoft>> designet høre til pspgrafik.dk dvs, baggrunden og anden grafik.
Og når Jakoba nu siger at du må kopiere hvad du vil af koden, så har jeg ellers ingen indvendinger.

Specielt kontonummeret ;o)))

/Lee
Avatar billede amtoft Novice
01. februar 2003 - 23:00 #84
Tak tak.

Jakoba >> Af erfaring ved jeg at jeg lærer ligeså meget ved at bruge eksisterende kode, og rette det til, så det passer mit behov, som ved at starte helt forfra.

Lee >> Bruger ikke din grafik - og får du for mange penge ind på konto'en kan du jo altid sende dem videre ...
Avatar billede lee Nybegynder
01. februar 2003 - 23:02 #85
amtoft>> ;o) regner nu ikke med at blive millionær... skal bare have sidens udgifter dækket.
Avatar billede Slettet bruger
06. februar 2003 - 21:18 #86
Jeg synes nu ikke der er noget information om hvordan man betaler... Ja hvordan? skal man bare smide penge ind på din konto? ;)
Avatar billede lee Nybegynder
06. februar 2003 - 21:36 #87
Ja måden det fungere på er at man bestiller og får en mail med konto nummer.

Når Jeg så har fået indsat penge på kontoen sender jeg en cd.


/Lee
Avatar billede Slettet bruger
06. februar 2003 - 21:40 #88
okay.... det burde du måske informere om på siden...

Eller har jeg overset noget...?

;o)
Avatar billede lee Nybegynder
06. februar 2003 - 22:09 #89
Jo okay.. det har du nok ret i... havde slettet den info, da man får besked så snart man har bestilt.... vil jeg lige indsætte igen ;o)

Tx

/Lee
Avatar billede lee Nybegynder
08. februar 2003 - 01:59 #90
Jakoba !!!

Jeg har brug for din hjælp.

Af en eller anden grund kommmer denne tekst ikke med på bestillingerne . :  Skriv dit bestillingsnummer som 'meddelelse til modtageren' idet du overfører pengene.

Har jeg gjort noget galt da jeg rettede farven ??

/Lee
Avatar billede jakoba Nybegynder
08. februar 2003 - 02:33 #91
på siden http://www.pspgrafik.dk/cdtuts.php står der
    HUSK : Skriv dit bestillingsnummer som 'meddelelse til modtageren' idet du overfører pengene.
på formularen der skal udfyldes.

kan det være du blot er kommet til at skrive det der, istedetfor på 'kvitteringssiden'? (højere oppe i samme fil)

eller kandt du bare ud af det selv :-))
Avatar billede lee Nybegynder
08. februar 2003 - 03:10 #92
Nej det er noget jeg selv har skrevet for at lappe lidt på problemet.

Det mangler her :

Den mail jeg får og bruger får :

Dit bestillingsnummer er: 1234567890.

Du har bestilt:

1 stk. Alle Tutorials 190,00kr

Under 
-Dit bestillingsnummer er: 1234567890-

skulle der gerne stå

-Skriv dit bestillingsnummer som 'meddelelse til modtageren' idet du overfører pengene.

men det gør der ikke :/

/Lee
Avatar billede jakoba Nybegynder
08. februar 2003 - 03:23 #93
i emailen til kunden (og dig) sættes det ind i denne sætning et sted. Her kan du ikke bruge html. kun almindelig tekst:

        $mailtekst .= "
plus porto: 29.75kr
at betale: " .$brutto ."kr.

Dine CD'er bliver sendt til adressen:
    " . $navn ."
    " . $adresse ."
    " . $postnr ."
    " . $bynavn ."
s&aring; snart banken giver mig besked om at pengene er indsat p&aring;
konto nummer $lees_bankkonto. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

www.pspgrafik.dk
";

Det er omkring linie 100 i filen.

---------------------------

på kvitteringssiden sættes det ind i html-koden her:

        echo $confirmTekst ."<br>plus porto: 29.75kr<br>at betale: " .$brutto ."kr.</p>";

?>
                                    <p>Dine CD'er bliver sendt s&aring; snart
                                      banken giver mig besked
                                      om at pengene er indsat p&aring; konto nummer
                                      <?php echo $lees_bankkonto; ?>. (det tager ca 3 dage)</p>
                                    <p>Med venlig hilsen</p>
                                    <p>Lee Laursen</p>

Lav en søgning efter '$confirmTekst', den variabel bruges ikke andre steder end der. et sted i nærheden af linie 300 i filen.

mvh JakobA
Avatar billede lee Nybegynder
16. marts 2003 - 22:46 #94
Åhhh jakobA

nu har jeg flyttet hotel.. og af en eller anden grund kommer mine bekræftene mails til at se således ud :

Dit bestillingsnummer er: 123456789

Du har bestilt:

1 stk. Begynder Tutorials 50,00kr
plus porto: 29.75kr at betale: 79.75kr.  Dine CD'er bliver sendt til adressen:    xxx xxx    xxxx x    xxxx    xxxxx s&aring; snart banken giver mig besked om at pengene er indsat p&aring; konto nummer 1234 567891011 i Nordea bank. (det tager ca 3 dage)  Med venlig hilsen  Lee Laursen  www.pspgrafik.dk

---------

I stedet for således :


Dit bestillingsnummer er: 123456789

Du har bestilt:

1 stk. Begynder Tutorials 50,00kr

plus porto: 29.75kr
at betale: 79.75kr.

Dine CD'er bliver sendt til adressen:
    xxx xxx
    xxx x
    xxxx
    xxxxxxxx
s&aring; snart banken giver mig besked om at pengene er indsat p&aring;
konto nummer 1234 567891011 i Nordea bank. (det tager ca 3 dage)

Med venlig hilsen

Lee Laursen

-------

Jeg har kiget på koden men kan simpelthen ikke finde ud af hvad der skulle være galt ??

Håber du har mod på at hjælpe mig igen ;o)

/Lee
Avatar billede need-help-2 Nybegynder
18. oktober 2003 - 18:45 #95
Kære jakoba

Jeg har på sidelinien fulgt dit fremragende arbejde og er meget imponeret. Jeg står selv i den situation, at jeg godt kunne bruge nøjagtig samme bestillingsform.

Jeg har prøvet at låne koderne publiceret på denne side, men har ikke haft succes til at få det til at virke på min side. Ville det være muligt for dig at give os en version, som er lige til at sætte ind på ens hjemmeside, med diverse rettelser selvfølgelig.

Da jeg ikke er nogen ørn til programmering ville det være utrolig dejligt, hvis du ville gøre dig den ulejlighed at skrive lidt hjælpelinjer, så vi dødelige kan se hvad vi skal gøre :-)

Og nu vi er ved det. Er det muligt at udvide dette script til at kunne klare fx 30 produkter i stedet for 5? Eller er det alt for stort et arbejde?

Håber på at du kan hjælpe.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester