PHP-MySql 中的计数器错误
我为我的网页制作了一个 php-mysql 计数器。
当我将其他站点的图像添加到我的站点时,计数器无法正常工作。
为了检查文件是否存在于另一个站点上,我使用此代码
<?php
function load_image($external_path,$internal_path)
{
if(@fopen($external_path,"r")==true)
{
return $external_path;
}
else
{
return $internal_path;
}
}
?>
如果找不到,则它会从我的站点中显示。
但这会带来一个问题。
如果我有 4 个外部图像,它会增加为 +4。
增量代码如下---
<?php
class visitor
{
function increment()
{
$sql="select count_no from tbl_count";
$result=DBAccess::execute_my_query($sql);
if ($result!="")
{
$rows=mysql_fetch_assoc($result);
$visit_no=$rows['count_no'];
}
else
{
$first_visit_no=1;
$sql1="insert into tbl_count (count_no) values ($first_visit_no)";
$ins=DBAccess::execute_my_query($sql1);
}
$update_visit_no= $visit_no+1;
$sql2="update tbl_count set count_no=$update_visit_no";
$ins2=DBAccess::execute_my_query($sql2);
return $update_visit_no;
}
}
?>
I made a php-mysql counter for my webpage.
When I add an image from another site to my site, the counter is not working correctly.
For checking the file exist or not on another site I use this code
<?php
function load_image($external_path,$internal_path)
{
if(@fopen($external_path,"r")==true)
{
return $external_path;
}
else
{
return $internal_path;
}
}
?>
If it not found, then it shows from my site.
But it create a problem in counter.
If I have 4 external image it increase as +4.
The increment code is as follows---
<?php
class visitor
{
function increment()
{
$sql="select count_no from tbl_count";
$result=DBAccess::execute_my_query($sql);
if ($result!="")
{
$rows=mysql_fetch_assoc($result);
$visit_no=$rows['count_no'];
}
else
{
$first_visit_no=1;
$sql1="insert into tbl_count (count_no) values ($first_visit_no)";
$ins=DBAccess::execute_my_query($sql1);
}
$update_visit_no= $visit_no+1;
$sql2="update tbl_count set count_no=$update_visit_no";
$ins2=DBAccess::execute_my_query($sql2);
return $update_visit_no;
}
}
?>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
当您使用 fopen 时,浏览器正在向服务器发出 http 请求。所以每次使用该功能就像再次打开页面一样。
尝试 file_get_contents()
它应该避免您遇到的计数问题。
When you are using fopen the browser is doing a http request to the server. So each time you use the function its like opening the page again.
Try file_get_contents()
It should avoid the count issue you are having.