Webbserv1: Källkod
Webbserverprogrammering 1

Show sourcecode

The following files exists in this folder. Click to view.

webbsrvprg/projects/slutprojekt/

blala.php
createtable.php
deletetable.php
deletetables.php
login.php
signup.php
verify.php

signup.php

102 lines UTF-8 Windows (CRLF)
<!doctype html>
<html>

<body>
<?php
include ('../../dbconnection.php');
$message null;
  if (isset(
$_POST['pass']) && !empty($_POST['pass'])) {
    
$fName $_POST['fName'];
    
$lName $_POST['lName'];
    
$email $_POST['email'];
    
$pass password_hash($_POST['pass'], PASSWORD_DEFAULT);
    
$bio $_POST['bio'];
    
$city $_POST['city'];
    
$interest $_POST['interest'];
    
$token bin2hex(random_bytes(16));


    if(isset(
$_FILES["image"]["tmp_name"]) && $_FILES["image"]["tmp_name"] != ""//isset funktionen returnerar true om filen är definierad och ej tom sträng
    
{
      
$destination "../../../filhantering/".$_FILES["image"]["name"];
      echo 
$_FILES["image"]["tmp_name"];
    
//laddar upp vald fil
      
copy($_FILES["image"]["tmp_name"], $destination); //kopiera den temporära filen till test-katalogen som med sitt riktiga namn.
      
$image $destination;
      
unlink($_FILES["image"]["tmp_name"]); //avlänkar filen
    
}
    
    try {    
        
$sql "INSERT INTO webusers (fName, lName, email, pass, bio, city, admin, token, verified, date) 
          VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, now())"
;
        
$stmt $dbconn->prepare($sql);
        
$data = array($fName$lName$email$pass$bio$city'1'$token'0');
        
$stmt->execute($data);

        echo 
"Konto skapat";

        
$sql "SELECT * FROM webusers WHERE id = (SELECT MAX(id) FROM webusers)";
        
$stmt $dbconn->prepare($sql);
        
$stmt->execute();
        
$res $stmt->fetch(PDO::FETCH_ASSOC);
        
$userId htmlentities($res['id']);


        
$sql "INSERT INTO pictures (userId, picture) 
        VALUES (?, ?)"
;
        
$stmt $dbconn->prepare($sql);
        
$data = array($userId$image);
        
$stmt->execute($data);
            
        echo 
"Konto skapat";

        
$verify_link "https://labb.vgy.se/~noahet/webbsrvprg/projects/slutprojekt/verify.php?email=" urlencode($email) . "&token=" $token;

        
$headers "From: no-reply@banan.com";
        
$subject "Verifiera din e-postadress";
        
$message "Klicka på länken för att verifiera din e-post: $verify_link";
        
mail($email$subject$message$headers);

        
$lastId $dbconn->lastInsertId();
    }
    catch(
PDOException $e)  {
        echo 
$sql "<br>" $e->getMessage();
    }
    
    
$dbconn null;
  } else {
    
$message .= "<br />Du måste fylla i fälten!<br /><br />";
  }
echo 
$message;
?>
<form method="post" action="" enctype="multipart/form-data"> 

  Förnamn: 
  <input type="text" name="fName" size=40 maxlength=100 required><br><br>

  Efternamn:
  <input type="text" name="lName" size=40 maxlength=100 required><br><br>

  Epost:
  <input type="email" name="email" size=40 maxlength=100 required><br><br>

  Lösenord:
  <input type="text" name="pass" size=40 maxlength=100 required><br><br>
  
  Bio:<br>
  <textarea name="bio" cols="100" rows="10"></textarea><br><br>

  Stad:
  <input type="text" name="city" size=40 maxlength=100 required><br><br>

  Intresse:
  <input type="text" name="interest" size=40 maxlength=100 required><br><br>

  <input type="file" name="image" value="Välj bild"><br><br>

  <button type="submit">Skapa konto</button><br><br>

  <a href="quiz_login.php">Till inloggningssida</a>
</form>
</body>
</html>