Visualizzazione risultati 1 fino 4 di 4

Discussione: Calcolo preventivo

  1. #1
    Guest

    Predefinito Calcolo preventivo

    Premetto che sono nuovo e totalmente ignorante su linguaggi javascript,html e php.
    chiedo inoltre scusa se il mio topic risulta essere già discusso ( ho fatto ricerche ma non ho trovato assolutamente nulla).
    Il mio prob è questo:
    All'interno del mio sito stò cercando di inserire un form che permetta di calcolare il costo di un servizio da me offerto in base a scelte multiple.
    Facendo varie ricerche sono riuscito a tirare giù un po' di righe di codice
    queste :
    Codice HTML:
    <html>
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nuova pagina 1</title>
    </head>
    
    <body>
    <head>
    <script type="text/javascript">
    function tipo(reg) {
    
       if (reg == "") return;
       
       var lavori = new Array();
       var lavoro = document.getElementById('lavori');
       while(lavoro.options.length > 0) lavoro.removeChild(lavoro.options[0]); 
       
       
       switch(reg) {
            case 'montaggiomagazzino':            
                lavori.push('scaffalatura');
                lavori.push('cantilever');
                lavori.push('porta pallets');
                //...
                break;
       
            case 'montaggioufficio': 
                lavori.push('scrivania');
                lavori.push('sala attesa');
                lavori.push('armadio');
                break;
           
            case 'montaggionegozio':
                lavori.push('parete dogata');
                lavori.push('bancone vendita');
                lavori.push('vetrina');
                break;
                  
            default: 
       }
    
        
       for (i=0; i<lavori.length; i++) {
          opt = document.createElement('option');
          opt.setAttribute('value', lavori[i]);
          opt.setAttribute('text', lavori[i]);
          opt.innerHTML = lavori[i];
          lavoro.appendChild(opt);
       }
    }
    </script>
    </head>
    
    <body>
    <center>
    <h3><b><font color=#007070>SCELGA LA TIPOLOGIA DI ARREDAMENTO CHE VUOLE EFFETTUARE</font></b></h3><br>
    <select id="lav" onchange="tipo(this.value)">
      <option value="">Scegli tipologia lavoro</option>
      <option value="montaggiomagazzino">montaggio magazzino</option>
      <option value="montaggioufficio">montaggio ufficio</option>
      <option value="montaggionegozio">montaggio negozio</option>
    </select><br><br><br>
    
    <h3><b><font color=#007070>SCELGA LA TIPOLOGIA DI PRODOTTO CHE VUOLE TRATTARE</font></b></h3><br>
    
    <select id="lavori"></select><br><br><br>
     
    <h3><b><font color=#007070>INDICHI LA REGIONE DOVE SI ESEGUIRA' IL MONTAGGIO</font></b></h3><br>
    
    <select id="dove">
       <option value="regione">seleziona regione</option>
       <option value="toscana">Toscana</option>
       <option value="lazio">Lazio</option>
    </select><br><br><br>
    
    <h3><b><font color=#007070>INDICHI LA DATA DI QUANDO VUOLE ESEGUIRE IL MONTAGGIO</font></b></h3><br>
    
    <select id="data1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        </select>
    
    <select id="data2">
        <option value="gennaio">gennaio</option>
        <option value="febbraio">febbraio</option>
        <option value="marzo">marzo</option>
        <option value="aprile">aprile</option>
        <option value="maggio">maggio</option>
        <option value="giugno">giugno</option>
        <option value="luglio">luglio</option>
        <option value="agosto">agosto</option>
        <option value="settembre">settembre</option>
        <option value="ottobre">ottobre</option>
        <option value="novembre">novembre</option>
        <option value="dicembre">dicembre</option>
        </select>
        
        <select id="data3">
        <option value="2008">2008</option>
        <option value="2009">2009</option>
        <option value="2010">2010</option>
        <option value="2011">2011</option>
        <option value="2012">2012</option>
        <option value="2013">2013</option>
        <option value="2014">2014</option>
        <option value="2015">2015</option>
        </select><br><br><br>
    
    <h3><b><font color=#007070>VUOLE ESEGUIRE IL MONTAGGIO IN UN GIORNO FERIALE O FESTIVO?</font></b></h3><br>
    
    <input type="radio" id="feriale" name="RadioGroup1" checked> Feriale
    <input type="radio" id="festivo" name="RadioGroup1"> Festivo <br><br><br>
    
    <h3><b><font color=#007070>VUOLE ESEGUIRE IL MONTAGGIO DI GIORNO O DI NOTTE?</font></b></h3><br>
    
    <input type="radio" id="giorno" name="RadioGroup2" checked> Giorno
    <input type="radio" id="notte" name="RadioGroup2"> Notte
    </center>
    </body>
    
    </html>
    per quanto riguarda le varie selezioni funziona bene (salvo per la seconda selezione subordinata alla prima che non mi rimane centrale..consigli?)
    il prob è questo

    vorrei dare un valore numerico ad ogni selezione nelle caselle del form,
    ed avere infine uno script che mi calcola il totale di questi valori (salvo la data che è solo a titolo informativo, e che mi dia una casella di errore nel caso qualche dato non sia stato inserito), che mandi un email sia a me che al cliente contenente un sunto delle selezioni piu il totale del servizio(questo form si trova all'interno di un area privata,con i dati del cliente inseriti dentro ad un database e quindi con l'email del cliente gia a disposizione ,va solo richiamata)
    vi ringrazio in anticipo, sperando in un vostro aiuto che puo' essere anche utile per altri utenti dato la richiesta di form-script ,apparentemente senza risp utili ,simili a questi
    cordiali saluti Taibi montaggi
    Ultima modifica di dreadnaut : 23-03-2008 alle ore 19.12.20

  2. #2
    Guest

    Predefinito

    Bisogna usare il php, ma non sono pratico.

  3. #3
    Guest

    Predefinito

    avrei preferito tutto in javasc... cmq qualcuno è pratico di php?
    ho anche pensato :
    ma se imposto nelle variabili il valore numerico di ogni tipologia di prodotto ad es:

    function somma() {
    bancone=100
    cantilever=200
    (e così via)

    pero mi blocco qui cioè.. nella variabile che mi crea la somma ad esempio totale=bancone+cantilever+etc
    scritta così mi dà il risultato... ma siccome i vari prodotti cambiano... come devo scrivere il totale di modo chè mi inserisca nella somma il prodotto scelto nel form?
    Ultima modifica di taibimontaggi : 24-03-2008 alle ore 13.45.11

  4. #4
    Guest

    Predefinito riuscito

    dopo molte prove e inveimenti vari sono riuscito a stendere il codice anche se in modo poco professionale.
    lo posto qui di seguito per aiutare altri utenti bisognosi
    Codice:
    <html>
    
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nuova pagina 1</title>
    </head>
    
    <body>
    <head>
    <script type="text/javascript">
    function tipo(reg) {
    
       
       var lavori = new Array();
       var lavoro = document.getElementById('lavori');
       while(lavoro.options.length > 0) lavoro.removeChild(lavoro.options[0]); 
        
        
       
        if (reg == "") return;
       
       switch(reg) {
            case '60 montaggiomagazzino':            
                lavori.push('Rete Divisoria');
                lavori.push('Bancone vendita');
                lavori.push('Cantilever');
                lavori.push('Compattabile');
                lavori.push('Porta pallets');
                lavori.push('Soppalco carpenteria');
                lavori.push('Scaffalatura leggera');            
                lavori.push('Scaffalatura multipiano');
                lavori.push('Drive-in');
                
                //...
                break;
       
            case '70 montaggioufficio': 
                lavori.push('Sala attesa');
                lavori.push('Sala riunione');
                lavori.push('Mobili da ufficio');
                lavori.push('Reception');
                lavori.push('Parete divisoria');
                lavori.push('Parete Attrezzata');
                break;
           
            case '65 montaggionegozio':
                lavori.push('Gondola');
                lavori.push('Scaffalatura a muro');
                lavori.push('Espositori');
                lavori.push('bancone vendita');
                lavori.push('Parete Dogata');
                lavori.push('Vetrina');
                break;
                  
            default: 
       }
    
        
       for (i=0; i<lavori.length; i++) {
          opt = document.createElement('option');
          opt.setAttribute('value', ([i]*2.9)+lavori[i]);
          opt.setAttribute('text', lavori[i]);
          opt.innerHTML = lavori[i];
          lavoro.appendChild(opt);
       }
    }
    </script>
    </head>
    
    <body>
    <center>
    <font color="#007070" <h3><b>SCELGA LA TIPOLOGIA DI ARREDAMENTO CHE VUOLE EFFETTUARE</b></h3>
    <select id="lav" name="prova1" onchange="tipo(this.value)">
      <option value="0">Selezionare..</option>
      <option value="60 montaggiomagazzino">montaggio magazzino</option>
      <option value="70 montaggioufficio">montaggio ufficio</option>
      <option value="65 montaggionegozio">montaggio negozio</option>
    </select><br><br>
    
    <h3><b>SCELGA IL TIPO DI MONTAGGIO CHE VUOLE EFFETTUARE</b></h3>
    <select name="prova2" id="lavori">
       <option value="">selezionare...</option>
    </select><br><br>
    
    <h3><b>SCELGA LA ZONA DOVE VERRA' EFFETTUATO IL MONTAGGIO</b></h3>
    
    <select name="prova3" id="dove">
       <option value="0">selezionare...</option>
       <option value="50 toscana">Toscana</option>
       <option value="60 emiliaromagna">Emilia Romagna</option>
       <option value="60 lazio">Lazio</option>
       <option value="60 liguria">Liguria</option>
       <option value="60 umbria">Umbria</option>
       <option value="70 piemonte">Piemonte</option>
       <option value="70 lombardia">Lombardia</option>
       <option value="70 veneto">Veneto</option>
       <option value="70 marche">Marche</option>
       <option value="70 abruzzo">Abruzzo</option>
       <option value="80 valdaosta">Val d'Aosta</option>
       <option value="80 trentino">Trentino</option>
       <option value="80 friuli">Friuli</option>
       <option value="80 molise">Molise</option>
       <option value="80 campania">Campania</option>
       <option value="90 basilicata">Basilicata</option>
       <option value="90 puglia">Puglia</option>
       <option value="100 Calabria">Calabria</option>
       <option value="100 sicilia">Sicilia</option>
       <option value="100 sardegna">Sardegna</option>
    
    
    
    </select><br><br>
    
    <h3><b>INDICHI LA DATA DEL MONTAGGIO</b></h3>
    
    <select name="prova4" id="data1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
        </select>
    
    <select name="prova5" id="data2">
        <option value="gennaio">gennaio</option>
        <option value="febbraio">febbraio</option>
        <option value="marzo">marzo</option>
        <option value="aprile">aprile</option>
        <option value="maggio">maggio</option>
        <option value="giugno">giugno</option>
        <option value="luglio">luglio</option>
        <option value="agosto">agosto</option>
        <option value="settembre">settembre</option>
        <option value="ottobre">ottobre</option>
        <option value="novembre">novembre</option>
        <option value="dicembre">dicembre</option>
        </select>
        
        <select name="prova6" id="data3">
        <option value="2008">2008</option>
        <option value="2009">2009</option>
        <option value="2010">2010</option>
        <option value="2011">2011</option>
        <option value="2012">2012</option>
        <option value="2013">2013</option>
        <option value="2014">2014</option>
        <option value="2015">2015</option>
        </select><br><br>
    
    <h3><b>INDICHI SE VUOLE EFFETTUARE IL MONTAGGIO IN UN GIORNO FERIALE O FESTIVO</b></h3>
    
    <select name="prova7" id="data3">
        <option value="0">Selezionare</option>
        <option value="25">Giorno feriale</option>
        <option value="35">Giorno festivo</option>
        </select><br><br>
        
    <h3><b>INDICHI SE VUOLE ESEGUIRE IL MONTAGGIO DI GIORNO O DI NOTTE</b></h3>    
    
    <select name="prova8" id="data3">
        <option value="0">Selezionare</option>
        <option value="25">Lavoro di giorno</option>
        <option value="35">Lavoro di notte</option>
    
    </select>
    <script>
              
              function somma()   {
              
              a=parseInt(prova1.value);
              b=parseInt(prova2.value);
              c=parseInt(prova3.value);
              d=prova7.value;
              e=prova8.value;
              t=((a*1)+(b*1)+(c*1)+(d*1)+(e*1))
              
              if (a==0){
              alert("si prega di inserire la tipologia del lavoro");
              return;
              }
              
              else if (c==0) {
              alert("si prega di inserire la zona di montaggio") 
              return;
              }
              
              else if (d==0) {
              alert("si prega di indicare se giorno Feriale o Festivo") 
              return;
              }
    
              else if (e==0) {
              alert("si prega di indicare se il lavoro verrà eseguito di giorno o di notte") 
              return;
              }
    
              else {
              alert (("il costo giornaliero di ogni montatore è di ")+(t)+(" euro + iva"));
              }
              }
              
         
              
    </script><br><br>
    
    <input type="button" id="butn_3" value="preventivo" onclick="somma()" >
    </FONT>
    </center>
    </body>
    
    
    </html>

    un ultima necessità:

    come avevo già scritto , quest'area si trova in una zona privata con accesso tramite password e nome utente ( registrati in un database)

    se volessi avere un controllo sui preventivi che vengono effettuati tramite notifica alla mia email e contenente l'indirizzo email di chi ha effettuato il preventivo, come potrei fare?
    grazie

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •