2010-02-01 142 views
1

即时通讯只是将脚本集成到我自己的网站和这个脚本(是有一个聊天功能)内置表情符号,我的网站也有表情符号,但他们的网址存储在网站MySQL数据库,从数据库拉文件到脚本即时集成很容易,但该脚本使用2维数组为表情符号(如下所示),我不知道如何解析msyql查询输出从表情符号我的网站转换为脚本需要的数组格式。填充多维数组

我的表情符号表奠定了每本:

id - autogenerated id number 
code - code used to display smilie (eg :)) 
imgsrc - the image to replace above code with 

脚本用于其表情阵列以下:

// Smileys 
$smileys = array( 

':)' => 'smiley', 
':-)' => 'smiley', 
':(' => 'smiley-sad', 
':-(' => 'smiley-sad', 
':D' => 'smiley-lol', 
';-)' => 'smiley-wink', 
';)' => 'smiley-wink', 
':o' => 'smiley-surprise', 
':-o' => 'smiley-surprise', 
'8-)' => 'smiley-cool', 
'8)' => 'smiley-cool', 
':|' => 'smiley-neutral', 
':-|' => 'smiley-neutral', 
":'(" => 'smiley-cry', 
":'-(" => 'smiley-cry', 
":p" => 'smiley-razz', 
":-p" => 'smiley-razz', 
":s" => 'smiley-confuse', 
":-s" => 'smiley-confuse', 
":x" => 'smiley-mad', 
":-x" => 'smiley-mad', 

); 

左边是代码和右边是文件名(脚本追加延长并预先定位本身)

希望这不是出于可能性的领域。

欢呼声

+0

该数组只有一个维度...请发布这两个数组的示例(您的和脚本所期望的)。 – prodigitalson 2010-02-01 16:14:57

+0

哎呀也许只是1D,仍然困惑如何让MySQL做我想做的事情,虽然 – 2010-02-01 16:25:56

回答

3
$result = mysql_query("SELECT Code, Filename FROM TABLE"); 
$smileys = array(); 
while($temp = mysql_fetch_assoc($result)) 
{ 
    $smileys[$temp['Code']] = $temp['Filename']; 
} 

在“右侧”是阵列的关键,我们可以通过将变量作为键动态地分配它们。

+0

好,似乎崩溃我的网站相当好,似乎锁定等待页面加载..... 代码即时通讯使用: $ result = mysql_query(“SELECT scode,imgsrc FROM smilies”); $ smileys = array(); while($ temp = mysql_fetch_assoc) { $ smileys [$ temp ['scode']] => $ temp ['imgsrc']; } 表只有1500条记录,所以不应该花费时间来确定加载它 – 2010-02-01 16:27:05

+1

我错误地忘了让'mysql_fetch_assoc'成为函数。这可能会导致无限循环。奇怪的是,它并没有导致错误。 – 2010-02-01 16:53:18