Hét vraag- en antwoordplatform van Nederland

Hoe maak je een Afbeelding opslaan knop in html?

Hoi, ik ben bezig met een website in html. Nu moet je op de website een afbeelding kunnen downloaden. Ik deed dit:



en dit:

Downloaden

Maar daar ga je allebei naar de afbeelding en moet je rechts klikken om hem te downloaden. Is er ook een manier om gelijk een download schermpje te krijgen? Dus als je op de knop klikt dat hij dan vraagt of je hem wil downloaden en waar.

Verwijderde gebruiker
13 jaar geleden

Heb je meer informatie nodig om de vraag te beantwoorden? Reageer dan hier.

Geef jouw antwoord

Het is niet mogelijk om je eigen vraag te beantwoorden Je mag slechts 1 keer antwoord geven op een vraag Je hebt vandaag al antwoorden gegeven. Morgen mag je opnieuw maximaal antwoorden geven.

/
Geef Antwoord
+
Selected image

Het beste antwoord

Wat jij wilt kan door de HTTP headers die meegestuurd worden, te voorzien van een content-disposition header.

Het is al uitgelegd in onderstaande link. Je hebt wel een server-side script nodig.
(Lees meer...)
Verwijderde gebruiker
13 jaar geleden
Verwijderde gebruiker
13 jaar geleden
Als jouw server php kan komen we er wel uit!!
Verwijderde gebruiker
13 jaar geleden
Maak een bestand 'getimage.php' aan met de volgende code: {
$path_parts = pathinfo($_GET['file']);
$validext = array( 'jpg' , 'gif' , 'png' );
$ext = $path_parts['extension']; if (in_array($ext, $validext, true))
{
$file = 'images/'.$path_parts['filename'].".".$ext;

if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
else
{
echo "Plaatje $file niet gevonden.";
}
}
else
{
echo "Deze extensie is niet toegestaan.";
}
}
else
{
echo "Geen bestandsnaam opgegeven.";
} ?> Maak in dezelfde map een subdir "images" en stop daar een plaatje in, bv. ' goeievraag.png'. Maak dan ook nog een HTML bestand aan en zet daarin: Downloaden Ik heb het getest en het werkt. Merk op dat het slim is om er veel beveiligingen in te stoppen zodat het script niet misbruikt kan worden om in andere directories te komen en andere bestanden dan plaatjes te downloaden.
Verwijderde gebruiker
13 jaar geleden
Zet tijdelijk even // voor alle header() statements, dan zie je misschien een foutmelding. Heb je een subdir 'images' aangemaakt die in de dir onder je php script staat?
Verwijderde gebruiker
13 jaar geleden
OK terug naar de basis. Verander het script naar: ?> Dan moet hij de naam van je plaatje tonen...
Deel jouw antwoord

Het is niet mogelijk om je eigen vraag te beantwoorden Je mag slechts 1 keer antwoord geven op een vraag Je hebt vandaag al antwoorden gegeven. Morgen mag je opnieuw maximaal antwoorden geven.

/
Geef Antwoord
+
Selected image