Visualizzazione risultati 1 fino 12 di 12

Discussione: Aiuto script per creare un programma preventivi

  1. #1
    aradiauffi non è connesso Neofita
    Data registrazione
    06-09-2004
    Messaggi
    8

    Predefinito Aiuto script per creare un programma preventivi

    Salve a tutti
    Sto cercando di creare due pagine per un programma

    cerco di spiegarmi bene

    pagina A un form per inserire nel database dei dati in tabella (materiale metri kw)

    una volta registrati un pagina dove possa fare il preventivo

    nella casella materiali deve uscire in tendina la lista del database e a seconda di che materiale si sceglie devono scriversi i campi kw e prezzo

    come posso fare?

    ho gia creato i due form quello dell'inserimento non va ç_ç e quello della seconda pagina devo capire come mettere i menu da db

    grazie a chi puo' aiutarmi


    __________________________________________________ _______________
    Codice PHP:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
    Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>

    <head>
    <title>PAGINA CARICAMENTO DATI</title>
    </head>

    <body>
    <table border="0">
    <tr>
    <td align="center">Inserisci i dati richiesti</td>
    </tr>
    <tr>
    <td>
    <table>
    <form method="post" action="inserimento.php">
    <tr>
    <td>Tipo di materiale</td>
    <td><input type="text" name="materiale" size="40">
    </td>
    </tr>
    <tr>
    <td>Prezzo al metro</td>
    <td><input type="text" name="prezzomt" size="40">
    </td>
    </tr>
    <tr>
    <td>Assorbimento Kw</td>
    <td><input type="text" name="assorbimentokw" size="40">
    </td>
    </tr>
    <tr>
    <td></td>
    <td align="right"><input type="submit"
    name="Invia" value="Invia"></td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    <?

    mysql_connect
    ("xxxxxx","xxxxx","xxxxxx");

    mysql_select_db("xxxxxx");
    $materiali=$_POST['materiale'];
    $prezzomt=$_POST['prezzomt'];
    $assorbimentokw=$_POST['assorbimentokw'];

    $query = "INSERT INTO materiali VALUES('','$materiali',)";
    $query = "INSERT INTO prezzomt VALUES('','$prezzomt',)";
    $query = "INSERT INTO assorbimentokw VALUES('','$assorbimentokw',)";

    mysql_query($query) or die( "Errore nella query. Query non eseguita");
    mysql_close();
    ?>
    </body>
    </html>
    echo("<br>Inserimento avvenuto correttamente");
    } else{
    echo("<br>Inserimento non eseguito");
    }
    ?>
    </body>
    </html>
    __________________________________________________ ______________

    pagina per preventivo

    __________________________________________________ ______________
    Codice PHP:
    <form action="mioform.php" method="post" name="xxxxxxx">
    <input type="hidden" name="formID" />

    <label>Inserisci il materiale</label>
    <input type="text" name="materiale">
    <label>Inserisci il prezzo </label>
    <input type="text" name="prezzo">
    <label>Inserisci i metri </label>
    <input type="text" name="metri"><br>
    <label>Inserisci i Kw consumati</label>
    <input type="text"name="Kw"><br>
    <label>Inserisci le ore </label>
    <input type="text" name="ore">
    <label>Inserisci la fascia di prezzo</label>
    <input type="text" name="prezzoore"><br>
    <label>Inserisci tipo di sconto</label>
    <input type="text" name="sconto"><br>
    <label>Inserisci percentuale d'IVA</label>
    <input type="text" name="iva"><br>
    </form>

    <?
    $articolo
    =$_POST['materiale'];
    $prezzo=$_POST['prezzo'];
    (
    $articolo == 'materiale') {
    $tot = $articolo* $prezzo;
    }
    echo
    $tot;
    $kw=$_POST['Kw'];
    $metri=$_POST['metri'];
    $tot_quadri = $Kw*$metri/3;
    }
    echo
    $tot_quadri;
    $ore=$_POST['ore'];
    $prezzoore=$_POST['prezzoore'];
    $tot_ore = $ore*$prezzoore;
    }
    echo
    $tot_ore;
    $sconto=$_POST['sconto'];
    $tot_sconto = $tot+$tot_ore/100*$sconto;
    }
    echo
    $tot_sconto;
    $iva=$_POST['iva'];
    $tot_iva = $tot+$tot_ore/100*$iva;
    }
    echo
    $tot_iva;
    $tot_risultato = $tot+$tot_ore-$tot_sconto+$tot_iva;
    }
    echo
    $tot_risultato;
    ?>
    <input type="submit" name="calcola">
    __________________________________________________ _______________

    EDIT:

    lol scusa hai ragione XD
    Ultima modifica di alemoppo : 04-09-2013 alle ore 13.55.26 Motivo: +tag [php] + usa il tasto "Edita" per editare i messaggi

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    Codice PHP:
    $query = "INSERT INTO materiali VALUES('','$materiali',)";
    $query = "INSERT INTO prezzomt VALUES('','$prezzomt',)";
    $query = "INSERT INTO assorbimentokw VALUES('','$assorbimentokw',)";

    mysql_query($query) or die( "Errore nella query. Query non eseguita");
    Lo sai che viene eseguita soltanto l'ultima query perché le altre sono sovrascritte dall'ultima?


    Comunque, ti consiglio di rivedere bene il codice, perché ci sono errori di distrazione. Ad esempio, hai messo due volte
    Codice HTML:
    </body>
    </html>[...]
    </body>
    </html>
    Inoltre, il submit del form sotto è fuori dal form!

    EDIT: riguarda anche le query, perché sono sintatticamente errate (per la virgola).

    Ciao!
    Ultima modifica di alemoppo : 04-09-2013 alle ore 14.40.12

  3. #3
    aradiauffi non è connesso Neofita
    Data registrazione
    06-09-2004
    Messaggi
    8

    Predefinito

    quindi come faccio per tre query differenti?

    ...ops non avevo visto il doppio html XD riguardo tutto

  4. #4
    Guest

    Predefinito

    Dovrai fare così:
    Codice PHP:
    $query = "INSERT INTO materiali VALUES('','$materiali',)";
    mysql_query($query) or die( "Errore nella query. Query non eseguita");

    $query = "INSERT INTO prezzomt VALUES('','$prezzomt',)";
    mysql_query($query) or die( "Errore nella query. Query non eseguita");

    $query = "INSERT INTO assorbimentokw VALUES('','$assorbimentokw',)";
    mysql_query($query) or die( "Errore nella query. Query non eseguita");

  5. #5
    aradiauffi non è connesso Neofita
    Data registrazione
    06-09-2004
    Messaggi
    8

    Predefinito

    il pulsante del submit e' dentro la tabella va messo altrove?

    e per visualizzare invece la tendina direttamente dal db per la scelta del campo?

  6. #6
    Guest

    Predefinito

    Il pulsante submit va inserito prima della chiusura del tag form.

    e per visualizzare invece la tendina direttamente dal db per la scelta del campo?
    cosa intendi?

  7. #7
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    Penso che dovresti riguardarti un attimo i form.

    Per fare un menù a tendina con elementi presi dal db, semplicemente fai una cosa del tipo:

    Codice PHP:
    <select>
    <?php
    ciclo
    (<$elemento[]>)
    echo
    '<option value="'.$elemento[$i].'">'.$elemento[$i].'</option>';
    ?>
    </select>
    Ciao!
    Ultima modifica di alemoppo : 04-09-2013 alle ore 15.06.33

  8. #8
    aradiauffi non è connesso Neofita
    Data registrazione
    06-09-2004
    Messaggi
    8

    Predefinito

    non avevo proprio chiuso il form Oo poi mi domandavo perche' non funzionava :P

    cerco di spiegarmi il secondo foglio dovrebbe far compilare i campi direttamente con i dati inseriti nel db

    esempio io inserisco:

    1 filo 5E 3kw
    2 lampada 3E 5kw

    dalla seconda pagina esce la tendina dei materiali se selezioni filo si autocompila prezzo e kw

    come vedi dallos cript la seconda pagina ha gia i suoi calcoli e funziona ma nnon so come implementare la scelta

    EDIT:

    niente ho ricontrollato e inserito il pulsante dentro la chiusura form ma nisba non mi carica neanche pagata nel db sigh
    Ultima modifica di alemoppo : 07-09-2013 alle ore 14.42.29 Motivo: non fare post consecutivi: usa il tasto "Edita" per modificare i messaggi

  9. #9
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    Puoi riportare le query? Perché le query sopra hanno una virgola di troppo.

    Ciao!

  10. #10
    aradiauffi non è connesso Neofita
    Data registrazione
    06-09-2004
    Messaggi
    8

    Predefinito

    Qui forse sono riuscita a risolvere ora

    Codice PHP:
    <head>
    <title>PAGINA CARICAMENTO DATI</title>
    </head>

    <body>
    <table border="0">
    <tr>
    <td align="center">Inserisci i dati richiesti</td>
    </tr>
    <tr>
    <td>
    <table>
    <form method="post" action="inserimento.php">
    <tr>
    <td>Tipo di materiale</td>
    <td><input type="text" name="materiale" size="40">
    </td>
    </tr>
    <tr>
    <td>Prezzo al metro</td>
    <td><input type="text" name="prezzomt" size="40">
    </td>
    </tr>
    <tr>
    <td>Assorbimento Kw</td>
    <td><input type="text" name="assorbimentokw" size="40">
    </td>
    </tr>
    <tr>
    <td></td>
    <td align="right"><input type="submit"
    name="Invia" value="Invia"></td>
    </tr>
    </table>
    </td>
    </tr>
    </table></form>

    <?
    $dbaddress
    ="xxxxxxxx";
    $login="xxxxxx";
    $password="xxxxxx";
    $dbname="xxxxxx";
    if(!(
    $conn=mysql_connect($dbaddress, $login, $password)))
    {echo
    "Connessione al server non riuscita";}
    mysql_select_db($dbname, $conn);

    $materiali=$_POST['materiale'];
    $prezzomt=$_POST['prezzomt'];
    $assorbimentokw=$_POST['assorbimentokw'];


    $query = "INSERT INTO materiali (materiale,prezzomt,assorbimentokw) VALUES ('$_POST[materiale]','$_POST[prezzomt]','$_POST[assorbimentokw]')";
    $result = mysql_query($query);
    if (
    $result)
    echo
    "Nuovo Materiale Inserito.";

    mysql_close();


    ?>

  11. #11
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    È vero che mettendo variabili nelle stringhe tra doppi apici, queste vengono sostituite con lo loro contenuto. Però, quando sono oggetti o array, bisognerebbe metterli tra parentesi graffe.
    Io personalmente, invece, faccio una cosa circa del tipo:

    Codice PHP:
    $query = "INSERT INTO materiali (materiale,prezzomt,assorbimentokw) VALUES ('".$_POST['materiale']."','".$_POST['prezzomt']."','".$_POST['assorbimentokw']."')";
    Ciao!

  12. #12
    Guest

    Predefinito

    Dovresti provare così:
    Codice PHP:
    $query = "INSERT INTO materiali (materiale,prezzomt,assorbimentokw) VALUES ('".$_POST["materiale"]."','".$_POST["prezzomt"]."','".$_POST["assorbimentokw"]."')";
    In questo modo la sintassi se non vado errato dovrebbe essere corretta.

    ---EDIT---
    Anticipato da alemoppo

Regole di scrittura

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