[PHP] Lange String

Pagina: 1
Acties:

  • reminder
  • Registratie: Maart 2001
  • Laatst online: 17-08 19:16
Ik heb dus een upload scriptje gemaakt
PHP:
1
2
3
4
$fp = fopen ($_FILES['userfile']['tmp_name'], "r");
while ( $temp = fread($fp,512) ) { $doc .= $temp; }
fclose($fp);
$docenc = base64_encode ($doc);

Hier na zet hij die $docenc in een database.

Het probleem is alleen dat hij niet verder komt dan de eerst +/- 50000 byte
Iemand uit m'n MSN lijst dacht dus dat een string mischien maximaal maar 65536 tekens mocht hebben. Dus nu is mijn vraag hoe krijg ik die string' langer' ?

Each year, the Rainforest is responsible for over 3000 deaths from accidents, attacks or illnesses. There are over 700 things in the rainforest that cause cancer. Join the fight now and help stop the Rainforest before it's too late


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Ik heb strings gehad die files van meerdere MB's representeerden...
Volgens mij is dat dus niet zo'n probleem

Wat me een logischer probleem lijkt, is dat je veld-type niet verder kan dan de grootte die je daar noemt, of dat je query om te inserten een bepaalde lengte overschrijdt.
Met base64_encode wordt het iig weer een stukje langer dus het kan idd best zijn dat je de 65535 karakters haalt.

Wat voor database gebruik je en wat voor veld voor de insert? Wat voor foutmelding krijg je? Of wat gaat er fout als je geen melding hebt?

  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
als je een TEXT-veld gebruikt kun je idd 'slechts' 65 kb opslaan. Met een LONGTEXT 4 GB. Zie http://www.mysql.com/doc/en/Storage_requirements.html.

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

marcusk schreef op 27 oktober 2002 @ 13:04:
als je een TEXT-veld gebruikt kun je idd 'slechts' 65 kb opslaan. Met een LONGTEXT 4 GB. Zie http://www.mysql.com/doc/en/Storage_requirements.html.

Als ie mysql gebruikt idd wel ja ;)

Overigens is het handiger files in BLOB velden op te slaan dan hoef je geen base64 encoding te nemen en volstaat simpelweg mysql_escape_binary() (zo heet ie geloof ik) kwa call voor het insert-compatible maken.

  • reminder
  • Registratie: Maart 2001
  • Laatst online: 17-08 19:16
Hij stond idd op TEXT heb hem nu op LONGBLOB gezet en met mysql_escape_string() is die gelijk een stuk kleiner.
Thx :)

Each year, the Rainforest is responsible for over 3000 deaths from accidents, attacks or illnesses. There are over 700 things in the rainforest that cause cancer. Join the fight now and help stop the Rainforest before it's too late