Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 2.569 pregleda

Najnovija ↓

php - citanje iz stream-a 26.03.2009. u 17:46 · pre 214 meseci #1
Radim na nekoj pda aplikaciji u C#. Sa pda uredjaja uzimam sliku u jpg formatu koju pretvaram u niz bajtova i koju saljem na php server POST metodom.
Evo koda kojim saljem sliku:
Code:

HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(sURL);
webReq.Method = "POST";
webReq.ContentType = "application/x-www-form-urlencoded";
webReq.ContentLength = imageToSend.Length;
                       
// posalji sliku serveru
Stream dataStream = webReq.GetRequestStream();
dataStream.Write(imageToSend, 0, imageToSend.Length);
dataStream.Close();

gde je imageToSend slika pretvorena u byte array a sURL adresa akcije u kontroleru kojem saljem podatke.
Ima li neko ideju kako da iz php-a procitam niz bajtova na serverskoj strani i regenerisem sliku?
Re: php - citanje iz stream-a 26.03.2009. u 20:13 · pre 214 meseci #2
Stvarno nemam iskustva sa ovim, ali jesi probao ovako nesto:

Code:


$image = imagecreatefromstring($bytes); // $bytes je niz bajtova koje primas putem POST-a

if ($image) {
    header('Content-Type: image/jpeg');
    imagejpeg($image);
    imagedestroy($image);
}

Re: php - citanje iz stream-a 27.03.2009. u 16:15 · pre 214 meseci #5
Hvala svima na predlozima. U medjuvremenu sam nasao resenje. Koristio sam base64_decode (encode) funkcije.
Code:

string postData = "data=" + Convert.ToBase64String(imageToSend, 0, imageToSend.Length);
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
                        
webReq = (HttpWebRequest)WebRequest.Create(sURL);
webReq.Method = "POST";
webReq.ContentType = "application/x-www-form-urlencoded";
webReq.ContentLength = byteArray.Length;

// posalji sliku serveru
dataStream = webReq.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();

Na serverskoj strani koristim sledece:
Code:

header('Content-type: image/jpg');

$str = '/9j/4AAQSkZJRgABAQEAwADAAAD...'; // kodovana slika
$str = str_replace(' ', '+', $str);
echo base64_decode($str);
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme