İşte benim sorunum. Ben çok 'kullanıcı dostu' değil bilet izleme sistemi var ama benim kullanıcıların görmek için onlara kalmadan sisteme 'bilet' göndermek için bir istek var.
Ben kadarıyla sadece özel bir HTTP Formu'nu kullanarak ve bilet izleme sistemine gönderme var. Bir sorun 'başarı / tamamlama' sayfa insanların kafasını karıştırmak için bir eğilimi sahiptir. Ben de farklı bir 'başarı' sayfasını kullanmak için bilet sistemini değiştirmek edemez yana iyi ... düşündüm. Ben sadece CURL ile HTTP Post değişimi ele almak ve özel bir başarı ya da sorun sayfa rapor verecek. İşte bazı kod soyutlanmış.
Dosya: tickethelper.php
<?php
extract($_POST);
$url = 'TICKETSYSTEMURL';
$fields = array(
'fullname'=>urlencode($fullname),
/*many more fields*/
);
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
curl_setopt($ch, CURLOPT_MAXREDIRS, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$contents = curl_exec($ch);
curl_close($ch);
if((strlen(strstr($contents,'Your ticket has been submitted')))>0){
header("Location: http://THANKYOU");
}
else{
header("Location: http://OOPS");
}
?>
Ancak, ne anladım ben benim dosya yükleme eksik olmasıdır. Gördüğüm CURL örnekler çoğu uzak bir HTTP POST sayfa yerel dosyaları yükleme ile ilgisi vardır.
Nasıl benim kullanıcıları HTTP form, sürecin bir dosyayı alan hallederiz 'tickethelper' ve POST 'TICKETSYSTEMURL' o bu?
-İsrail