In teoria sembrerebbe la via migliore, ma non funziona
Metto il codice finale completo, magari c'è qualche errore stupido, però ci siamo quasi dai, non mi abbandonare ora.

pop.php
Codice PHP:
<html>
    <
head>
        <
title>Test</title>
        <
script type="text/javascript">
            function 
controllo()
            {
                
window.opener.location.href='madre.php?campo='+encodeURIComponent(document.mioForm.campo.value);
                
window.close();
            }
        
</script>
    </head>
    <body>
        <form id="mioform" name="mioform" action="madre.php" method="post">
            <input type="text" value="" id="campo" name="campo" />
            <input type="button" value="INVIA" onclick="controllo()" />
        </form>
    </body>
</html> 
madre.php
Codice PHP:
<script type="text/javascript">
var stile = "top=10, left=10, width=500, height=500, status=no, menubar=no, toolbar=si scrollbar=si";
function Popup(apri) {
window.open(apri, "", stile);
}
</script>
<? 
echo "<a href=\"#\" onClick=\"javascript:Popup('pop.php')\">Apri popup</a>";
$variabile=rawurldecode($_GET['campo']);
echo 
$variabile;

?>
adesso il popup non si chiude e la variabile non la riceve cmq, però credo sia un errore scemo che io ora ignoro.