• User

    Prezo in base al prodotto

    Salve, avrei bisogno di una soluzione visto che da solo non riesco a cavarne piede.
    Ho uno script java che mi calcola quante parole ci sono in una textarea.
    Ora riesco a stamparle a video. Ma voglio creare un calcolo.
    Vorrei che in base al numero di parole scritte apparisse a video anche il prezzo.
    Es: se nella textarea uno scrive 20 parole vorrei che quando clicca su avanti comparisse 20 parole ? 4,40
    Ora non riesco a capire come agire con il php (premetto che ho iniziato da poco).
    Lo script è questo:

    <form method="post" name="mioform" action="controllo.php">
    <script type="text/javascript">
    function countwords()
    {
    var formtext=document.mioform.text.value;
    formtext=formtext.split(" ");
    document.mioform.nbwords.value= formtext.length;
    document.mioform.nbchar.value= document.mioform.text.value.length;
    }
    </script>
    <textarea rows="12" name="text" cols="60" wrap="virtual"></textarea>
    <p>
    <input type="submit" value="Avanti" onclick="javascript:countwords();">
    <input type="text" name="nbwords" />
    <input type="text" name="nbchar" />
    </p>
    </form>

    Sulla pagina controllo.php riesco a stampare a video i valori delle parole e dei caratteri.
    Ora (i caratteri li eliminerò...xchè era solo una prova), vorrei che quando vado su controllo.php
    apparisse affianco al numero di parole il totale da pagare.
    Come detto prima: 20 parole ? 4,40
    Ovviamente più parole....più costo.
    Farei 5 fasce, 20 - 50 - 100 - 200 - 500
    A ogni fascia corrisponde un costo.
    Prima di inviare il cliente al modulo di pagamento vorrei mostrargli a video quant' è il totale della sua operazione.
    Ma non ne cavo piede :-(((((( riesco solo a stampare ma non a fare un calcolo.
    Ringrazio chiunque possa darmi una mano perchè inizio a demoralizzarmi :((((


  • User Attivo

    Credo che tu intenda questo:

    
    <script type="text/javascript">
    function countwords()
    {
      var formtext=document.mioform.text.value;
      formtext=formtext.split(" ");
      var msg;
      msg = '';
      msg = msg+formtext.length+" parole\n";
      msg = msg+document.mioform.text.value.length+" caratteri\n";
      msg = msg+'Procedo?';
        if(confirm(msg)){
          document.mioform.submit();
        }
    }
    </script>
    <form method="post" name="mioform" action="controllo.php">
    <textarea rows="12" name="text" cols="60" wrap="virtual"></textarea>
    <input type="button" value="Avanti" onclick="javascript:countwords();">
    </form>
    
    

    Se lo vuoi veramente fatto bene secondo me dovresti metterci un pò di ajax.

    Fra l'altro qui di php e mysql non ce n'è, credo tu abbia sbagliato sezione. Ma di questo ci dirà chi di dovere.


  • User

    Ciao e grazie della risposta, intanto sopra ho scritto "Ho uno script java che mi calcola quante parole ci sono in una textarea." Poi ho scritto in questa sezione perchè voglio che il tutto venga inviato a una pagina php che mi dia il risultato sopra richiesto.
    Voglio stampare i dati che ho scritto sopra con il prezzo auomatico in base ai caratteri digitati in textarea, su una pagina php alla quale vengono inviati i dati e che si chiama "controllo.php"
    form method= post (non posso inserire alcuni caratteri xche mi dice che non sono premium)
    Su questa pagina io riesco a stampare i dati con il metodo $nbwords=$_POST['nbwords']; echo Parole scritto: ".$nbwords."<br>";
    pero non ho capito come far si che in base alle parole che uno usa lo script dica Tot parole = tot prezzo.
    Cioe come faccio a dirgli che 20 parole devono costare 4,40 €?
    Come posso fare ? 😞
    In che sezione devo scrivere per avere aiuto?


  • User

    Con il tuo script (provato adesso) mi dice solo che ho scritto tot parole e tot caratteri.
    Questo scopo l' avevo raggiunto....a me serve che se uno scrive 20 parole sulla pagina controllo.php appaia il prezzo.
    Se uno ne scrive 50 appaia un altro prezzo e cosi via
    Esempio:
    20 parole tot € 4,40
    50 parole tot € 6,50
    Se non posso continuare a scrivere qui mi dici dove posso farlo perfavore? Ho bisogno di questa soluzione :(((


  • User Attivo

    Scusa, ma come è fatta la pagina "controllo.php"?


  • User Attivo

    In php il conteggio può essere così:

    
    <?php
    $text = $_POST['text'];
    $nbwords = $_POST['nbwords'];
    
    $prezzo = 9999;
    
    if ($nbwords < 501){
      $prezzo = 50;
    }
    if ($nbwords < 201){
      $prezzo = 28;
    }
    if ($nbwords < 101){
      $prezzo = 15;
    }
    if ($nbwords < 51){
      $prezzo = 8;
    }
    if ($nbwords < 21){
      $prezzo = 4.40;
    }
    print "<p>$text</p>";
    
    print "Hai immesso $nbwords parole. L'importo da pagare &egrave; di $prezzo &euro;";
    ?>
    
    

    dove ogni "if" rappresenta una fascia in ordine decrescente.


  • User

    Grazie di cuore davello 🙂 L' ho adattato a ciò che mi serve e funziona. Ci stavo uscendo di testa. E poco che ho iniziato a smanettare....quindi potrai capire che non mi viene facile essendo autodidatta. Comunque in che sezione devo scrivere se avessi altri problemi? Almeno cosi non sbaglio di nuovo!!
    Grazie ancora 🙂


  • User Attivo

    Se lo staff non ha detto niente è probabile che tu abbia scelto la sezione giusta e chi si sbaglia sono io.

    Per l'aiuto non c'è di che 😉 .