2014-12-17 19 views
5

Muszę zamknąć okno po alarmbox, użyłem kodów, które zostały zadane w Stack Question Ale moje pole alertu jest wewnątrz kodu php, otrzymuję okno alertu, ale raz i zamknij okno nie zamyka się, jestem nowy w php. Kody są poniżej, proszę mi pomóc faceciJak zamknąć okno po zamknięciu alertbox wewnątrz php

<?php 
$serial_get = trim(str_replace("(","",str_replace(")","",GetVolumeLabel("d")))); 
if ($serial_get == '1233-2AZ2'){ 
} 
else{ 
echo '<script language="javascript"> 
window.alert("This is not a Licensed Software. Please contact IT Solutions."); 
window.close() 
</script>'; }?> 
+0

To nie ma nic wspólnego z php, cały kod, którego potrzebujesz, można zrobić w JavaScript. Nadal możesz pokazać nam cały wynikowy html Twojej strony? – Jerodev

+0

Nie można zamknąć pragmatycznie okna, jeśli nie jest ono otwarte przez program. – Amy

+1

Cytuj z odpowiedzi na pytanie, że zrobiłeś kod "zauważ, że jeśli sam nie otworzyłeś okna z Javascriptem, możesz nie być uprawniony do jego zamykania w zależności od przeglądarki." – dav

Odpowiedz

1

Trzeba window.open(...) móc window.close(). Używasz window.alert().

Zobacz Dobrych Praktyk w linku https://developer.mozilla.org/en-US/docs/Web/API/Window.open

+0

Czy nie możemy zamknąć istniejącego okna po zamknięciu okna alertu, Czy próbujesz to powiedzieć? – Zain

+0

Nie do końca, próbuję powiedzieć, że możesz wywołać '.close()' w oknie, które otworzysz za pomocą '.open (...)'. Również źle zrozumiałem, co próbujesz osiągnąć z .alert(). –

0

Niektóre przeglądarki nie będą respektować polecenia, chyba że jest inicjowane przez użytkownika. Ale ... Oto rozwiązanie, które może ci pomóc. spróbować zamiast close:

open(location, '_self').close(); 

A może oszukać przeglądarkę do myślenia, że ​​użytkownik został zainicjowany. To może, ale nie musi działać; nie testowałem. Rzucam spaghetti na ścianę ...

var btn = document.createElement('button'); 
document.body.appendChild(btn); 
btn.addEventListener('click', function() { 
    open(location, '_self').close(); 
}, false); 
btn.dispatchEvent(new Event('click')); 
Powiązane problemy