Ik heb onderstaande php bestand welke wordt opgeroepen voor uploaden van een afbeelding.

Ik wil nu nadat ik op de melding "Afbeelding succesvol geüpload naar: ".." heb gelkikt dat de pagina automatisch sluit. weet iemand hoe ik dit voor elkaar kan krijgen? het lukt niet.


<?php

// Controleer of het formulier is verzonden
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['image'])) {
    // Verkrijg het bestand
    $file = $_FILES['image'];

    // Extensies die toegestaan zijn
    $allowedExtensions = ['jpg', 'jpeg', 'png', 'tif'];
    $fileExtension = strtolower(pathinfo($file['name'], PATHINFO_EXTENSION));

    // Controleer of de extensie geldig is
    if (!in_array($fileExtension, $allowedExtensions)) {
        echo "Fout: Ongeldige bestandsextensie. Alleen .jpg, .jpeg, .png, en .tif zijn toegestaan.";
        exit;
    }

    // Genereer een willekeurige bestandsnaam
    $newFileName = 'thumbfull_' . uniqid() . '.' . $fileExtension;

    // Definieer het pad waar het bestand moet worden opgeslagen
    $uploadDir = '../upload_images/';
    if (!is_dir($uploadDir)) {
        mkdir($uploadDir, 0755, true);
    }

    $uploadPath = $uploadDir . $newFileName;

    // Verplaats het bestand naar de juiste map
    if (move_uploaded_file($file['tmp_name'], $uploadPath)) {
        echo "Afbeelding succesvol geüpload naar: " . $uploadPath;
    } else {
        echo "Fout bij het uploaden van het bestand.";
    }
} else {
    echo "Geen bestand geüpload.";
}

?>
bedankt. ik heb het nu zo gedaan zonder timer. het werkt wel, echter ik krijg de javascript als echo te zien in de popup!


echo '<script>window.close();</script>';
Voorbeeld.


<p>upload geslaagd</p>
<p>Venster sluit na <span id='demo'>3</span> seconden</p>

<script>

var countStart = 3;
var x = setInterval(function() {
	countStart = countStart - 1;
	var teller = countStart;
	document. getElementById("demo").innerHTML = teller;
	// na de countdown, ga naar volgende pagine 
	if (teller == 0) {
		window.location.href = "klaar.html";
	}
}, 1000);
</script>


klaar.html bevat deze tekst


<p>Hier naartoe na upload.</p>
bedankt voor de input. het is niet de bedoeling dat klaar.html pagina. wordt geladen. de huidige pagina geopende pagina moet sluiten en de pagina van waaruit e php is opgeroepen blijft dan open staan.


[size=xsmall]Toevoeging op 10/02/2025 14:58:54:[/size]

kan ik i.p.v. window.location.href toch ook dit gebruiken?

window.opener.location.reload();

[size=xsmall]Toevoeging op 10/02/2025 15:05:15:[/size]

zo kan het ook. echter zowel de html als de javascript verschijnt in een popup box. komt waarschijnlijk omdat de php code in een bestand staat dat wordt opgeroepen vanuit een html dokument.

Reageren