Conozco bien el procedimiento de subir imagenes al servidor, he tenido un problema con el cual esto no me lo permite hacer, mi proveedor tiene una restricción con los scripts de subir imagenes, en donde me apacere:
Warning: open_basedir(); Restriction in effect.....
Y algo dice que no esta permitido, pero existe un script que pueda romper esta barrera, aqui les dejo mi script como una muestra y me digan por que pasa esto.
Código PHP:
// Peticion de subir imagenes
for($p=1; $p<=PHNUMBER; $p++) {
$filex = "eImg$p";
if(!empty($_FILES[$filex]['name'])) {
// Comprobando el tipo de archivo
$fileType = checkFileExt($_FILES[$filex]['name']);
if((!$fileType == 'gif') || (!$fileType == 'jpg')) {
echo "
<script language=\"javascript\" type=\"text/javascript\">
<!--
alert('El archivo ".$_FILES[$filex]['name']." deben se solamente en formato GIF ó JPG');
history.back();
//-->
</script>";
exit;
}
// Comprobando el tamaño
$mxsize = MXSIZE*1000;
if($_FILES[$filex]['size'] > $mxsize) {
echo "
<script language=\"javascript\" type=\"text/javascript\">
<!--
alert('El archivo ".$_FILES[$filex]['name']." excede de ".MXSIZE."KB como tamaño permitido');
history.back();
//-->
</script>";
exit;
}
// Si el archivo superó las pruebas anteriores, se procede a renombrar el archivo
// para luego subirlo.
$fb=$eName; $fe=rand(0,999);
$fn=$fb.'-'.$fe;
$intpic = $fn.'.'.$fileType;
// Ahora si viene lo que se quiere, subir imagenes, primero se comprueba el archivo
if(is_uploaded_file($_FILES[$filex]['tmp_name'])) {
if(copy($_FILES[$filex]['tmp_name'], PATH.'/gallery/'.$intpic)) { TRUE;
} else {
echo "
<script language=\"javascript\" type=\"text/javascript\">
<!--
alert('Error al copiar archivo ".$_FILES[$filex]['name'].". Imposible realizar la solicitud');
history.back();
//-->
</script>
";
exit;
}
} else {
echo "
<script language=\"javascript\" type=\"text/javascript\">
<!--
alert('Error al copiar archivo ".$_FILES[$filex]['name'].". Probablemente será un posible ataque!');
history.back();
//-->
</script>
";
exit;
}
move_uploaded_file($_FILES[$filex]['name'], PATH.'/gallery/'.$intpic);
}
$escImg[$p] = $intpic;
}