¿Y no has mirado por qué no te funciona?
¿Problemas de permisos?
¿Lo estás haciendo en el servidor no?
¿Llamas correctamente a ese código?
¿El formulario tiene el el enctype bien?
¿Te imprime el nombre del archivo bien?
No somos adivinos...
Varias cosas:
Código PHP:
$urlW = $HTTP_POST_FILES['avatar']['name'];
$n = $_SESSION["user"].".png";
$destino = "../images/".$n;
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg") &&
($tamano_archivo < 4000000))){
echo "Error";
}
else if(move_uploaded_file($HTTP_POST_FILES['avatar']['tmp_name'], $destino)){
Ahí hay cosas de más o raras. le asignas la extensión .png a la imagen y validas que no sea un gif o un jpeg?
¿Y si es bmp qué? Aparte una cosa es jpeg pero también existe jpg, entre otros tantos archivos que no son imagen y que te entrarían en el else...
Si debe ser png te basta un if con dicha extension. "image/png"
Y tu pregunta se resuelve concatenando.
Código PHP:
if(is_uploaded_file($_FILES['fichero']['tmp_name']))
{
if( $_FILES['fichero']['type']=="image/png" and $_FILES['fichero']['size'] <= 524288 )
{
$nombre='nombreimagen-'.$_FILES['fichero']['name'];
if(move_uploaded_file($_FILES['avatar']['tmp_name'],$nombre))
{
echo'Subida';
//blablabla
}
}
}