Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $y_tiedot = "host=dbstud.sis.uta.fi port=5432 dbname=a637512 user=a637512 password=salasana";
- $yhteys = pg_connect($y_tiedot) or die("Tietokantayhteyden luominen epäonnistui.");
- if (isset($_POST['tallenna'])) {
- $tyokohde_id = intval($_POST['tyokohde_id']);
- if (!empty($tyokohde_id)) {
- pg_query('BEGIN');
- $tunti_paivitys = $tunti_ale_paivitys = $tarvike_paivitys = $tarvike_ale_paivitys = true;
- // Tuntitöiden ja mahdollisten alennusprosenttien lisääminen.
- $tuntityypit = array('tyo', 'suunnittelu', 'aputyo');
- $tunnit = array(intval($_POST['tyo']), intval($_POST['suunnittelu']), intval($_POST['aputyo']));
- $alet = array($_POST['tyo_ale'], $_POST['suunnittelu_ale'], $_POST['aputyo_ale']);
- for ($i = 0; $i < 3; $i++) {
- if (!empty($tunnit[$i])) {
- $tunti_lisays = "UPDATE tiko_ht.tyokohde_tuntityo SET maara = maara + $1
- WHERE tyokohde_id = $2 AND tyyppi = $3";
- $tunti_paivitys = pg_query_params($tunti_lisays, array($tunnit[$i], $tyokohde_id, $tuntityypit[$i]));
- }
- if ($alet[$i] != "") {
- $tunti_ale_lisays = "UPDATE tiko_ht.tyokohde_tuntityo SET alennusprosentti = $1
- WHERE tyokohde_id = $2 AND tyyppi = $3";
- $tunti_ale_paivitys = pg_query_params($tunti_ale_lisays, array($alet[$i], $tyokohde_id, $tuntityypit[$i]));
- }
- if (!$tunti_paivitys || !$tunti_ale_paivitys)
- break;
- }
- // Tarvikkeiden ja mahdollisten alennusprosenttien lisääminen.
- for ($tarvikeNro = 1; $tarvikeNro <= intval($_POST['tarvikeLkm']); $tarvikeNro++) {
- $tarvike_id = intval($_POST['tarvike_id' . strval($tarvikeNro)]);
- $tarvike_maara = intval($_POST['tarvike_maara' . strval($tarvikeNro)]);
- $tarvike_ale = $_POST['tarvike_ale' . strval($tarvikeNro)];
- if (!empty($tarvike_id)) {
- $tarvike_lisays = "UPDATE tiko_ht.tarvike_tyokohde SET maara = maara + $1
- WHERE tyokohde_id = $2 AND tarvike_id = $3";
- $tarvike_paivitys = pg_query_params($tarvike_lisays, array($tarvike_maara, $tyokohde_id, $tarvike_id));
- // Jos ei vaikuttanut mihinkään riviin niin tarviketta ei vielä ole. Lisätään se.
- if (pg_affected_rows($tarvike_paivitys) == 0) {
- $tarvike_lisays = "INSERT INTO tiko_ht.tarvike_tyokohde (tarvike_id, tyokohde_id, maara)
- VALUES ($1, $2, $3)";
- $tarvike_paivitys = pg_query_params($tarvike_lisays, array($tarvike_id, $tyokohde_id, $tarvike_maara));
- }
- if ($tarvike_ale != "") {
- $tarvike_ale_lisays = "UPDATE tiko_ht.tarvike_tyokohde SET alennusprosentti = $1
- WHERE tyokohde_id = $2 AND tarvike_id = $3";
- $tarvike_ale_paivitys = pg_query_params($tarvike_ale_lisays, array($tarvike_ale, $tyokohde_id, $tarvike_id));
- }
- // Jos ilmeni virheitä niin poistutaan silmukasta.
- if (!$tarvike_paivitys || !$tarvike_ale_paivitys)
- break;
- }
- }
- // Tarkistetaan tapahtuiko virheitä.
- if ($tunti_paivitys && $tunti_ale_paivitys && $tarvike_paivitys && $tarvike_ale_paivitys)
- $viesti = 'Tunnit ja tarvikkeet lisätty.';
- else
- $viesti = 'Tunteja ja tarvikkeita ei lisätty: ' . pg_last_error();
- pg_query('COMMIT');
- }
- else {
- $viesti = 'Pakollinen tieto puuttuu: Työkohteen tunnus.';
- }
- }
- pg_close($yhteys);
- ?>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>Tapahtuma 2: Tuntitöiden lisääminen työkohteeseen</title>
- <script type="text/javascript"
- src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
- </script>
- <script type="text/javascript">
- $(document).ready(function(){
- var laskuri = 1;
- $('#tarvikeLisays').click(function() {
- if (laskuri == 1) {
- $('#tarvikeLista').append('<tr><th>Tarvike</th><th>Tarvikkeen tunnus</th>' +
- '<th>Tarvikkeen määrä</th><th>Tarvikkeen alennusprosentti</th></tr>');
- }
- $('#tarvikeLista').append('<tr><td>' + laskuri + '.</td>' +
- '<td><input type="text" name="tarvike_id' + laskuri + '" /></td>' +
- '<td><input type="text" name="tarvike_maara' + laskuri + '" /></td>' +
- '<td><input type="text" name="tarvike_ale' + laskuri + '" /></td></tr>');
- document.getElementById("tarvikeLkm").value = laskuri;
- laskuri++;
- });
- });
- </script>
- </head>
- <body>
- <h1>Tuntitöiden lisääminen työkohteeseen</h1>
- <form action="T2.php" method="post">
- <?php if (isset($viesti)) echo '<p style="color:red">'.$viesti.'</p>'; ?>
- <table>
- <tr>
- <td>Työkohteen tunnus</td>
- <td><input type="text" name="tyokohde_id" value="" /></td>
- </tr>
- <tr>
- <td>Työtuntien määrä</td>
- <td><input type="text" name="tyo" value="" /></td>
- <td>Työtuntien alennusprosentti</td>
- <td><input type="text" name="tyo_ale" value="" /></td>
- </tr>
- <tr>
- <td>Suunnittelutuntien määrä</td>
- <td><input type="text" name="suunnittelu" value="" /></td>
- <td>Suunnittelutuntien alennusprosentti</td>
- <td><input type="text" name="suunnittelu_ale" value="" /></td>
- </tr>
- <tr>
- <td>Aputyötuntien määrä</td>
- <td><input type="text" name="aputyo" value="" /></td>
- <td>Aputyötuntien alennusprosentti</td>
- <td><input type="text" name="aputyo_ale" value="" /></td>
- </tr>
- </table>
- <table id="tarvikeLista"></table>
- <input type="button" value="Lisää tarvike" id="tarvikeLisays" />
- <br />
- <input type="hidden" name="tarvikeLkm" id="tarvikeLkm" placeholder="0" />
- <br />
- <input type="submit" name="tallenna" value="Lisää tiedot" />
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement