Todos Conocemos muy bien el servicio de alojamiento de imagenes Imageshack pero y si les digo que por medio de php podemos enviar contenido a los servidores.
de Imageshack utilizando funciones simples bueno para eso les explicare el codigo que se tiene que utilizar para realizar el proceso.

Parte 1

<?php

/* 

Esta Funcion permitira saber cual es el mimetype de la imagen que queremos enviar a Imageshack
enviandole como parametro el nombre de el archivo.

*/

function MimeType($filename){
    $ext = pathinfo($filename);
    $ext = $ext['extension'];
    
    switch($ext){
        case "bmp": return "image/bmp"; break;
        case "gif": return "image/gif"; break;
        case "jpe": return "image/jpeg"; break;
        case "jpeg": return "image/jpeg"; break;
        case "jpg": return "image/jpeg"; break;
        case "png": return "image/png"; break;
        case "swf": return "application/x-shockwave-flash"; break;
        case "tif": return "image/tiff"; break;
        case "tiff": return "image/tiff"; break;
        default: return ""; break;
    }
}



/* A continuacion la Funcion Principal de el script es la que se utiliza para realizar el envio de la informacion */


function imageshackUpload($filename){

    $sock = @fsockopen("www.imageshack.us", 80, $errno, $errstr, 30);  // Conectamos a Imageshack via fsockopen 
      

    // Leemos el archivo a enviar y lo armamos como un binario

    $handle = fopen($filename, "r");
    $binarydata = fread($handle, filesize($filename));
    fclose($handle);
    
    
    // Identificamos el Mimetype de el archivo

    $mimetype = MimeType($filename); 



    // Armamos el contenido de la peticion 
       
    $AaB03x  = "--AaB03xrn";
    $AaB03x .="content-disposition: form-data; name="uploadtype"rnrn";
    $AaB03x .= "onrn";
    $AaB03x .= "--AaB03xrn";
    $AaB03x .= "content-disposition: form-data; name="fileupload"; filename="".basename($filename).""rn";
    $AaB03x .= "Content-Type: $mimetypern";
    $AaB03x .= "Content-Transfer-Encoding: binaryrnrn";
    $AaB03x .= "$binarydatarn";
    $AaB03x .= "--AaB03x--rn";

    // Realizamos el Construccion de las cabeceras a enviar a Imageshack

    $header  = "POST / HTTP/1.1rn";
    $header .= "Host: www.imageshack.usrn";
    $header .= "Content-type: multipart/form-data, boundary=AaB03xrn";
    $header .= "Content-Length: ".strlen($AaB03x)."rnrn";
    $header .= $AaB03x;
    


    fwrite($sock, $header); // Creamos el Archivo en ImagesHack
   
    // Procedemos a Escribir el contenido 

    while (!feof($sock)){
        $response .= fgets($sock, 128);
    }

   // Cerramos la conexion con Imageshack 
   fclose($sock);
    

   // Finalmente Creamos el enlace que necesitaremos para poder incrustar nuestra imagen en donde queramos 

    preg_match_all("#<input type="text" onclick="highlight(this)" style="width: 500px" size="70" value="[URL=http://imageshack.us][IMG](.*)[/IMG][/URL]"/>#", $response, $matches);
    return $matches[1][0];
}

?>

en esta parte esta el codigo referente al formulario en html que se va a usar para que trabaje con el script en php

parte 2 formulario

<html>
<?php if(!isset($_POST['sub'])){ ?>
    <form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    Enter path to file: <input type="text" name="test" /><br />
    <input type="submit" name="sub" />
    </form>     
<?php } else {
    echo imageshackUpload($_POST['test']);
}?>
</html>

Este Codigo no ha sido testiado, para poder usarlo tu servidor debera soportar fsockopen para la conexion