Archief - Bestanden verzenden via socket

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Strangler

Legacy Member
Volgend vraagje:

Ik wil een bestand van 1 hosting naar een andere zenden, via php, in een post (of get).
dus stel, ik upload een afbeelding in mijn applicatie, dan moet die doorgezonden worden naar een door mij gespecifieerde domeinnaam/hosting, met daarop een bestand (verwerking.php) die dan die afbeelding gaat herschalen naar de proporties die ikzelf ook meegeef, en daarna natuurlijk ook in de juiste map steekt.
het zou iets moeten zijn met base64_encode ofzo.

Ik hoop dat je wat wijs geraakt uit mijn uitleg, en dat je me kan voorthelpen.

groeten

Strangler

Legacy Member
ok, ik ben al zover gekomen:
ik converteer de afbeelding naar een string dmv:
PHP:
$test = base64_encode(fread($fh, filesize($myFile)));

ik zend die door via een socketconnectie.

aan de andere kant doe ik dan

PHP:
$data = base64_decode($data);
$im = imagecreatefromstring($data);

Maar dan krijg ik de error:
Code:
Warning: imagecreatefromstring() [function.imagecreatefromstring]: gd-jpeg: JPEG library reports unrecoverable error: in D:\wwwroot\editor.php on line 23

Warning: imagecreatefromstring() [function.imagecreatefromstring]: Passed data is not in 'JPEG' format in D:\wwwroot\editor.php on line 23

Warning: imagecreatefromstring() [function.imagecreatefromstring]: Couldn't create GD Image Stream out of Data in D:\wwwroot\editor.php on line 23

(allemaal op localhost)

maar als ik dan in het eerste bestand hetzelfde doe:
PHP:
$data = base64_decode($data);
$im = imagecreatefromstring($data);

werkt het wel.

het aantal karakters van de strings komen overeen, maar als ik ze beiden echo zonder de base64_encode, krijg ik een verschillend resultaat.

help?

Cycloon

Legacy Member
Waarom serializeer je niet gewoon de image file en stuur je die als 1 geheel door? Het enige dat je aan de andere kant nog met doen is deserializeren.

Strangler

Legacy Member
waarom zou ik serializen?
ik heb het trouwens kunnen oplossen.
+-tekens werden omgezet in spaties.
str_replace did the trick, maar is dit wel de goede manier?

Cycloon

Legacy Member
Ben je daar zeker van? Ik heb het voor de zekerheid nog eens getest en urlencode("+") geeft %2B, dat zou niet meer mogen herkend worden in een GET variabele als spatie.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan