Puede intentar poniendo en esta linea
Código HTML:
<script >
...
opener.document.foto.picture.src = '../../fotos/'+escape(fotonombre);
...
</script>
Lo anterior pasa porque conviertes la cadena en un URL y dentr de una de estas no son validos los espacios
Con la funcion escape() te convertira los espacios en %20 y con eso lo interpretará apropiadamente el navegador.
Este es un problema de Javascrip no de PHP