05. december 2003 - 11:09
Der er
15 kommentarer og 3 løsninger
Registrere filtype
Jeg har nedenstående script, hvordan registrerer jeg $type på fil? Jeg har prøvet under $type = ... <?php if ($registrer) { $dato = time(); $point = "30"; $godkendt = "0"; open(); if ($handle = opendir("../xxx/$mappe")) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { $reg[$file]++; } } closedir($handle); } $foresp = mysql_query("SELECT fil_navn FROM xxx"); while($data = mysql_fetch_array($foresp)) { $reg[$data['fil_navn']]--; } mysql_free_result($foresp); foreach ($reg as $key=>$value) { if ($value==1) { $type = $_FILES['../xxx/$mappe/$key']['type']; $size = filesize("../xxx/$mappe/$key"); $insertSQL = "INSERT INTO xxx (fil_navn, navn, mappe, karakter, dato, type, size, godkendt, point) values ('$key', '$_POST[brugernavn]', '$_POST[mappe]', 'nej', '$dato', '$type', '$size', '$godkendt', '$point')"; mysql_query($insertSQL) or die(mysql_error()); echo $key ." er blevet tilføjet i databasen!<BR>"; } elseif ($value==-1) { echo $key ." skal fjernes fra databasen<br>"; } } close(); } ?>
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
05. december 2003 - 11:53
#1
Hepp Du kan (hvis filerne kun har 3 symboler i endelsen) benytte: $type = substr("filer.png", -3); // returnere "png" Hep Hepp
05. december 2003 - 11:55
#2
Jeg vil gerne have sådan noget lignende dette her: application/msword (Dette er en word-fil)
Slettet bruger
05. december 2003 - 13:07
#3
$type=mime_content_type($_FILES['../xxx/$mappe/$key']); burde virke
Slettet bruger
05. december 2003 - 13:08
#4
Og jeg mener endda, at den ikke lader sig snyde af, at en bruger omdøber en fil til at have et andet efternavn.
05. december 2003 - 13:47
#5
sandbox --> Fatal error: Call to undefined function: mime_content_type() in /var/www/html/lektiecafe/admin/undersider/reg_opg.php on line 24
Slettet bruger
05. december 2003 - 14:31
#6
Så er mime ikke slået til i din PHP. Eller din PHP er for gammel. mime_content_type kom med i PHP 4.3.0
05. december 2003 - 14:32
#7
jeg prøver lige at uploade til min webserver og ser og det duer...
05. december 2003 - 14:34
#8
Hmm, virker heller ikke der.. kan det ikke lade sig gøre på andre måder?
Slettet bruger
05. december 2003 - 14:54
#9
på
http://dk.php.net/manual/en/function.mime-content-type.php er der en bruger (den øverste kommentar), der har lavet et alternativ. Det kræver desværre en endnu nyere PHP.
Derudover kan du måske bruge
system("file -i {$_FILES['../xxx/$mappe/$key']");
Den giver en linie i stil med:
perlotine.html: text/plain; charset=us-ascii
Slettet bruger
05. december 2003 - 14:55
#10
UPS. Der manglede et tegn system("file -i {$_FILES['../xxx/$mappe/$key']}");
05. december 2003 - 15:17
#11
Virker heller ikke... $type = system("file -i {$_FILES['../xxx/$mappe/$key']}");
Slettet bruger
05. december 2003 - 15:23
#12
Får du nogen fejl?
05. december 2003 - 15:45
#13
Nej, den går bare ikke igennem...
05. december 2003 - 15:45
#14
(bliver ikke gemt)
Slettet bruger
05. december 2003 - 15:49
#15
Og $type indeholder ikke noget? Måske hvis du bruger exec() i stedet for system()
05. december 2003 - 17:49
#16
okay... tester jeg lige senere...
25. december 2003 - 16:52
#17
Hmm.. jeg bruger bare unlike's metode!
25. december 2003 - 16:52
#18
Virker ikke optimalt, men tak for hjælpen!
Vi tilbyder markedets bedste kurser inden for webudvikling