Gå til innhold

[Løst]Ting og tang.. $row (assoc, array)


Anbefalte innlegg

Nå kommer en del spørsmål, dette hører litt til et tidligere innlegg jeg har lagt inn, uten svar. Prøvde litt selv å sitter nå på noe nesten som det jeg ønsket, men har litt mangel på informasjon av hvordan alt fungerer her =P

 

Har en webside hvor jeg kan laste opp en fil etter jeg har logget meg inn, når jeg laster opp en fil, blir filen lagret og fil navnet skrives til en database.

 

$user = $_SESSION['username'];

$queryreg = mysql_query("
INSERT INTO soundbase VALUES ('$user','$basename','')
");

For å hente ut en liste på filene jeg har har jeg brukt dette lengre ned.

$queryget = mysql_query("SELECT * FROM soundbase WHERE username='$user'" ) or die("Query didn't work");

echo "<table border='1'>";  
while($row = mysql_fetch_array($queryget, MYSQL_ASSOC)) 
{
echo "<tr><td>";
echo $row['sound'];
echo "</td><td>";
echo "<a href=''>Slett</a>";
echo "</td></tr>";

}
echo "</table>";

 

Det som nå er greia er at jeg skulle gjerne da hatt Slett til å kunne slette filen som står i $row forran. Dette ved bruk av unlink(???); men hvordan kan jeg få unlink til å slette filen som blir oppgitt foran? :(

Lenke til kommentar
Videoannonse
Annonse

Om det er ei fysisk fil så må du som du sier bruke unlink. Dette gjøres enklest ved at du lager ei ny PHP-side som du linker til og samtidig forteller PHP-siden om hvilken fil du vil slette, og så kjører du unlink på denne.

 

For eks:

define("FilKatalog", "/sti/til/katalog/");
if (isset($_GET['slettfil')) {
 unlink($FilKatalog.basename($_GET['slettfil']));
}

 

Og linken kan da se slik ut: http://adresse/filnavn.php?slett=test.jpg

Som da sletter filen test.jpg i mappen /sti/til/katalog/

Lenke til kommentar
Om det er ei fysisk fil så må du som du sier bruke unlink. Dette gjøres enklest ved at du lager ei ny PHP-side som du linker til og samtidig forteller PHP-siden om hvilken fil du vil slette, og så kjører du unlink på denne.

 

For eks:

define("FilKatalog", "/sti/til/katalog/");
if (isset($_GET['slettfil')) {
 unlink($FilKatalog.basename($_GET['slettfil']));
}

 

Og linken kan da se slik ut: http://adresse/filnavn.php?slett=test.jpg

Som da sletter filen test.jpg i mappen /sti/til/katalog/

 

 

Ikke dum idé, eneste er at hvordan kan jeg få Get til å finne ut navnet på filen foran Slett. Altså si den første filen i DB heter foerstefil.jpg, den andre heter jegerfilnr2.bmp

 

hvordan kan jeg få Slett filen som er flettet i array til å vite hvilken fil som er oppgitt foran, må vite dette i a href? Siden a href for å slette den første filen vil jo da være <a href='deletefile.php?del=foerstefil.jpg'> eller si <a href='deltefile.php?del=$id'> og $id=array ja du forstår? :)

Lenke til kommentar
Om filnavnet er lagret i databasetabellen så er det vel bare å bruke denne?

 

om jeg bruker en statisk verdi i fetch vil jo den være den samme på alle, om jeg har to forskjellige filer i db, vil jo begge bli listet opp og slett linken til begge vil da være linket til den første filen :) så tenkte evt noe slikt som..

 

$id = 0;

 

og i fetch, $id = $id+1; slik at jeg for talt hvor mange rader som blir gitt i fetch, da kan jeg sikkert funnet på noe videre :p?

Lenke til kommentar

tror jeg har tenkt litt for komplisert her, men du hjalp meg GODT på vei!!!

 

først prøvde jeg med min lille ID ting, fungerte SUPERT! bare at ja, fortalte fortsatt

ikke heelt hvilken fil det gjaldt :p, men så gjorde jeg det du egentlig sa bare på en

litt annen måte..

 

$file = $row['sound'];
echo "<tr><td>";
echo $file;
echo "</td><td>";
echo "<a href='delete.php?id=$file'>Slett</a>";
echo "</td></tr>";

 

=)

Endret av TobiasG
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...