String volledig Inladen uit Query
Wat er gaande is, is het volgende. Ik laat een text uit de Database inladen in een String, en vervolgens haal ik deze string door een Class heen die de string opsplitst. Echter spuigt hij dan maar een deel van de tekst uit, en het lijkt dus alsof de string niet helemaal klaar is met het ophalen van de text uit de Database, want als ik namelijk de text die in de Database zet direct in de string zet werkt het wel normaal.
Hoe kan ik ervoor zorgen dat de Text eerst volledig uit de Database en in de String gezet wordt, alvorens het script verder gaat met het uitvoeren van eventuele classes of functions?
(als 't niet past kun je het ook nooit weer helemaal terug krijgen)
Controleer dus eens of de gegevens wel goed in je database staan.
Wanneer ik de String namelijk niet door een Class heen haal en direct echo pakt hij de tekst wel helemaal, het lijkt er dus echt op dat de string nog niet helemaal volgeladen is op het moment dat hij de Class aanroept.
Quote:
Wanneer je een query hebt uitgevoerd, komen de resultaten in een result-set te staan. Dat heeft dus niks met een string te maken.Ik laat een text uit de Database inladen in een String, en vervolgens haal ik deze string door een Class heen die de string opsplitst.
Hoe jij deze resultaten verder gaat fetchen, dat is een ander verhaal, maar dat wordt hier niet duidelijk.
Zorg er wel voor dat je bij meerdere resultaten, de boel wel in een loop gaat fetchen, anders krijg je alleen het eerste resultaat retour.
Zie php.net hoe je met resultsets aan de slag kunt. Ik krijg namelijk de indruk dat er een fout zit in de logica.
JunkieXP schreef op 24.06.2007 15:38:
Ik ken het, maar dat is niet het probleem.
Wanneer ik de String namelijk niet door een Class heen haal en direct echo pakt hij de tekst wel helemaal, het lijkt er dus echt op dat de string nog niet helemaal volgeladen is op het moment dat hij de Class aanroept.
Wanneer ik de String namelijk niet door een Class heen haal en direct echo pakt hij de tekst wel helemaal, het lijkt er dus echt op dat de string nog niet helemaal volgeladen is op het moment dat hij de Class aanroept.
Klinkt mij meer alsof je Class zijn werk wat te goed doet... Laat eens zien? (inclusief aanroep graag, en zonder de methods die je in dit onderdeel niet gebruikt, bespaart uitzoekwerk en verhoogt aantal mensen dat je wilt helpen! ^^,)
Vandaar dat ik de problemen in de Class uitsloot.
Bij deze alsnog de Class:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
/**
* This Function creates the Content for 2 Columns
*
* Fully Created by JunkieXP
*/
public function TwoColumns($p_strContent){
/**
* Total Length of full Stripped String
*/
$iContentLength = strlen(strip_tags($p_strContent));
/**
* Amount of Chars per Column
*/
$iContentChars = $iContentLength / 2;
/**
* Start Char of Right Column
*/
$iContentStartRightColumn = floor($iContentChars);
/**
* Look if Chars per Column is Equal and create Content for both Columns
*/
if($iContentChars % 2 == 0){
$strContentLeftColumn = substr($p_strContent, 0, $iContentChars+1);
$strContentRightColumn = substr($p_strContent, $iContentStartRightColumn+1, $iContentChars);
}else{
$strContentLeftColumn = substr($p_strContent, 0, $iContentChars);
$strContentRightColumn = substr($p_strContent, $iContentStartRightColumn, $iContentChars);
}
/**
* Write Content to Array $arrColumns
*/
$arrColumns['Left'] = $strContentLeftColumn;
$arrColumns['Right'] = $strContentRightColumn;
return $arrColumns;
}
?>
/**
* This Function creates the Content for 2 Columns
*
* Fully Created by JunkieXP
*/
public function TwoColumns($p_strContent){
/**
* Total Length of full Stripped String
*/
$iContentLength = strlen(strip_tags($p_strContent));
/**
* Amount of Chars per Column
*/
$iContentChars = $iContentLength / 2;
/**
* Start Char of Right Column
*/
$iContentStartRightColumn = floor($iContentChars);
/**
* Look if Chars per Column is Equal and create Content for both Columns
*/
if($iContentChars % 2 == 0){
$strContentLeftColumn = substr($p_strContent, 0, $iContentChars+1);
$strContentRightColumn = substr($p_strContent, $iContentStartRightColumn+1, $iContentChars);
}else{
$strContentLeftColumn = substr($p_strContent, 0, $iContentChars);
$strContentRightColumn = substr($p_strContent, $iContentStartRightColumn, $iContentChars);
}
/**
* Write Content to Array $arrColumns
*/
$arrColumns['Left'] = $strContentLeftColumn;
$arrColumns['Right'] = $strContentRightColumn;
return $arrColumns;
}
?>
Gewijzigd op 01/01/1970 01:00:00 door JunkieXP
Heb je het probleem nog doorzien Jelmer?