Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27

Discussione: modificare un form

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100

    modificare un form

    salve a tutti!
    premetto che nn ho competenze di JavaScript, ma mi è stato detto che la risoluzione al mio problema è facilmente trovabile in JS...
    ho questo modulo:
    http://www.omniaracing.it/modulo_ord...ulo_ordini.htm

    a cui devo apportare due modifiche:
    1- cliccando sulla scritta "Aggiungi Prodotto" bisognerebbe poter far aggiungere al form un'ulteriore riga che replichi l'ultima (quella con le voci "Quantità", "Modello" e "Descrizione"), in modo che l'utente possa aggiungere un'ulteriore voce al suo ordine
    2- devo inserire un campo "Conferma Indirizzo Mail", in modo che l'utente possa confermare di aver inserito la mail correttamente

    mi date una mano, per piacere?
    grazie mille!
    ufino

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    help please!!!
    ufino

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    nessuno che mi possa aiutare?!?!
    ufino

  4. #4
    dunque, aggiungi queste righe di script

    codice:
    var righe = 0;
    function accoda()
    {
        righe++;
        nuova_riga = document.getElementById("prima_riga").cloneNode(true);
        nuova_riga.id="";
        inputs = nuova_riga.getElementsByTagName("INPUT");
        for(var i =0; i< inputs.length; i++)
        {
            inputs[i].value="";
            inputs[i].name += righe;
        }
        document.getElementById("tabella").insertBefore(nuova_riga, document.getElementById("ultima_riga"));
    }
    poi assegna un id al body della tua tabella cosi'

    codice:
    <tbody id="tabella">
    Infine assegna un id alla riga che contiene la scritta "aggiungi elemento". o Coumnque alla riga della tabella subito la riga del prodotto

    codice:
    <tr id="ultima_riga">
              <td align="right">
              Aggiungi Prodotto          
        </td>
        </tr>
    2- devo inserire un campo "Conferma Indirizzo Mail", in modo che l'utente possa confermare di aver inserito la mail correttamente
    Cioe'? Non basta che metti due campi email? Cosa serve javascript? Vuoi per caso che js controlli che i due campi siano uguali?

    Aggiungi un campo fatto cosi'. Il controllo verra' effettuato quando il secondo campo email perde il focus

    codice:
    <input name="email2" size="35" style="border: 1px solid rgb(0, 0, 0); font-size: 10pt; color: rgb(0, 0, 0); background-color: rgb(249, 249, 249);" onblur="if (this.form.email.value != this.value) alert('Email differenti')">

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Ciao Raven,

    grazie per il supporto!

    per il secondo campo mail (da usare per confermare la mail inserita) ho fatto come hai detto, tutto OK!

    per l'altro pezzo di codice invece vorrei chiederti una cosa:
    il primo pezzo di codice dove lo inserisco? nell'head della pagina? devo includerlo in qualche tag specifico?
    :master:
    ufino

  6. #6
    come tutte le definizioni di funzione il posto migliore e' in un tag <script> dentro l'hed della pagina

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Raven,
    grazie per le tue indicazioni, ora il form funziona
    ho apportato solo due piccole modifiche per garantire il funzionamento:
    1- nella penultima riga della tabella ho inserito l'id <TR id="prima_riga">
    2- nell'ultima riga ho riscritto come href="javascript:accoda();"

    ora però ho un altro problema...se aggiungo dei campi opzionali alla tabella, questi non mi vemgono inviati via mail...ho provato a modificare il file "fmail.php" che gestisce l'invio, ma nn funziona....puoi darci un'occhiata? il codice è questo:


    --------------------------------------
    <?php


    //this is kinda plain english
    //basicly it check's the recipient address...if you where wondering what it does

    // $recipient_in = split(',',$recipient);
    //for ($i=0;$i<count($recipient_in);$i++) {
    // $recipient_to_test = trim($recipient_in[$i]);
    // if (!eregi("^[_\\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\\.)+[a-z]{2,3}$", $recipient_to_test)) {
    // print_error("I NEED A VALID RECIPIENT EMAIL ADDRESS ($recipient_to_test) TO CONTINUE");
    // }
    //S}
    //change require to required
    if ($required)
    $require = $required;

    if ($require) {
    //this is kinda plain english
    $require = ereg_replace( " +", "", $require);
    $required = split(",",$require);
    for ($i=0;$i<count($required);$i++) {
    $string = trim($required[$i]);
    if((!(${$string})) || (!(${$string}))) {
    if ($missing_fields_redirect) {
    header ("Location: $missing_fields_redirect");
    exit;
    }
    $require;
    $missing_field_list .= "You Did Not Enter: $required[$i]
    \n";
    }

    /* for php programmers only
    if variables are'nt gettin sent you can just
    uncomment this line and include this code which will get all variables sent
    in the form and put them all in the message variable */

    //$message = parse_form($HTTP_POST_VARS);

    /* if underscore's dont appear, put them in, its just may editor is SHIT */

    /*
    i dont use this because i need some variables and its not very reliable this was used in v1.0 & v1.1 */

    }
    }

    //if no subject use $othersub
    if (!$subject)
    $subject = "$othersub";
    //if no $othersub & no $subject use form submission as subject
    else if ((!$othersub) && (!$subject))
    $subject = "Form Submission";

    //Send E-mail
    //other = if you added a extra field to the form call them other - other4
    // dont worry bout the $other variables if you dont have them in the form nothing will show in the email

    mail("$recipient","$subject","

    -- Messaggio inviato tramite il modulo contatti --
    Da:
    $name

    e-mail:
    $email

    Telefono:
    $telefono

    Quantità:
    $campo_uno
    Modello:
    $campo_due
    Descrizione:
    $campo_tre


    ","From: $name <$email>");
    // END send e-mail


    // INVIO DELLA MAIL
    if(@mail($to, $subject, $body, $headers)) { // SE L'INOLTRO E' ANDATO A BUON FINE...

    header("location: conferma.htm");

    } else {// ALTRIMENTI...

    header("location: problema.htm");

    }

    ?>
    --------------------------------------
    ufino

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    UP!
    ufino

  9. #9
    Guarda, non ho letto tutto il codice, ma mi pare di capire che il problema sia PHP e non javascript.

    Ad ogni modo, prima di farti spostare il thread ti spiego cosa fa il mio script:

    in pratica lo script clona la tua riga (salvo prima svuotarla in caso fosse gia stata compilata).

    Pero' cambia automaticamente i nomi ai campi, per non avere nomi uguali

    quindi avrai nella prima riga:

    campo_uno campo_due campo_tre

    mentre nella seconda si chiameranno

    campo_uno1 campo_due1 campo_tre1

    eccetera.

    Per cui PHP dovra' controllare che esistano questi nuovi campi. Ad esempio con un while

    Cosa che - mi pare - non hai implementato.

    Se e' questo il problema allora devi chiedere nel forum PHP

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    1,100
    Originariamente inviato da raven74
    Se e' questo il problema allora devi chiedere nel forum PHP
    immaginavo che potesse essere un problema di PHP
    ora posto nell'altra sezione, sperando di ricevere aiuto

    grazie ancora per il tuo supporto!
    ufino

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.