Konsten att spara mål som.

Avdelningen för webbrelaterad programmering och grafisk design.
Locked
User avatar
Hans-Eddy
Posts: 749
Joined: 2002-03-10 10:38:48
Location: Göteborg
Contact:

Konsten att spara mål som.

Post by Hans-Eddy »

Hej.

Kan man genom något javascript eller liknande per automatik göra det som i webläsaren heter spara mål som/save target as.

Lite bakgrundsinformation.

Jag har ett länkarkiv där användare när han klickar på en länk skickas till en sida som sedan med hjälp av meta taggen refresh skickas vidare till sidan som efterfrågats. Vi vet ju alla hur jobbigt det är med direktlänkar till mediafiler eftersom det speciellt i windows finns en uppsjö av i läsaren iyggade mediaspelare och annat bös som hindrar användare att lugnt och säkert tanka ner sin fil.

Jag löste detta genom att hacka sönder adressen och leta efter vissa förutbestämda filändelser och i de fallen istället för att skicka vidare besökaren erbjuda en länk som går att högerklicka.

Exempel på "vanlig" fil: http://slacka.ath.cx/subpages/hoho-redi ... g/fil.html
Exempel på mediafil: http://slacka.ath.cx/subpages/hoho-redi ... enfilm.mpg

Nu är frågan: Kan jag istället för den högerklickbara länken kasta in någon form av kod som automatiskt starta nerladdning på samma sätt som högerklicka -> save target as gör?

Tacksam för svar.
The circle is perfect, but the world isn't round.
The revolution will not be televised, the revolution will be live.
User avatar
Niklas Berggren
Hedersbit
Posts: 3524
Joined: 2002-03-08 17:53:04
Location: Göteborg (Skövde)
Contact:

Post by Niklas Berggren »

Du kan använda headers() funktionen i PHP.

ex.

Code: Select all

<?
 ($file = $_GET["file"];)
 $base = "/home/waech/pr0n/";
 $fullpath-to-file = "$base$file"
 if($file != "") {
   header("Content-type: Media-eller-nåt");
   header("Content-disposition: attachment; filename=$file");
   header("Content-Lenght: ".filesize($fullpath-to-file));
   readfile($fullpath-to-file));
}

/* Här kommer kod som till slut skickar variabeln $file till sigsjälv. en länk som lyder ex. <a href=\"$PHP_SELF?file=pr0n.mpg\">Pr0n</a>. $file hämtas sedan av PHP med den första raden (lade den innom parantes om du inte vill göra såhär.) */

?>
Nu erbjuder browsern sig att tanka hem filen.
"How about the government sticks to courts, police, defense and corruption and leave compassion to the people who have it?" - Penn Jillette.
User avatar
Hans-Eddy
Posts: 749
Joined: 2002-03-10 10:38:48
Location: Göteborg
Contact:

Post by Hans-Eddy »

Nicke. wrote:Du kan använda headers() funktionen i PHP.

ex.

Code: Select all

<?
 ($file = $_GET["file"];)
 $base = "/home/waech/pr0n/";
 $fullpath-to-file = "$base$file"
 if($file != "") {
   header("Content-type: Media-eller-nåt");
   header("Content-disposition: attachment; filename=$file");
   header("Content-Lenght: ".filesize($fullpath-to-file));
   readfile($fullpath-to-file));
}

/* Här kommer kod som till slut skickar variabeln $file till sigsjälv. en länk som lyder ex. <a href="$PHP_SELF?file=pr0n.mpg">Pr0n</a>. $file hämtas sedan av PHP med den första raden (lade den innom parantes om du inte vill göra såhär.) */

?>
Nu erbjuder browsern sig att tanka hem filen.
Fungerar detta även med matterial på andras servrar?
The circle is perfect, but the world isn't round.
The revolution will not be televised, the revolution will be live.
User avatar
Niklas Berggren
Hedersbit
Posts: 3524
Joined: 2002-03-08 17:53:04
Location: Göteborg (Skövde)
Contact:

Post by Niklas Berggren »

om $fullpath refererar till hela sökvägen, t.ex. http://www.whatever.org/grejer.sakborde det gå, ja.
"How about the government sticks to courts, police, defense and corruption and leave compassion to the people who have it?" - Penn Jillette.
jstrom
Posts: 1732
Joined: 2002-05-28 22:18:35
Location: Göteborg
Contact:

Post by jstrom »

Nicke. wrote:om $fullpath refererar till hela sökvägen, t.ex. http://www.whatever.org/grejer.sakborde det gå, ja.
men då tankar ju hans server ner det först och sen skickar till klienten :/ eller?
User avatar
Niklas Berggren
Hedersbit
Posts: 3524
Joined: 2002-03-08 17:53:04
Location: Göteborg (Skövde)
Contact:

Post by Niklas Berggren »

jstrom wrote:
Nicke. wrote:om $fullpath refererar till hela sökvägen, t.ex. http://www.whatever.org/grejer.sakborde det gå, ja.
men då tankar ju hans server ner det först och sen skickar till klienten :/ eller?
Jo...
"How about the government sticks to courts, police, defense and corruption and leave compassion to the people who have it?" - Penn Jillette.
GuzZzt
Posts: 2
Joined: 2003-05-18 20:53:09
Contact:

Post by GuzZzt »

Jag har försökt en del med detta, men jag får problemmet att man kan bara tanka ner filen om man trycker på länken, det går varken att skriva URLen direkt i adressfältet eller använda <META HTTP-EQUIV="Refresh" CONTENT="..."> som är det jag vill göra. IE säger bara att den inte kan tanka hem filen. Är det någon som har haft samma problem, eller kanske rent av en lösning på det.
User avatar
nva
Hedersbit
Posts: 2517
Joined: 2002-03-07 23:34:21
Location: Skåneland
Contact:

Post by nva »

http://www.64bits.se/forum/viewtopic.php?t=18120 är ett gränsfall till bump men den här är definitivt det. Låser.
The three most dangerous things in the world are a programmer with a soldering iron, a hardware type with a program patch and a user with an idea.

In theory, there is no difference between theory and practice. But, in practice, there is.
Locked