mysql 分类计数器_PHP MySQL映像计数器

我是PHP新手,一直在研究计数器.计数器很好用,但是现在我想将数字转换成图像.

我创建了12张图片0-9,一个空格和一个逗号图片.

我在上下搜索,以获取将数字格式转换为图像所需的提示,但没有成功.到目前为止,我所发现的就是如何仅使用文件PHP / MySQL来建立基本的计数器,以及如何使用PHP / MySQL来显示加密的图像.

所以问题是:

如何告诉给定的代码以显示图像代替每个数字?

当前PHP结果的示例:命中:2,435

我希望我的PHP获得总点击数(示例),然后将2435替换为以下代码:

2.pngcomma.png4.png3.png5.png

注意:我在此处显示的代码中使用了很多注释.这样,任何新的编码人员都可以更轻松地理解所显示的脚本.我将在本文的末尾添加我的最终/完成代码,以便大家在找到解决方案后都能看到最终产品.

此代码完全是虚构的,可作为文本点击计数器

// Begin open SQL connection to database

$concount = mysqli_connect("site","username","password","database");

// End connection to database

// Begin update number of hits

mysqli_query($concount,"UPDATE counter SET hits = hits + 1");

// End update number of hits

// Begin get number of hits

$hits = ("SELECT SUM(hits) FROM counter");

// End get number of hits

// Begin show number of hits

$result = mysqli_query($concount,$hits);

while($row = mysqli_fetch_array($result)) {

echo "Hits: " . number_format((float)$row['0']) . " ";

}

// End show number of hits

// Begin close SQL connection

mysqli_close($con);

// End close SQL connection

编辑:下面是我的代码的最终结果.

请注意,此脚本中的数组在图像数组的开头和结尾都放置了’. (请参见以下示例)

Array ( [0] => ' [1] => 2 [2] => 4 [3] => 3 [4] => 5 [5] => ' )

因此,除非我想在命中计数器的以太端上出现破碎的图像,否则必须使用它们.我将已经计划在两端使用的透明图像重命名为’.png(请参见以下示例)

'.png2.png4.png3.png5.png'.png

最终密码

此代码是完全虚构的,用作图像点击计数器

// Begin open SQL connection to database

$concount = mysqli_connect("site","username","password","database");

// End connection to database

// Begin update number of hits

mysqli_query($concount,"UPDATE counter SET hits = hits + 1");

// End update number of hits

// Begin get number of hits

$hits = ("SELECT SUM(hits) FROM counter");

// End get number of hits

// Begin assign $hits an id

$result = mysqli_query($concount,$hits);

while($row = mysqli_fetch_array($result)) {

$totalhits=("'" . $row[0] . "'");

}

// End assign $hits an id

// Begin get id for number of hits, split the string into array, and assign id to numbers

$arr = str_split($totalhits);

$numbers = $arr;

foreach ($numbers as $value) {

// End get id for number of hits, split the string into array, and assign id to numbers

// Begin show number of hits as images

echo "%22.%24value.%22.png%5C%22";

}

// End show number of hits as images

// Begin close SQL connection

mysqli_close($con);

// End close SQL connection

最后说明:

我还没有尝试为更大的数字添加逗号或删除数组上的撇号.如果我愿意,我会回来编辑它.

解决方法:

您需要将命中计数器分成每个值都包含一位数字的数组,然后使用for循环追加图像.

$array = str_split($your_hit_variable_from_mysql);

if(!empty($array)){

foreach($array as $single){

echo ''.%24single.'.jpg;

}

}else{

echo '0.jpg;

}

?>

确保您以整数格式存储数字,而不是以52,200之类的字符串存储逗号.

欲了解更多信息,请检查Here.

编辑:当图像的计数器为0时,添加了异常处理.

标签:image,mysql,php,hitcounter

来源: https://codeday.me/bug/20191028/1951824.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值