2014-12-17 12 views
5

Ho bisogno di chiudere la finestra dopo la casella di avviso, ho usato i codici che sono stati richiesti in Stack Question Ma la mia casella di avviso è all'interno di un codice php, sto ricevendo la finestra di avviso ma una volta io chiudi la finestra non si sta chiudendo, sono nuovo a php. I codici sono al di sotto, Please help me out ragazziCome chiudere la finestra dopo che l'avviso viene chiuso all'interno 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

Questo non ha nulla a che fare con php, tutto il codice che ti serve può essere fatto in Javascript. Ancora, potresti mostrarci l'intero risultato in html della tua pagina? – Jerodev

+0

Non è possibile chiudere pragmaticamente la finestra se questa non è stata aperta dal programma. – Amy

+1

Citazione dalla risposta dalla domanda che hai preso il codice 'nota che se non hai aperto tu la finestra con Javascript, potresti non essere autorizzato a chiuderla a seconda del browser. – dav

risposta

1

Devi window.open(...) essere in grado di window.close(). Si sta utilizzando window.alert().

Vedi Best Practice nel link https://developer.mozilla.org/en-US/docs/Web/API/Window.open

+0

Quindi non possiamo chiudere una finestra esistente dopo aver chiuso la finestra di avviso, Stai cercando di dirlo ?? – Zain

+0

Non proprio, sto cercando di dire che puoi chiamare '.close()' su una finestra che apri con '.open (...)'. Inoltre ho frainteso quello che stai cercando di ottenere con .alert(). –

0

Alcuni browser non rispettano il comando a meno che sia avviata dall'utente. Ma ... Ecco una soluzione che potrebbe funzionare per te. provare questo invece di close:

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

O forse ingannare il navigatore a pensare che è stata avviata dall'utente. Questo può o non può funzionare; non ho provato Sto solo buttando gli spaghetti al muro ...

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