我正考虑在未来的所有webapp中使用PDO.目前(使用我迄今为止从SO中学到的东西),我在我的网站中处理数据库连接的是一个Singleton类,如下所示:
class DB {
private static $instance = NULL;
private static $dsn = "mysql:host=localhost;dbname=mydatabase;";
private static $db_user = 'root';
private static $db_pass = '0O0ooIl1';
private function __construct()
{
}
private function __clone()
{
}
public static function getInstance() {
if (!self::$instance)
{
self::$instance = new PDO(self::$dsn, self::$db_user, self::$db_pass);
self::$instance-> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
return self::$instance;
}
}
Run Code Online (Sandbox Code Playgroud)
和另一个具有内容特定功能的文件(functions.php)看起来完全像这样:
function get_recent_activities ()
{
try
{
$db = DB::getInstance();
// --prepare and execute query here, fetch the result--
return $my_list_of_recent_activities;
}
catch (PDOException …Run Code Online (Sandbox Code Playgroud) 目前,如果我没有提供类的扩展,它不允许扩展.我想允许所有扩展.有没有办法在不破坏核心的情况下做到这一点?
你究竟如何div使用JavaScript(特别是jQuery)进行自动刷新?
我知道这个setTimeout方法,但这真的是一个好习惯吗?有更好的方法吗?
function update() {
$.get("response.php", function(data) {
$("#some_div").html(data);
});
window.setTimeout("update();", 10000);
}
Run Code Online (Sandbox Code Playgroud) 有没有办法做到这一点?从服务器检索原始.php文件(除了进入服务器的FTP帐户)?这是为什么有加密php源代码的工具/脚本的原因?
如果这是真的,那么如何防范呢?(不使用php源代码加密)
编辑:提到的服务器有php运行,例如.apache-php-mysql,您的标准托管服务器配置.
是否有一个列表描述了您可以使用的所有data_type参数PDOStatement::bindParam()?如果没有,你通常使用什么,以及什么类型的领域?
根据PHP手册:data_type使用PDO :: PARAM_*常量的参数的显式数据类型.
我知道PDO::PARAM_INT和PDO::PARAM_STR.我听说过,PDO::PARAM_LOB但我不知道如何以及何时使用它.(约会?)
我正在尝试找到最好的方法(在可用性和性能方面)处理诸如获取标记有特定标记或类别或类似内容的记录之类的情况.
一个好方法(我想做的方式),是用标签/类别slug获取记录,所以URL看起来像:
http://stackoverflow.com/questions/tagged/language-agnostic
Run Code Online (Sandbox Code Playgroud)
通过slug获取记录,看起来比以下更好:
http://stackoverflow.com/questions/tag/789/language-agnostic
Run Code Online (Sandbox Code Playgroud)
通过ID获取并添加slug,因此它更适合搜索引擎.这个性能更好,因为通过整数ID获取数据会比字符串更快.(cmiiw)
现在,使用db模式:
posts post_to_tags tags
----- ------------ ----
id id id
title post_id name
content tag_id slug
... ...
Run Code Online (Sandbox Code Playgroud)
我做得对吗?是否存在我需要知道的陷阱或最佳实践以避免性能问题?(例如,标签不应超过10,000条记录,或标签slug不应超过n个字符,或其他)
提前致谢.
在像这样的CSS中:
...
#big-menu {
background: #fff url(../images/big-menu.jpg) no-repeat;
}
#some-menu {
background: #fff url(../images/some-menu.jpg) no-repeat;
}
#some-other-menu {
background: #fff url(../images/some-other-menu.jpg) no-repeat;
}
...
Run Code Online (Sandbox Code Playgroud)
是有延迟的加载方式#big-menu的背景图像,使之一切,包括所有的HTML的图像之后加载,和所有其他的CSS背景(some-menu和some-other-menu).
原因是,big-menu.jpg的大小非常重,我希望它最后加载.毕竟,它只是一个令人瞩目的焦点,还有其他背景图像比这更好用.(例如按钮中使用的那些)
将它放入CSS中的顺序或#big-menuHTML中出现的标记()是否与首先加载的内容有关?还是有更可靠的方法来控制它?javascript(jQuery首选)很好.
我目前负责建立一个轮询系统(使用PHP).
现在为了尽可能安全和客观,访问者只能投票一次非常重要.我正在考虑通过访问者的IP来验证民意调查(一个IP只能进行一次投票),并且可能会进行验证码测试以确保一旦他们因某些原因通过了IP验证就没有机器人可以进入.
所以它是唯一的IP验证和验证码.但这够了吗?单个用户是否有可能通过使用代理或其他我不知道的方式来更改他/她的IP,并使用唯一的IP多次投票?
有没有更好的方法来做到这一点?最好没有验证码.
提前致谢.
我想在加载页面时淡入文本,背景颜色也慢慢淡入.
<div id="alert-box">
<p>This is the alert box, this message will display 5 seconds after page is loaded, with the background-color fading in.</p>
</div>
Run Code Online (Sandbox Code Playgroud)
以下是我现在对jQuery的看法:
$(document.body).click(function () {
$("div:hidden:first").fadeIn("slow");
});
Run Code Online (Sandbox Code Playgroud)
它有点击功能.
我如何设置延迟以及背景颜色淡入?
编辑:我希望它淡入,然后慢慢地("非烦人地")闪烁div块2或3次,然后保持静止.用户不会错过警报.
我有一个表中的一堆行与列a,b,c.我希望能够选择所有说a = 1的行,然后用a = 2重新插入它们.基本上保留列a存在的所有行,并且新的行具有a = 2.建立这样的多INSERT查询的最佳查询是什么?这一切都发生在同一张桌子上.如果需要,我不介意使用临时的.
php ×5
javascript ×3
codeigniter ×2
css ×2
database ×2
html ×2
jquery ×2
pdo ×2
loading ×1
login ×1
mysql ×1
pdostatement ×1
performance ×1
security ×1
select ×1
session ×1
slug ×1
sql ×1
url ×1
validation ×1