aboutsummaryrefslogtreecommitdiff
path: root/v_windows/v/examples/vweb/file_upload
diff options
context:
space:
mode:
authorIndrajith K L2022-12-03 17:00:20 +0530
committerIndrajith K L2022-12-03 17:00:20 +0530
commitf5c4671bfbad96bf346bd7e9a21fc4317b4959df (patch)
tree2764fc62da58f2ba8da7ed341643fc359873142f /v_windows/v/examples/vweb/file_upload
downloadcli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.tar.gz
cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.tar.bz2
cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.zip
Adds most of the toolsHEADmaster
Diffstat (limited to 'v_windows/v/examples/vweb/file_upload')
-rw-r--r--v_windows/v/examples/vweb/file_upload/index.html6
-rw-r--r--v_windows/v/examples/vweb/file_upload/upload.html14
-rw-r--r--v_windows/v/examples/vweb/file_upload/vweb_example.v32
3 files changed, 52 insertions, 0 deletions
diff --git a/v_windows/v/examples/vweb/file_upload/index.html b/v_windows/v/examples/vweb/file_upload/index.html
new file mode 100644
index 0000000..a2bffad
--- /dev/null
+++ b/v_windows/v/examples/vweb/file_upload/index.html
@@ -0,0 +1,6 @@
+<h2>File Upload</h2>
+
+<form method="POST" enctype="multipart/form-data" action="/upload">
+ <input type="file" name="upfile" multiple>
+ <input type="submit" value="Press">
+</form>
diff --git a/v_windows/v/examples/vweb/file_upload/upload.html b/v_windows/v/examples/vweb/file_upload/upload.html
new file mode 100644
index 0000000..e80359d
--- /dev/null
+++ b/v_windows/v/examples/vweb/file_upload/upload.html
@@ -0,0 +1,14 @@
+<meta charset="utf-8">
+
+File amount: @fdata.len
+
+@for i, data in fdata
+
+<h2>Filename: @data.filename</h2>
+<h2>Type: @data.content_type</h2>
+
+<p>@{files[i]}</p>
+
+@end
+
+<a href="/">Back</a>
diff --git a/v_windows/v/examples/vweb/file_upload/vweb_example.v b/v_windows/v/examples/vweb/file_upload/vweb_example.v
new file mode 100644
index 0000000..bde55c3
--- /dev/null
+++ b/v_windows/v/examples/vweb/file_upload/vweb_example.v
@@ -0,0 +1,32 @@
+module main
+
+import vweb
+
+const (
+ port = 8082
+)
+
+struct App {
+ vweb.Context
+}
+
+fn main() {
+ vweb.run(&App{}, port)
+}
+
+pub fn (mut app App) index() vweb.Result {
+ return $vweb.html()
+}
+
+['/upload'; post]
+pub fn (mut app App) upload() vweb.Result {
+ fdata := app.files['upfile']
+
+ mut files := []vweb.RawHtml{}
+
+ for d in fdata {
+ files << d.data.replace_each(['\n', '<br>', '\n\r', '<br>', '\t', ' ', ' ', '&nbsp;'])
+ }
+
+ return $vweb.html()
+}