Ich sehe grade, sind diese zwei Verzeichnisse nicht etwas widersprüchlich?
C:\Dokumente%20und%20Einstellungen\Laptop\Desktop\ bild.jpg'
'/srv/www/vhosts/pyrgo.de/httpdocs/php/test/test.jpg'
Du kannst ja auch mal mit is_dir($dir) überprüfen, ob beide Verzeichnisse vorhanden sind, bzw. ob sie existieren. Ich denke, dass mindestens eines von beiden nicht gehen kann, da es ja zwei völlig unterschiedliche Varianten sind. Du kannst auch mal versuchen, zu checken, ob is_writable() funktioniert. Außerdem glaube ich, dass der erste Parameter eigentlich immer $_FILES['userfile']['tmp_name'] sein müsste. Oder ist das jetzt hier nur ein Beispiel?
Mit freundlichen Grüßen,
Valle