Avatar billede katja_kh Nybegynder
20. juni 2008 - 12:11 Der er 8 kommentarer og
1 løsning

hjælp til unlink

Er der nogen der kan hjælpe mig med at lave en unlink() på denne kode.. den sletter billederne i databasen men jeg vil også havde dem slettet på serveren. Mappen billederne ligger i hedder "billeder".

min kode ser sådan ud:
<?
include('../../Backup2/includes/db_con.php');
$id = $_GET['id'];
mysql_query("DELETE FROM cms_galleri WHERE id = $id");


$result = mysql_query("SELECT id, stor, lille FROM cms_galleri ORDER BY id DESC");

echo "<table border='1' bordercolor='white' cellspacing='0' cellpadding='10' align='center'>";
while ($data= mysql_fetch_array($result)) {
echo "<tr><td >";
echo "<img src="."'../billeder/$data[lille]' width='50px'" ."<td><a href = 'galleri_slet.php?id=$data[id]' ><img src='../foto/delete_icon.png' border='0' width='25px' ></a><br></td></tr></table>";

}
?>
Avatar billede majbom Novice
20. juni 2008 - 13:10 #1
efter:

$id = $_GET['id'];
mysql_query("DELETE FROM cms_galleri WHERE id = $id");

skriv:

$result = mysql_query("SELECT stor, lille FROM cms_galleri WHERE id='$_GET[id]'");
$pic = mysql_fetch_array($result);
unlink("../billeder/$pic[lille]");
unlink("../billeder/$pic[stor]");

jeg har selv sat

unlink("../billeder/$pic[stor]");

ind, da jeg går ud fra at du har en stor og lille version af billederne at dømme ud fra din eksisterende sql-query
Avatar billede majbom Novice
20. juni 2008 - 13:15 #2
og så kan du jo lige rette:

echo "<img src="."'../billeder/$data[lille]' width='50px'" ."<td><a href = 'galleri_slet.php?id=$data[id]' ><img src='../foto/delete_icon.png' border='0' width='25px' ></a><br></td></tr></table>";

til:

echo "<img src='../billeder/$data[lille]' width='50px'></td><td><a href='galleri_slet.php?id=$data[id]'><img src='../foto/delete_icon.png' border='0' width='25px'></a><br></td></tr></table>";

:)
Avatar billede katja_kh Nybegynder
21. juni 2008 - 16:05 #3
hej splazz jeg har lige prøvet din kode.. Men nu kommer den med disse fejl
Warning: unlink(../billeder/) [function.unlink]: Is a directory in /home/katja.wi13.ots.dk/public_html/cms/admin/galleri_slet.php on line 14

Warning: unlink(../billeder/) [function.unlink]: Is a directory in /home/katja.wi13.ots.dk/public_html/cms/admin/galleri_slet.php on line 15

min kode ser sådan ud nu:

<?
include('../../Backup2/includes/db_con.php');
$id = $_GET['id'];
mysql_query("DELETE FROM cms_galleri WHERE id = $id");


$result = mysql_query("SELECT stor, lille FROM cms_galleri WHERE id='$_GET[id]'");
$pic = mysql_fetch_array($result);
unlink("../billeder/$pic[lille]");
unlink("../billeder/$pic[stor]");
echo "<table border='1' bordercolor='white' cellspacing='0' cellpadding='10' align='center'>";
while ($data= mysql_fetch_array($result)) {
    echo "<tr><td >";
    echo "<img src='../billeder/$data[lille]' width='50px'></td><td><a href='galleri_slet.php?id=$data[id]'><img src='../foto/delete_icon.png' border='0' width='25px'></a><br></td></tr></table>";


}
?>
Avatar billede jakobdo Ekspert
21. juni 2008 - 17:03 #4
Fejlen tyder på at sql'en ikke går godt.
Var det ikke også fejlen sidst vi forsøgte, at $_GET['id'] ikke kom med ?

Prøv følgende kode:

<?
require_once('../../Backup2/includes/db_con.php');
if(isset($_GET['id']) && is_numeric($_GET['id'])){
    $id = intval($_GET['id']);
    $result = mysql_query('SELECT stor, lille FROM cms_galleri WHERE id='.$id].' LIMIT 1') or die(mysql_error());
    if(mysql_num_rows($result) == 1){
        $pic = mysql_fetch_array($result);
        if(unlink('../billeder/'.$pic['lille'])){
            echo 'Lille bilede blev slettet<br />';
        }else{
            echo 'Lille billede blev ikke slettet<br />';
        }
       
        if(unlink('../billeder/'.$pic['stor'])){
            echo 'Stort billede blev slettet<br />';
        }else{
            echo 'Stort billede blev ikke slettet<br />';
        }
   
        mysql_query('DELETE FROM cms_galleri WHERE id = '.$id.' LIMIT 1');
    }else{
        echo 'ID ikke fundet i Databasen<br />';
    }
}
?>

Jeg forstår dog ikke din sidste del med table osv., så den har jeg fjernet.
Avatar billede katja_kh Nybegynder
21. juni 2008 - 17:27 #5
jakobdo hvis jeg skriver den kode ind.. sker der ikke rigtig noget der er ingen billeder eller mit slet ikon. -Det er jo det som den sidste del med tabellen skriver ud.
Avatar billede jakobdo Ekspert
21. juni 2008 - 17:43 #6
Test lige denne kode:

<?
require_once('../../Backup2/includes/db_con.php');
if(isset($_GET['id']) && is_numeric($_GET['id'])){
    $id = intval($_GET['id']);
    $result = mysql_query('SELECT stor, lille FROM cms_galleri WHERE id='.$id].' LIMIT 1') or die(mysql_error());
    if(mysql_num_rows($result) == 1){
        $pic = mysql_fetch_array($result);
        if(unlink('../billeder/'.$pic['lille'])){
            echo 'Lille bilede blev slettet<br />';
        }else{
            echo 'Lille billede blev ikke slettet<br />';
        }
       
        if(unlink('../billeder/'.$pic['stor'])){
            echo 'Stort billede blev slettet<br />';
        }else{
            echo 'Stort billede blev ikke slettet<br />';
        }
   
        mysql_query('DELETE FROM cms_galleri WHERE id = '.$id.' LIMIT 1');
    }else{
        echo 'ID ikke fundet i Databasen<br />';
    }
}

$result = mysql_query('SELECT id, lille FROM cms_galleri ORDER BY id') or die(mysql_error());
if(mysql_num_rows($result)>0){
    echo "<table border='1' bordercolor='white' cellspacing='0' cellpadding='10' align='center'>";
    while ($data= mysql_fetch_array($result)) {
        echo '<tr>';
        echo '<td><img src="../billeder/'.$data['lille'].'" width="50px"></td>';
        echo '<td><a href="galleri_slet.php?id='.$data['id'].'"><img src="../foto/delete_icon.png" border="0" width="25px"></a></td>';
        echo '</tr>';
    }
    echo '</table>';
}else{
    echo 'Ingen billeder i cms galleriet<br />';
}
?>
Avatar billede katja_kh Nybegynder
21. juni 2008 - 21:22 #7
hehe jubii.. super duper det virker!! vupti væk fra server var billedet. Takker..
vil du smide et svar så skal du få point.. Nu skal jeg så bare studerer koden så jeg ved hvad der helt sker. hihi
Avatar billede jakobdo Ekspert
21. juni 2008 - 22:04 #8
Svar!
Avatar billede jakobdo Ekspert
22. juni 2008 - 14:02 #9
Takker for point.
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