Hola
Daz
No sé si te he entenedido bien pero ahí lanzo un tiro a ver si acierto.
por qué no pruebas esto
Código:
$on_change = strpos($_SERVER['PHP_SELF'], 'la_pagina_de_alta.php') ? " onchange='activa_file(this.value);'" : "")
echo "<select name='pepe' class='campos' id='pepe'" . $on_change . ">";
strpos devuelve verdadero o falso en caso de estar contenida la cadena que se le pasa en el segundo argumento en la cadena del primero