Disculpas, ni lo habia visto al formulario 
 
 
Tu codigo funciona muy bien solo habia que ordenarlo, y agregarle unas pequeñas cosas, lo cual hice... y mejor te devuelvo todo el codigo con esos pequeños cambios: 
Verifica que uno de los codigos es 
javaScript, no php; y otro si php (el upload) 
Crea un archivo php y mete todo esto, solo ejecutalo, carga una imagen (con el boton examinar), y el codigo hara todo lo demas... la imagen sera subida al mismo directorio donde este este script... 
Al documento nuevo no le abras ni cierres etiquetas, solo mete el codigo y listo 
Luego hazle las modificaciones que te interesen:  
 Código PHP:
    
 
<!-- Esto reemplaza a tu simple etiqueta <script> -->
<script type="text/javascript" language="javascript"> 
<!--  
 
function comprueba_extension(formulario, archivo) { 
 
//alerts para que vea lo que te muestra y lo analices
alert(formulario);
alert(archivo);
 
   extensiones_permitidas = new Array(".gif", ".jpg", ".doc", ".pdf"); 
   mierror = ""; 
   if (!archivo) { 
      //Si no tengo archivo, es que no se ha seleccionado un archivo en el formulario 
       mierror = "No has seleccionado ningún archivo"; 
   }else{ 
      //recupero la extensión de este nombre de archivo 
      extension = (archivo.substring(archivo.lastIndexOf("."))).toLowerCase(); 
      //alert (extension); 
      //compruebo si la extensión está entre las permitidas 
      permitida = false; 
      for (var i = 0; i < extensiones_permitidas.length; i++) { 
         if (extensiones_permitidas[i] == extension) { 
         permitida = true; 
         break; 
         } 
      } 
      if (!permitida) { 
         mierror = "Comprueba la extensión de los archivos a subir. \nSólo se pueden subir archivos con extensiones: " + extensiones_permitidas.join(); 
       }else{ 
          //submito! 
         alert ("Todo correcto. Voy a submitir el formulario."); 
         //a esta linea le faltaba "document"
         document.formulario.submit(); 
         return 1; 
       } 
   } 
   //si estoy aqui es que no se ha podido submitir 
   alert (mierror); 
   return 0; 
} 
 
--> 
</script>  
 
<!--
"this.form.name" contiene el nombre del formulario
"this.form[0].value" contiene la ruta del archivo a subir
-->
 
<form name="formulario" enctype="multipart/form-data" method="POST" action="">
 
<input type="file" 
           name="archivo" 
           id="archivo"
          onchange="comprueba_extension(this.form.name,this.form[0].value)"><br>
 
<!-- <input type="submit" value="Enviar"> -->
</form>
 
 
<?php 
 
//echo "Se subira ". $_FILES['archivo']['name'];
//$ruta = "./imagenes/" . $_FILES['archivo']['name']; 
$ruta = $_FILES['archivo']['name']; 
 
$r=copy($_FILES['archivo']['tmp_name'], $ruta); 
 
if($r){
echo "La imagen subio correctamente"; 
}
 
?>