fwrite over stream veranderd output
Arjen Lodder
11/01/2012 18:32:24Bij dezen, Pim...
Beste mensen, ik zit met een probleem. Ik heb een script waarbij het volgende moet gebeuren met een .NZB bestand (is gewoon XML).
- gzdeflate
- encoden
- uploaden naar het usenet
In principe is dit geens van allen een probleem, maar er gaat ergens iets mis bij het uploaden naar het usenet. Als ik de data vergelijk mist er namelijk 1 byte, en is het resultaat niet wat het zou moeten zijn.
Wanneer ik dan de data up het usenet decode en inflate, komt er wel een resultaat uit, maar staat alles door elkaar.
Het opvallende hieraan is dat het alleen gebeurt bij wat grotere bestanden (source bestand: 1+mb), en dat het resultaat pas door elkaar heen staat na ongeveer de helft.
De techniek die ik gebruik om het te uploaden naar het usenet gaat via fwrites, met een file pointer die aangemaakt is via stream_socket_client.
Nog wat belangrijke data misschien:
- Bestandsencoding is ISO-8859-1
- fwrite geeft aan alles geschreven te hebben
- als ik de geschreven data in een aparte var zet, en lokaal decode + inflate komt het goede resultaat eruit.
- Als ik i.p.v. naar het usenet naar een bestand schijf, en hierna decode + inflate komt het goede resultaat eruit.
Bedankt voor het lezen, hoop dat het te snappen is. Als er vragen zijn hoor ik het.
Beste mensen, ik zit met een probleem. Ik heb een script waarbij het volgende moet gebeuren met een .NZB bestand (is gewoon XML).
- gzdeflate
- encoden
- uploaden naar het usenet
In principe is dit geens van allen een probleem, maar er gaat ergens iets mis bij het uploaden naar het usenet. Als ik de data vergelijk mist er namelijk 1 byte, en is het resultaat niet wat het zou moeten zijn.
Wanneer ik dan de data up het usenet decode en inflate, komt er wel een resultaat uit, maar staat alles door elkaar.
Het opvallende hieraan is dat het alleen gebeurt bij wat grotere bestanden (source bestand: 1+mb), en dat het resultaat pas door elkaar heen staat na ongeveer de helft.
De techniek die ik gebruik om het te uploaden naar het usenet gaat via fwrites, met een file pointer die aangemaakt is via stream_socket_client.
Nog wat belangrijke data misschien:
- Bestandsencoding is ISO-8859-1
- fwrite geeft aan alles geschreven te hebben
- als ik de geschreven data in een aparte var zet, en lokaal decode + inflate komt het goede resultaat eruit.
- Als ik i.p.v. naar het usenet naar een bestand schijf, en hierna decode + inflate komt het goede resultaat eruit.
Bedankt voor het lezen, hoop dat het te snappen is. Als er vragen zijn hoor ik het.
Gewijzigd op 11/01/2012 20:16:37 door Arjen Lodder
PHP hulp
24/11/2024 08:09:21Noppes Homeland
11/01/2012 20:27:08in principe een verkeerde kueze om hier php in te zetten.
je kan beter gebruiken maken van de os ftp mogelijkheden.
je kan beter gebruiken maken van de os ftp mogelijkheden.
Arjen Lodder
11/01/2012 20:40:11Tja, het Usenet ondersteund geen FTP, en PHP zou dit zonder problemen aan moeten kunnen. Ook zou ikzelf niet in staat zijn om een programma te schrijven voor linux die dit doet.