file verwijderen
Ik wilde graag een delete page maken, waar men foto's kan verwijderen. Ik krijg alleen telkens de volgende error terug.
Warning: unlink() [function.unlink]: Permission denied in C:\wamp\www\applicaties\H7\yapa_delete.php on line 18
Warning: unlink() [function.unlink]: Permission denied in C:\wamp\www\applicaties\H7\yapa_delete.php on line 19
ik heb de map waarnaar hij verwijst ook gechmod naar 666, of 777. Maar als ik naar de eigenschappen kijk staat ie op read only, zet ik dat uit, en kijk ik vervolgens nog een keer staat ie er weer :/. Of ligt het niet aan dat.
Is het een beetje te begrijpen?
Plz help, tnx :)
Gewijzigd op 01/01/1970 01:00:00 door Something Else
inheritage zeg maar dus :) ?
Gewijzigd op 01/01/1970 01:00:00 door Wout van der Burg
Of bedoel je wat anders? en hoe zou ik dat dan kunnen oplossen?
tnx :)
windows is daar best vervelend in, je moet even de optie Allow inheritable permissions from parent to propagate to this object uitzetten en dan zou het moeten werken
vervolgens klik je op 'COpy' en dan kan je de rechten aanpassem
Gewijzigd op 01/01/1970 01:00:00 door Wout van der Burg
Ik werk gewoon op m'n thuis computer, weet niet als dat uit maakt. :x
met winxp pro
edit--
al gedaan, maar resultaat blijft het zelfde :s ;)
Gewijzigd op 01/01/1970 01:00:00 door Something Else
anders is het behoorlijke vaagheid :)
p.s. je bent niet vervelend we zijn er om te helpen :)
als alle bovenstaande niet helpt, post dan ff je script wellicht dat het dan daaraan ligt
Code (php)
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
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
<?php
session_start();
//bestanden includen
include_once('yapa_config.php');
include_once('yapa_functions.php');
include_once('is_logged_in.php');
//Als de pagina zichzelf heeft aangeroepen(=de administrator heeft het verwijderen bevestigd),
//is de flag 'bevestiging' gezet.
//In dat geval kan de DELETE-query woren uitgeveord.
if(isset($_POST['bevestiging'])){
//$id casten naar (int) om sql-injection te voorkomen
$id = (int) $_POST['id'];
$query = "DELETE FROM yapa_photos WHERE id='" . $_POST['id'] . "'";
$result = safe_query($db, $query);
if($result){
unlink($_POST['$thumb']);
unlink($_POST['$thumb1']);
echo "Het bestand <b>".$_POST['$thumb']."</b> is succesvol verwijderd.<br />\n";
echo "Terug naar de <a href=\"yapa_eigen_photo.php?memberid=$_SESSION[uploader_id]\">homepage</a>";
}else{
echo "Het bestand <b>".$_POST['$thumb']."</b> bestaat niet.<br />\n";
echo "Terug naar de <a href=\"yapa_eigen_photo.php?memberid=$_SESSION[uploader_id]\">homepage</a>";
}
}
else{
//de pagina heeft zichzelf nog niet aangeroepen,
//eerst om een bevestiging vragen.
//lezen welke record opgehaald moet worden.
if(isset($_GET['id'])){
$id = (int) $_GET['id'];
}
else{
//geen id meegeven, terugsturen naar de admin-pagina
header("location: yapa_eigen_photo.php");
}
//De te verwijderen record inlezen en op het scherm tonen
//ter bevestiging van verwijdering
$query = "SELECT * FROM yapa_photos WHERE id='$id'";
$result = safe_query($db, $query);
?>
session_start();
//bestanden includen
include_once('yapa_config.php');
include_once('yapa_functions.php');
include_once('is_logged_in.php');
//Als de pagina zichzelf heeft aangeroepen(=de administrator heeft het verwijderen bevestigd),
//is de flag 'bevestiging' gezet.
//In dat geval kan de DELETE-query woren uitgeveord.
if(isset($_POST['bevestiging'])){
//$id casten naar (int) om sql-injection te voorkomen
$id = (int) $_POST['id'];
$query = "DELETE FROM yapa_photos WHERE id='" . $_POST['id'] . "'";
$result = safe_query($db, $query);
if($result){
unlink($_POST['$thumb']);
unlink($_POST['$thumb1']);
echo "Het bestand <b>".$_POST['$thumb']."</b> is succesvol verwijderd.<br />\n";
echo "Terug naar de <a href=\"yapa_eigen_photo.php?memberid=$_SESSION[uploader_id]\">homepage</a>";
}else{
echo "Het bestand <b>".$_POST['$thumb']."</b> bestaat niet.<br />\n";
echo "Terug naar de <a href=\"yapa_eigen_photo.php?memberid=$_SESSION[uploader_id]\">homepage</a>";
}
}
else{
//de pagina heeft zichzelf nog niet aangeroepen,
//eerst om een bevestiging vragen.
//lezen welke record opgehaald moet worden.
if(isset($_GET['id'])){
$id = (int) $_GET['id'];
}
else{
//geen id meegeven, terugsturen naar de admin-pagina
header("location: yapa_eigen_photo.php");
}
//De te verwijderen record inlezen en op het scherm tonen
//ter bevestiging van verwijdering
$query = "SELECT * FROM yapa_photos WHERE id='$id'";
$result = safe_query($db, $query);
?>
<html>
<head>
<title> YAPA: Foto verwijderen</title>
</head>
<body>
<h2>YAPA -Een foto verwijderen</h2>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
//eerst array resetten, omdat hiervoor al informatie is gebruikt om de naam van de
//fotograaf naar het scherm te schrijven
mysqli_data_seek($result, 0);
//te verwijderen record op het scherm zetten
while($record = mysqli_fetch_array($result)){
//bestandsnaam van de foto samenstellen
$thumb = "uploads/thumbnails/tn_" . $record['photo_filename'];
$thumb1 = "uploads/" . $record['photo_filename'];
echo "<img src=\"$thumb\" border=\"0\" />";
?>
//eerst array resetten, omdat hiervoor al informatie is gebruikt om de naam van de
//fotograaf naar het scherm te schrijven
mysqli_data_seek($result, 0);
//te verwijderen record op het scherm zetten
while($record = mysqli_fetch_array($result)){
//bestandsnaam van de foto samenstellen
$thumb = "uploads/thumbnails/tn_" . $record['photo_filename'];
$thumb1 = "uploads/" . $record['photo_filename'];
echo "<img src=\"$thumb\" border=\"0\" />";
?>
<!-- HTML-Formulier met knoppen voor Verwijderen of Terug en verborgen velden om $id en $bevestiging door te geven-->
<form action="" method="POST">
<input type="hidden" name="bevestiging" value="1" />
<input type="hidden" name="id" value="" />
<input type="hidden" name="thumb" value="" />
<input type="hidden" name="thumb1" value="" />
<input type="submit" value="Ja, verwijderen" />
<input type="reset" value="Nee, terug" onclick="javascript:history.go(-1);" />
</form>
<a href="yapa_index.php">Terug naar de homepage</a>
</body>
</html>
Misschien heeft het script niet de rechten om het te verwijderen? Als je een bestand aanmaakt met PHP en hem dan met hetzelfde PHP script probeert te verwijderen, lukt dat dan wel!?
unlink($_POST['$thumb1']);
Je bedoelt zeker $_POST['thumb'] en $_POST['thumb1']? :)
$query = "SELECT * FROM yapa_photos WHERE id='$id'";
$result = mysql_query($query);
en moet SELECT geen DELETE zijn?
Gewijzigd op 01/01/1970 01:00:00 door Wout van der Burg
$_POST[''] geeft alleen een ingevuld veld van een formulier door
Maar kijk nou eens hoe zijn velden heten en dan vooral naar de keys van het POST-array...die $ horen daar niet.
zeg dan ff;
unlink($_POST['$thumb']);
unlink($_POST['$thumb1']);
is
unlink($_POST['thumb']);
unlink($_POST['thumb1']);
Jij nare westlander, moet je nog geen tomaten plukken?? ;)
keihard beune in je pad
bedankt voor de hulp :)
doh... :) lol
Ja echt, zulke fouten heb ik altijd -_- \o/