phpBB

Development Wiki

Difference between revisions of "Tutorial.Parsing text"

From phpBB Development Wiki

m (Adding to the tutorials Category)
Line 46: Line 46:
 
</php>
 
</php>
 
{{tutorial-stub}}
 
{{tutorial-stub}}
 +
 +
[[Category:Tutorials]]

Revision as of 06:44, 7 January 2007

Parsing text with BBCodes, smilies etc.

Inserting text to the DB

$text utf8_normalize_nfc(request_var('text'''true)); // will be modified by generate_text_for_storage (always use utf8_normalize_nfc when you retrieve text)

$uid $bitfield $flags ''// will be modified by generate_text_for_storage

$allow_bbcode $allow_urls $allow_smilies true// false is default for generate_text_for_storage function

generate_text_for_storage($text$uid$bitfield$flags$allow_bbcode$allow_urls$allow_smilies);

$sql_ary = array(
    
'text'              => $text,
    
'bbcode_uid'        => $uid,
    
'bbcode_bitfield'   => $bitfield,
    
'bbcode_flags'      => $flags,
);

$sql 'INSERT INTO ' YOUR_TABLE ' ' $db->sql_build_array('INSERT'$sql_ary);
$db->sql_query($sql);

text should be a TEXT column, bbcode_uid and bbcode_bitfield should be VARCHARs and bbcode_flags should be an INT column.

Displaying text downloaded from DB

$sql 'SELECT text, bbcode_uid, bbcode_bitfield, bbcode_flags
    FROM ' 
YOUR_TABLE;
$db->sql_query($sql);

$text generate_text_for_display($row['text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_flags']);

echo 
$text;

Generating text for editing

$sql 'SELECT text, bbcode_uid
    FROM ' 
YOUR_TABLE;
$db->sql_query($sql);

decode_message($row['text'], $row['bbcode_uid']);

echo 
$row;