ugrás a tartalomhoz

PHP Form fájltörlés probléma

cszlak · 2011. Jún. 15. (Sze), 19.37
<?php
			     
		$result = mysql_query("SELECT * FROM kep");
		
		while($row = mysql_fetch_array( $result )) {
		 $kep= $row['kepurl'];
		$kepnev= $row['kepnev'];
		$id = $row['ID'];
		if($id%2==0){
		?>
		
		<table border="1" style="margin-left:20px;width:400px;float:left;">
		<tr> <th>Név</th> <th>Kép</th>  </tr>
		<form action="konyhabutor_admin.php"  method="POST" style="float:left;">
		<tr><td style="width:300px;">
		<input type="checkbox" name="torles" value=" <?php echo $kepnev; ?> " style="float:left;width:20px;">  <?php echo $kepnev; ?>
		</td><td>
		<img src=" <?php echo $kep ?> " height="100px" width="100px" align="texttop">
		</td></tr>
		</table>
		<?php
		}
		else{
		?>
		<table border="1" style="margin-right:30px;width:400px;float:right;">
		<tr> <th>Név</th> <th>Kép</th>  </tr>
		<tr><td style="width:300px;">
		<input type="checkbox" name="torles" value=" <?php echo $kepnev ?> " style="float:left;width:20px;"> <?php echo $kepnev ?>
		</td><td>
		<img src=" <?php echo $kep ?> " height="100px" width="100px" align="texttop">
		</td></tr>
		</table>
			<?php
		}//if end
		}//while end
		?>
		<br />
		
		<input type="submit" value="Kiválasztott törlése!!!" style="height:25px;float:left;">
	    </form>
			 
			  <?php 
			if (!empty($_POST['torles'])) { //ha kiválasztotta
			 
			 $kepnev_torles = $_POST['torles'];
			 
			$nevtorles = $filedir . "/" . $kepnev_torles;
			print ($nevtorles);
			 chmod($filedir, 0666);
			 if(unlink($nevtorles))	 {
			  $uzenet="Törlés sikerült.";
			 }
			 else{ $uzenet="Törlés sikertelen.";}
			  }
			  else {
			  $uzenet="Nincs kiválasztva egy sem.";
			  }
			  
			  print ($uzenet);
				  ?>	
Problémám, hogy nem törli a fájlt a következő hibaüzenetett adja ki:

Warning: unlink(kep/Konyhabutor/ 1990_224x400_Antik_eger.jpg ) [function.unlink]: Permission denied in /home/zsokakon/public_html/Admin/konyhabutor_admin.php on line 237

237 sor : if(unlink($nevtorles)){

$filedir = 'kep/Konyhabutor'; //ez így van beállítva a feltöltésnél remekül működik

több féleképp is próbálkotam már de nem sikerült.
 
1

Elérési útvonal?

cszlak · 2011. Jún. 15. (Sze), 19.56
Warning: unlink(kep/Konyhabutor/ 1990_224x400_Antik_eger.jpg )

A linkben bele írt egy szünetett, amit nem találok seholsem, hogy mi okozza, és feltételezem ez lehet a hiba tárgya.

$filedir = 'kep/Konyhabutor';
$kepnev= $row['kepnev'];

az adatbázisban nincs előtte szünet azt megnéztem.
2

value=" <?php echo $kepnev ?>

Poetro · 2011. Jún. 15. (Sze), 20.09
value=" <?php echo $kepnev ?> "
Látod itt a szóközöket?
3

látom

cszlak · 2011. Jún. 15. (Sze), 20.14
látom és levettem és akkor is ugyanaz

value="<?php print("$kepnev");?>"

most már nem írja a szünetett de még mindig hiba:
Warning: unlink(kep/Konyhabutor/1140_427x400_Cseresznye.jpg) [function.unlink]: Permission denied in /home/zsokakon/public_html/Admin/konyhabutor_admin.php on line 238
Törlés sikertelen.
5

Nincs jogod

Poetro · 2011. Jún. 15. (Sze), 20.44
Nincsen jogod letörölni az adott fájlt. Annak a felhasználónak, akinek a nevében a PHP fut, nincsen jogosultsága a fájl törléséhez.
4

Legközelebb használj

rrd · 2011. Jún. 15. (Sze), 20.43
Legközelebb használj kódszinezőt, mert így max csak tippelgetni fogunk.

A hibaüzenet azt mondja, hogy a php user (ami többnyire a nobody) nem tud törölni a kep/Konyhabutor könyvtátból. Meg kéne nézni, hogy milyen jogosultságok kapcsolódnak magához a könyvtárhoz és a benne ülő fileokhoz.
6

[colorer=chmod($filedir,

cszlak · 2011. Jún. 15. (Sze), 22.34
chmod($filedir, 0666); 
direkt bele raktam, hogy ez ne legyen probléma

kiszineztem
7

Szerintem ehhez sincs joga a

H.Z. v2 · 2011. Jún. 15. (Sze), 22.35
Szerintem ehhez sincs joga a web szervernek, de nem ellenőrzöd, hogy ez sikeres volt-e.
8

A mappa át ált 0666 ra

cszlak · 2011. Jún. 15. (Sze), 22.40
A mappa át ált 0666 ra megnéztem.
9

mappa?

Poetro · 2011. Jún. 15. (Sze), 22.50
A mappák esetén inkább 0777 kellene, ugyanis, ha nincs rá execute jog, akkor nem tudsz belemenni.
10

Ott a pont!

H.Z. v2 · 2011. Jún. 15. (Sze), 23.13
Najó, nekem ehhez már késő van... :)
(bár meg kell mondjam, az ilyentől mindig égnek áll a hajam, de tudom, sok helyen nincs más lehetőség :( )
11

Köszönöm működik

cszlak · 2011. Jún. 16. (Cs), 11.04
Köszönöm működik!!

Egy kis oktatástkérhetnék erről a kódokról, hogy melyik micsoda?
Link is jó.

Még egyszer köszönöm.
12

0777

solkprog · 2011. Jún. 16. (Cs), 11.54
Jogosultságok Linux rendszerek alatt
a 0777ből a 0-át vedd figyelmen kívül az olvasás során. (a nulla a PHP miatt kell)
13

Nem!

H.Z. v2 · 2011. Jún. 16. (Cs), 13.39
A 0 azért kell, mert oktális (8-as számrendszer a gyk) értékről van szó!