Avatar billede supernewbie Nybegynder
03. april 2003 - 17:15 Der er 23 kommentarer og
1 løsning

Slet fil i mappe

Jeg har lavet dette (taget det fra http://www.webcafe.dk/artikler/php/upload/)
det kan ses her:

http://www.chatsniksnak.dk/upload.php

og koden kan ses her:
http://www.chatsniksnak.dk/upload.phps

Hvordan skal koden være hvis man skal kunen slette en fil derfra ?
Avatar billede sukos Juniormester
03. april 2003 - 17:23 #1
unlink()
Avatar billede sukos Juniormester
03. april 2003 - 17:24 #2
Avatar billede supernewbie Nybegynder
03. april 2003 - 17:24 #3
lidt nærmere tak :D
Kan du ikke lave lidt kode der bare skal smides på så jeg kan klikke på et link ude for filnavnet så sletter den filen ?
Avatar billede sukos Juniormester
03. april 2003 - 17:35 #4
hmm, nej, kan sgutte li' upload-koden du!

Men hvis du putter en get-var på visning af filen:

<a href=\"$_SERVER[PHP_SELF]?slet=$bibliotek/$fil\">slet</a>

så kan du i samme fil bruge noget a'la'

if(isset($_GET["slet"])) {
unlink($_SERVER["DOCUMENT_ROOT"] . $_GET["slet"]);
}
Avatar billede supernewbie Nybegynder
03. april 2003 - 17:37 #5
Har jeg forståer ret?

Jeg laver en funk der hedder:

unlink(upload/prøve.txt);

så sletter den filen Prøve.txt i den mappe?
Intet med fopen eller noget ?
Avatar billede sukos Juniormester
03. april 2003 - 17:40 #6
Prøv! :O)

Men en GOD ting ALTID at bruge når du har med filer og PHP at gøre, er at bruge $_SERVER["DOCUMENT_ROOT"] ($HTTP_SERVER_VARS["DOCUMENT_ROOT"] for versioner mindre end 4.1.0)

Og unlink() kan jo bruges til både filer og dirs, så et tjek på om det er den ene eller anden er måske osse på sin plads? :O)
Avatar billede supernewbie Nybegynder
03. april 2003 - 17:41 #7
Warning: Division by zero in D:\web\chatsniksnak.dk_q4m1xm\wwwroot\slet.php on line 2

Warning: unlink() failed (No such file or directory) in D:\web\chatsniksnak.dk_q4m1xm\wwwroot\slet.php on line 2
Done

den fejl får jeg
Avatar billede supernewbie Nybegynder
03. april 2003 - 17:42 #8
nååå der ligge ingen fil der skal jeg så bruge
$_SERVER["DOCUMENT_ROOT"]
inden mappen ?
Avatar billede supernewbie Nybegynder
03. april 2003 - 17:45 #9
<?
unlink($_SERVER["DOCUMENT_ROOT"]/upload/prøve.txt);
?>
Done


gir denne fejl :
www.chatsniksnak.dk/slet.php
Avatar billede sukos Juniormester
03. april 2003 - 17:57 #10
<?php
unlink($_SERVER["DOCUMENT_ROOT"] ."/upload/prøve.txt");
?>
Avatar billede sukos Juniormester
03. april 2003 - 17:59 #11
1. LAD være med at bruge æ,ø og å!!!!
2. Hvis du laver echo af phpkode blandet med output, så læg koden i ". kode ."
Avatar billede sukos Juniormester
03. april 2003 - 18:00 #12
F.eks. (2'eren)

<?php
unlink("d:/sti/dir/". $phpkode ."/upload/prøve.txt");
?>
Avatar billede sukos Juniormester
03. april 2003 - 18:03 #13
hehe, "output" == IKKE phpkode
Avatar billede supernewbie Nybegynder
03. april 2003 - 18:12 #14
JAMEN  hvis man har uploadet en fil der er ÆØÅ i så bliver man nød til at bruge det jo...
Avatar billede supernewbie Nybegynder
03. april 2003 - 18:14 #15
<?
unlink(".$_SERVER["DOCUMENT_ROOT"]."/upload/prøve.txt);
?>

det er koden nu.. Nu er der en ny fejl :
www.chatsniksnak.dk/slet.php
Avatar billede sukos Juniormester
03. april 2003 - 18:15 #16
Hva' mæ og prøv' "copy&paste" ? :O)

<?php
unlink($_SERVER["DOCUMENT_ROOT"] ."/upload/prøve.txt");
?>
Avatar billede supernewbie Nybegynder
03. april 2003 - 18:16 #17
<?php
unlink(D:\web\chatsniksnak.dk_q4m1xm\wwwroot\upload/prøve.txt");
?>

koden nu ... men se fejlen nu...
Avatar billede supernewbie Nybegynder
03. april 2003 - 18:17 #18
det prøvede jeg også men virkede ikke
Avatar billede sukos Juniormester
03. april 2003 - 18:18 #19
<?php
unlink("D:/web/chatsniksnak.dk_q4m1xm/wwwroot/upload/prøve.txt");
?>
Avatar billede sukos Juniormester
03. april 2003 - 18:19 #20
Måske du ligger på en server med en ældre version af PHP?

<?php
unlink($HTTP_SERVER_VARS["DOCUMENT_ROOT"] ."/upload/prøve.txt");
?>

Og drop nu de æ,ø og å'er!!!!!!!!!!!!!!!!!!!
Avatar billede supernewbie Nybegynder
03. april 2003 - 18:25 #21
Weee det virker tak.. Men for nu at være rigtig besværlig.. Mappen den skal gemme i er $brugernavn
Hvordan bliver det skrevet ind i den der linie ? altså istedet for upload
Avatar billede sukos Juniormester
03. april 2003 - 18:29 #22
? Måske:
<?php
unlink($HTTP_SERVER_VARS["DOCUMENT_ROOT"] . $brugernavn ."/prøve.txt");
?>
Avatar billede supernewbie Nybegynder
03. april 2003 - 19:00 #23
Ok lige en sidste kommentar:
Og drop nu de æ,ø og å'er!!!!!!!!!!!!!!!!!!! skrev du..
Så havde du vidst ikke læst mit andet svar:
JAMEN  hvis man har uploadet en fil der er ÆØÅ i så bliver man nød til at bruge det jo...

Men du får points
Avatar billede avminarm Juniormester
04. april 2003 - 09:24 #24
supernewbie>> lav æøå om med ereg_replace eller lignende inden du danner filnavnet:

$text = ereg_replace("Å", "AA", $text);
$text = ereg_replace("å", "aa", $text);

osv
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester