curl Problem

Drawlix

Mitglied
Ich möchte mit curl eigentlich dies in php senden
curl -u [zarafa-admin user]:[password] -T [path to ics file] http://[zarafa-ical-server]:8080/ical/[username]

nun Habe ich mir folgendes gedacht

PHP:
<?PHP 

function curlUpload($ini,$datei)
{
	
	$fp		= fopen($datei, "r"); 
	$url	= "ftp://".$ini['user'].":".$ini['passwd']."@".$ini['host'].":8080" . $ini['pfad'].$ini['file']; 
	
	$handle = curl_init();     
	
	curl_setopt($handle, CURLOPT_URL, $url);  
	curl_setopt($handle, CURLOPT_RETURNTRANSFER, 1);  
	curl_setopt($handle, CURLOPT_UPLOAD, 1);  
	curl_setopt($handle, CURLOPT_INFILE, $fp);  
	curl_setopt($handle, CURLOPT_INFILESIZE, filesize($datei));  

	$result = curl_exec($handle);  

	$info = curl_getinfo ($handle);

	curl_close($handle); 
	
	return $info; 

}

function makeInfoUpload($info)
{
	
	if($info['speed_upload'] >= 1000000)
	{
		$speed = $info['speed_upload'] / 1000000;
		$infoF['speed_upload'] = sprintf("%01.2f", $speed) . ' MegaByte/s';
	}
	else
	{
		$speed = $info['speed_upload'] / 1000;
		$infoF['speed_upload'] = sprintf("%01.1f", $speed) . ' KiloByte/s';
	}
	
	if($info['size_upload'] >= 1000000)
	{
		$speed = $info['size_upload'] / 1000000;
		$infoF['size_upload'] = sprintf("%01.2f", $speed) . ' MegaByte/s';
	}
	else
	{
		$speed = $info['size_upload'] / 1000;
		$infoF['size_upload'] = sprintf("%01.1f", $speed) . ' KiloByte/s';
	}
	
	$infoF['total_time'] = sprintf("%01.1f", $info['total_time']) . ' Sek.';
	
	return $infoF;
	
}

$ini['user'] = 'user';
$ini['passwd'] = 'pass!';
$ini['host'] = 'url.de';
$ini['pfad'] = '/ical/user/';
$ini['file'] = '';
$datei = 'C:/xampp/htdocs/123/ical/avc.ics';

$info = curlUpload($ini,$datei);
$infoF = makeInfoUpload($info);

echo 'Dateigröße: ' . $infoF['size_upload'] . '<br>';
echo 'Geschwindigkeit: ' . $infoF['speed_upload'] . '<br>';
echo 'Gesamtzeit: ' . $infoF['total_time'] . '<br><br>';
print_r($info);
?>

aber es wird nichts übertragen warum

und was bedeutet curl -u
 
Zuletzt bearbeitet:
Hm,

du willst an einen HTTP-Server senden, verwendest als Protokoll aber ftp://?

Ich weiß ja nicht, ob es ein copy&paste-Fehler ist, aber ich meine das hier:

PHP:
 $url    = "ftp://".$ini['user'].":".$ini['passwd']."@".$ini['host'].":8080" . $ini['pfad'].$ini['file'];
 
Zurück