Trabajo en mi pc donde tengo levantado un servidor apache, php, y mysql, todo instalado con el paquete appserv 2.5.9.
Subí los ficheros a un host remoto y me funciona todo bastante bien, hasta que llego a un alta donde recibo archivos. Para subirlos al servidor tengo problemas cuando al querer ver la extensión del archivo utilizo la posición del punto.
Fatal error: Call to undefined function: stripos() in ... utilidades.php on line 60
No sé por qué pasa esto, aparentemente no maneja la función stripos() el servidor, pero en mi pc funciona muy bien.
Este es el bloque de código:
Código PHP:
function upload($nombre_archivo, $tamanio_archivo, $destino, $nuevonombre, $temp)
{
$extension = strrchr($nombre_archivo,'.');
//Se busca la posición del punto para saber hasta dónde va el viejo nombre
$posicionpunto = strpos($nombre_archivo, ".");
//Obtengo nombre viejo para poder buscarlo en el nombre original
$nombreviejo = substr($nombre_archivo, 0, $posicionpunto);
//Sustituyo nombre viejo por nombre nuevo
$nombrefinal = substr_replace($nombre_archivo, $nuevonombre, 0, strlen($nombreviejo));
//Coloco el nombre final luego del directorio de destino
$destino = $destino.$nombrefinal;
//Busca si la extensión está dentro de las aceptadas
if (!((stripos($extension, "jpg") || stripos($extension, "jpeg") || stripos($extension, "gif") || stripos($extension, "png") || stripos($extension, "txt") || stripos($extension, "doc") || stripos($extension, "xls") || stripos($extension, "ppt") || stripos($extension, "pps")) && ($tamano_archivo < 1000000))) {
return false;
}else
{
if (move_uploaded_file($temp, $destino)){
return true;
}else
{
return false;
}
}
}