View sourcecode

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

h_post_upload.php

112 lines UTF-8 Unix (LF)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<?php

session_start
();

require_once(
'databaseconnection.php');
include(
"f_file_upload.php");

$sql "INSERT INTO post (`headline`, `date`, `blogId`, `author`, `blogName`, `authorId`) #skapar själva post-tabellen
        VALUES (:headline, :date, :blogId, :author, :blogName, :authorId);"
;
$stm $pdo->prepare($sql);
$stm->execute([
     
':headline'   => $_POST["headline"],
     
':date' => date("Y-m-d"),
     
':blogId' => $_SESSION["selectedBlogId"], #selectedBlogId sätts när man väljer vilken blogg posten ska läggas till i.
     
':author' => $_SESSION["name"],
     
':blogName' => $_SESSION["selectedBlogName"],
     
':authorId' => $_SESSION["userId"]
]);

$postId $pdo->lastInsertId(); #sparar postens ID så att contentareas kan lägga in den.

for($i=0$i count($_SESSION["items"]); $i++){
   switch (
$_SESSION["items"][$i]){
                case 
"text":
                        break;
                case 
"header":
                        break;
                case 
"link":
                        break;
                case 
"img":
                        if(
checkFileSize("$i")){
                                break;
                        }
                        else{
                                
header("location:post_create.php?mess=FILESIZE");
                                exit;
                        }
                        break;
   }
}

$sql "INSERT INTO contentarea (`content`, `url`, `type`, `order`, `postId`) #sätter in själva headlinen som en contentarea.
        VALUES (:content, :url, :type, :order, :postId);"
;                   #Headline ligger också i post-tabellen så detta är egentligen onödigt
$stm $pdo->prepare($sql);                                                   #Men detta underlättar när själva posten skrivs ut.
$stm->execute([
        
':content'   => $_POST["headline"], 
        
':url' => NULL,
        
':type' => "header",
        
':order' => 0,
        
':postId' => $postId
]);

for(
$i=0$i count($_SESSION["items"]); $i++){
   switch (
$_SESSION["items"][$i]){
                case 
"text":
                        
$sql "INSERT INTO contentarea (`content`, `url`, `type`, `order`, `postId`)
                        VALUES (:content, :url, :type, :order, :postId);"
;
                        
$stm $pdo->prepare($sql);
                        
$stm->execute([
                        
':content'   => $_POST[$i],
                        
':url' => NULL,
                        
':type' => "text",
                        
':order' => $i+1,
                        
':postId' => $postId
                        
]);
                    break;

                case 
"img":
                        
fileUpload("$i""img_uploads/{$postId}""jpg");
                        
$sql "INSERT INTO contentarea (`content`, `url`, `type`, `order`, `postId`)
                        VALUES (:content, :url, :type, :order, :postId);"
;
                        
$stm $pdo->prepare($sql);
                        
$stm->execute([
                        
':content'   => "{$_POST["img_t$i"]}",
                        
':url' => "img_uploads/{$postId}/$i.jpg",
                        
':type' => "img",
                        
':order' => $i+1,
                        
':postId' => $postId
                        
]);
                    break;

                case 
"header":
                        
$sql "INSERT INTO contentarea (`content`, `url`, `type`, `order`, `postId`)
                        VALUES (:content, :url, :type, :order, :postId);"
;
                        
$stm $pdo->prepare($sql);
                        
$stm->execute([
                        
':content'   => $_POST[$i],
                        
':url' => NULL,
                        
':type' => "header",
                        
':order' => $i+1,
                        
':postId' => $postId
                        
]);
                    break;

                case 
"link":
                        
$sql "INSERT INTO contentarea (`content`, `url`, `type`, `order`, `postId`)
                        VALUES (:content, :url, :type, :order, :postId);"
;
                        
$stm $pdo->prepare($sql);
                        
$stm->execute([
                        
':content'   => "{$_POST["link_t$i"]}",
                        
':url' => $_POST[$i],
                        
':type' => "link",
                        
':order' => $i+1,
                        
':postId' => $postId
                        
]);
                    break;
            }
}
unset(
$_SESSION["items"]);
header("location:blogwatcher.php?mess=$postId");
exit();
?>