[Mysql] Krijg geen grote stukken text geinsert

Pagina: 1
Acties:

  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Ik ben bezig met en eigen search voor GoT en ik heb een poos geleden daarvoor zo'n 250 topics aan rauwe html binnen gehaalt. :)

Nu heb ik een convertertje geschreven die de topictitels en forum namen enz. eruit vist, werkt ook allemaal ok, maar als ik het hele handeltje wil inserten in mysql dan doet ie dat niet.

Toen heb ik gekeken waar het aan lag en het was de var met alle messages (zie topic source).

Per topic zit er net 3k aan messages in, is dat te veel om te insterten ofzo :?

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:46

Creepy

Tactical Espionage Splatterer

In wat voor veld-type wil je dit inserten?
Voor elk veldtype (char, varchar, memo etc.) geld een bepaald maximum.. zie MySQL site voor wat maximaal waar in kan.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Longtext lijkt me eigelijk wel lang zat :{

  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Nouwja, hier is dan wat code:
PHP:
1
2
3
4
5
<?
$messages = messages($row[html]); //Deze functie staat in de geinclude file "functions.php"

mysql_query("INSERT INTO topics1 VALUES('$topicid','$topictitel','$messages','$tstarter','$fid','$fname')");
?>

Ok niet schrikken van de koeien manier, hier is functions.php:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
function messages($html){
$html = strchr($html,"message(");

$length = strlen($html);
$teller = 4000;
while($teller<=$length){
$test = $html[$teller+0].$html[$teller+1].$html[$teller+2].$html[$teller+3].$html[$teller+4].$html[$teller+5].$html[$teller+6].$html[$teller+7].$html[$teller+8];
if($test=="</SCRIPT>"){
$ttend = $teller;
$teller = 999999999999999;
}
$teller++;
}
$rmv = substr($html,$ttend);
$messages = str_replace("$rmv","",$html);
return $messages;
}
?>

Ik heb dus de dingen die niet belangrijk zijn even weg gelaten ;)

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:46

Creepy

Tactical Espionage Splatterer

Hmm.. een maximale lengte aan de var's zoals PHP ze gebruikt? Das eigenlijk nog het enige wat ik zou kunnen bedenken... LONGTEXT zou lang zat moeten wezen ja.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Wat voor veld post je het in dan?

Je kunt ook text nemen,

ff je db aanpassen met het commando:

ALTER TABLE topics1 CHANGE fldMessages fldMessages text;

Suc6!

  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Op dinsdag 06 november 2001 14:33 schreef Creepy het volgende:
Hmm.. een maximale lengte aan de var's zoals PHP ze gebruikt? Das eigenlijk nog het enige wat ik zou kunnen bedenken... LONGTEXT zou lang zat moeten wezen ja.
Als ik hem print komen er gewoon de messages uit, dus aan de var ligt het niet.
Als ik de hele insert query uitvoer zonder die $messages erbij dan doet ie dat ook gewoon..

Dus de var en de query zitten elkaar in de weg.. maarja.. hoe los ik het op?

Als dit werkt dan moet die query ook nog eens 50x in een loop uitgevoerd worden..

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:46

Creepy

Tactical Espionage Splatterer

Op dinsdag 06 november 2001 14:43 schreef BarisArt het volgende:
Wat voor veld post je het in dan?

Je kunt ook text nemen,

ff je db aanpassen met het commando:

ALTER TABLE topics1 CHANGE fldMessages fldMessages text;

Suc6!
Wat voor veldtype denk je dat LONGTEXT is?? Affijn :)

Hmm.. is wel super vaag ja... in PHP issie goed.. en LONGTEXT zou dat toch allemaal wel op moeten kunnen slaan.. damn.. geen ideeen meer ..
edit:
Nog wel een idee... weet je zeker dat er in die messages geen vage tekens staan (dus aanhalingstekens, quotes etc.)? Zo ja, escape je die al?

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Ow damn ja |:( even proberen ;)

edit: Hij werkt :) :) Nu nog even Onno inhalen :P

  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
grrpmf, niet dus, of eigelijk; half.

Er zitten blijkbaar nog wat karakters ergens waar ie niet tegen kan.. weet iemand een manier om _alle_ in de weg staande karakters te escapen?

Kheb nu stripslashes en addslashes geprobeert, beide werken dus niet helemaal ok..

  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Ok, alle bullshit op een stokkie ofzow maar hij werkt nu wel :Y)

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:46

Creepy

Tactical Espionage Splatterer

hehehe.. mooi :)
Bleek het probleem toch simpleren te zijn dan dat ik dacht hehe..

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

een zoekmachine met LONGTEXT als column type????

Ik zou maar weer eens in de boeken duiken wat betreft databases :)

Klaar voor een nieuwe uitdaging.


  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03
Maakt toch niet veel uit lijkt me.. en een mbtje meer intereseert me niet ;)
Pagina: 1