Tiedoston pitää olla PDF.
"; goto err; } $docext = 'null'; $docname = 'null'; if ($_FILES["docfile"]["error"] == UPLOAD_ERR_OK) { # echo "Upload ok"; $tmp_doc_name = $_FILES["docfile"]["tmp_name"]; $docname = preg_replace('/[^-0-9a-zA-ZåäöüÅÄÖÜ_,.]+/', '_', basename($_FILES["docfile"]["name"])); $docname = preg_replace('/^\.+/', '', $docname); if (preg_match('/^.+\.([a-zA-Z0-9]+)$/', $docname, $matches)) { $ext = $matches[1]; if ($ext == 'html' || $ext == 'htm' || $ext == 'php') $ext = '$ext.dat'; } else $ext = 'dat'; $docext = "'" . $ext . "'"; $docname = "'" . $docname . "'"; } # Luo salasana, jos sitä ei ole opettajalla valmiina, ja talleta kantaan $send_password_email = FALSE; if ($opettaja_no !== '') { if ($hash === '') { # If the password is missing, attempt to # set it and send it in an email. # This allows you to null the password and # next time the teacher sends stuff she gets # a new password. $password = genpass(7); $salt = genpass(2); $hash = crypt($password, $salt); $res = mysqli_query($dbase, "update opettaja set password='$hash' where opettaja_no=$opettaja_no"); if ($res !== FALSE) $send_password_email = TRUE; } } else { # Ei vielä tietokannassa, talletetaan. Jos kentät ovat järkeviä! $virhe = FALSE; if (FALSE === filter_var($email, FILTER_VALIDATE_EMAIL)) { echo "Sähköpostiosoite ei näytä oikealta.
"; $virhe = TRUE; } if ($name === '') { echo "Kirjoita opettajan nimi myös.
"; $virhe = TRUE; } if ($koulu === '') { echo "Kirjoita koulun nimi myös.
"; $virhe = TRUE; } if ($luokka === '') { echo "Kirjoita luokan nimi myös.
"; $virhe = TRUE; } if ($oppilas === '') { echo "Kirjoita oppilaan nimi myös.
"; $virhe = TRUE; } if ($parhaita != '1') { $parhaita = 0; } if ($s2 != '1') { $s2 = 0; } if ($virhe) goto err; $res = mysqli_query($dbase, "insert into opettaja (opettaja_no, email, name, koulu, password, registered) values (null, '$email', '$name', '$koulu', '', now())" ); if ($res === FALSE) { echo "En pystynyt tallettamaan opettajan tietoja tietokantaan. Tässä palvelussa on ongelma. " . mysqli_error ($dbase) . "
"; goto err; } $opettaja_no = mysqli_insert_id($dbase); $password = genpass(7); $salt = genpass(2); $hash = crypt($password, $salt); $res = mysqli_query($dbase, "update opettaja set password='$hash' where opettaja_no=$opettaja_no"); if ($res === FALSE) { echo "En pystynyt tallettamaan joitain opettajan tietoja tietokantaan. Tässä palvelussa on ongelma. " . mysqli_error ($dbase) . "
"; goto err; } $send_password_email = TRUE; } # Talleta aine kantaan $res = mysqli_query($dbase, "insert into aine (aine_no, opettaja_no, koulu, luokka, oppilas, parhaita, s2, pdfname, docname, docext, uploaded, deleted) values (null, $opettaja_no, '$koulu', '$luokka', '$oppilas', $parhaita, $s2, '$pdfname', $docname, $docext, now(), 0)" ); if ($res === FALSE) { echo "En pystynyt tallettamaan ainetta tietokantaan. Tässä palvelussa on ongelma. " . mysqli_error ($dbase) . "
"; goto err; } $aine_no = mysqli_insert_id($dbase); # siirrä tiedosto paikalleen move_uploaded_file($tmp_pdf_name, "$uploads_dir/$aine_no.pdf"); if ('null' !== $docname) move_uploaded_file($tmp_doc_name, "$uploads_dir/${aine_no}_alk.$ext"); ?>Kiitos aineen lähettämisestä! Lähetettyjä aineita voi tarkastella ">tästä. Jos vahingossa on toimitettu väärä aine, voi lähettää uuden aineen. Ota yhteyttä sähköpostilla, jos virheellisiä aineita pitää poistaa.
"; $mres = mb_send_mail($email, $subject, $message, $headers); if ($mres) { echo "Sähköpostiin on lähetetty salasana, jolla lähetettyjä aineita voi tarkastella.
"; } else { echo "Sähköpostin lähettäminen epäonnistui. Salasanaa ei lähetetty.
"; } } } } # end of form handling err: ?>Kilpailua ei järjestetä vuonna
Kilpailu ei ole vielä avoinna
Vuonna kirjoitelmat toimitetaan kilpailuun ainoastaan tämän palvelun kautta. Kilpailuaika on 31.3. asti. Opettajan valitsemien parhaiden lisäksi voidaan palauttaa arkistoitaviksi kaikki kirjoitelmat. Kirjoitelmat tulee olla muunnettuna PDF-tiedostoiksi. Lisäksi on mahdollista toimittaa alkuperäinen tekstinkäsittelytiedosto arkistoomme.