]> git.somenet.org - fsinf/pub/w2c.git/blob - intern/index.php
fixed html stuff for file uploads
[fsinf/pub/w2c.git] / intern / index.php
1 <?php
2
3 require_once('../funcs.php');
4 echo html_top("Anmeldesystem");
5 echo html_linkbox("intern/index");
6
7 set_time_limit(900);
8 $max_byte_size = 335544320;
9 $dirname = './upload/';
10 $allowed_types = Array('.jpg', '.jpeg', '.gif', '.bmp', '.png', '.mp3', '.svg', '.ods', '.txt', '.odt', '.zip', '.java', '.pdf', '.doc','.docx');
11 asort($allowed_types);
12 ?>
13 <h2>Datei hochladen (intern)</h2>
14
15 <?php
16 if(isset($_POST['s'])) {
17   echo '<p><a href="'.$dirname.'">Zu den hochgeladenen Dateien</a></p><h2>Ergebnis</h2>';
18
19   for($i = 0; $i <= 4; $i++){
20         if($_FILES['file'.$i]['error'] === 0 && is_uploaded_file($_FILES['file'.$i]['tmp_name'])) {
21         $_FILES['file'.$i]['name'] = str_replace('/','',$_FILES['file'.$i]['name']); 
22             echo '<h3>Datei'.($i+1).': '.$_FILES['file'.$i]['name'].'</h3>';
23
24                 if($_FILES['file'.$i]['name'][0] == '.'){
25                         echo '<span class="statusERR">Keine unix-hidden files ;)</span>';
26
27                 }elseif($_FILES['file'.$i]['size'] > $max_byte_size) {
28                         echo '<spa class="statusERR"n>Datei ist zu groß.</span>';
29
30                 }elseif(!in_array('.'.pathinfo($_FILES['file'.$i]['name'],PATHINFO_EXTENSION), $allowed_types)){
31                         echo '<span class="statusERR">Dateityp ist nicht erlaubt.</span>';
32
33                 }elseif(file_exists($dirname.$_FILES['file'.$i]['name'])) {
34                         echo '<span class="statusERR">Datei mit dem namen existiert bereits.</span>';
35
36                 }elseif(move_uploaded_file($_FILES['file'.$i]['tmp_name'], $dirname.$_FILES['file'.$i]['name'])) {
37                         echo '<span class="statusOK">Datei erfolgreich hochgeladen!</span>';
38                         echo '<p>Name: '.$_FILES['file'.$i]['name'].'<br>';
39                         echo 'Link: <a href="'.$dirname.$_FILES['file'.$i]['name'].'">'.$_FILES['file'.$i]['name'].'</a></p>';
40                 }else{
41                         echo '<spani class="statusERR">Irgendein anderer Fehler (sollte nicht auftreten)</span>';
42       }
43         }
44   }
45   echo '<hr>';
46 }
47 ?>
48
49 <p><a href="<?php echo $dirname; ?>">Zu den hochgeladenen Dateien</a></p>
50 <p>Erlaubte Dateitypen: <b><?php echo  join(', ', $allowed_types);?></b><br>
51 Max Dateigröße: <b><?php echo $max_byte_size.' Byte ('.($max_byte_size/1024/1024).' MB)';?></b><br>
52 Max Uploadzeit: <b>900 sec (15 min)</b><br>
53 <form method="POST" enctype="multipart/form-data">
54 <input type="hidden" name="MAX_FILE_SIZE" value="{$max_byte_size}" />
55 Datei 1: <input type="file" name="file0" accept="<?php echo join(',', $allowed_types);?>"/><br>
56 Datei 2: <input type="file" name="file1" accept="<?php echo join(',', $allowed_types);?>"/><br>
57 Datei 3: <input type="file" name="file2" accept="<?php echo join(',', $allowed_types);?>"/><br>
58 Datei 4: <input type="file" name="file3" accept="<?php echo join(',', $allowed_types);?>"/><br>
59 Datei 5: <input type="file" name="file4" accept="<?php echo join(',', $allowed_types);?>"/><br><br>
60 <input type="submit" name="s" value="Hochladen" />
61 </form>
62 <p><a href="<?php echo $dirname; ?>">Zu den hochgeladenen Dateien</a></p>
63
64
65 <h3>Hilfe: Mein Dateityp fehlt in der Liste</h3>
66 <p>Einfach via Support-Chat oder eMail anschreiben und der Dateityp wird hinzugefügt.</p>
67
68
69 <h3>Hilfe: Alternativer Zugriff?!</h3>
70 <p>Web-Filesharing ist mühsam! Deshalb gibt es eine weitere Möglichkeit: sftp mit ssh-key Authentifizierung.<br>
71 Wenn Sie mir keinen eigenen Public-Key übermitteln wollen, können Sie sich den folgenden Private-Key herunterladen und diesen benutzen.<br>
72 Download: <a href="./id_rsa.w2c">Private-Key</a> <a href="./id_rsa.w2c.pub">Public-Key</a></p>
73
74 <h4>TODO: Linux-shell :3 (vl. auch Mac?)</h4>
75 Terminal öffnen
76 Ausführen: sftp -i ~/.ssh/id_rsa.w2c -P222 w2c@w2c.fsinf.at
77 in sftp cd upload machen.
78 spaß haben.
79
80 <h4>TODO: Windows :(</h4>
81 WinSCP sollte es können.
82 Diese Version von WinSCP ist mit dem Private-Key ausgestattet und verbindet sich automatisch beim starten.
83 Ist das erwünscht? 
84
85 <?php echo html_bottom();
86