小编Jrg*_*gns的帖子

HTML表单只读SELECT标签/输入

根据HTML规范,selectHTML中的标记没有readonly属性,只有disabled属性.因此,如果您希望阻止用户更改下拉列表,则必须使用disabled.

唯一的问题是禁用的HTML表单输入不会包含在POST/GET数据中.

模拟标记readonly属性的最佳方法是什么select,仍然可以获取POST数据?

html javascript

547
推荐指数
18
解决办法
62万
查看次数

PHP PDO语句可以接受表名或列名作为参数吗?

为什么我不能将表名传递给准备好的PDO语句?

$stmt = $dbh->prepare('SELECT * FROM :table WHERE 1');
if ($stmt->execute(array(':table' => 'users'))) {
    var_dump($stmt->fetchAll());
}
Run Code Online (Sandbox Code Playgroud)

是否有另一种安全的方法将表名插入SQL查询?安全我的意思是我不想这样做

$sql = "SELECT * FROM $table WHERE 1"
Run Code Online (Sandbox Code Playgroud)

php pdo

232
推荐指数
5
解决办法
7万
查看次数

哪个最快?SELECT SQL_CALC_FOUND_ROWS FROM`table`或SELECT COUNT(*)

当您限制通常在分页中使用的SQL查询返回的行数时,有两种方法可以确定记录总数:

方法1

SQL_CALC_FOUND_ROWS在原始文件中包含该选项SELECT,然后通过运行获取总行数SELECT FOUND_ROWS():

SELECT SQL_CALC_FOUND_ROWS * FROM table WHERE id > 100 LIMIT 10;
SELECT FOUND_ROWS();  
Run Code Online (Sandbox Code Playgroud)

方法2

正常运行查询,然后通过运行获取总行数 SELECT COUNT(*)

SELECT * FROM table WHERE id > 100 LIMIT 10;
SELECT COUNT(*) FROM table WHERE id > 100;  
Run Code Online (Sandbox Code Playgroud)

哪种方法最好/最快?

mysql optimization

171
推荐指数
6
解决办法
12万
查看次数

为什么通过默默无闻的安全是一个坏主意?

我最近遇到了一个系统,其中所有的数据库连接都是由各种方式模糊的例程管理的,包括base 64编码,md5sums和各种其他技术.

这只是我,还是这种矫枉过正?有哪些替代方案?

security encryption security-by-obscurity

68
推荐指数
6
解决办法
3万
查看次数

无需访问服务器或phpMyADMIN即可轻松导出SQL表

我需要一种方法来轻松导出,然后将MySQL表中的数据从远程服务器导入我的家庭服务器.我没有直接访问服务器,也没有安装phpMyAdmin等实用程序.但是,我确实能够将PHP脚本放在服务器上.

我如何获得数据?

我问这个问题纯粹是为了记录下去的方式

php mysql export load-data-infile

25
推荐指数
4
解决办法
7万
查看次数

使用国际字符串的PHP和MySQL的最佳实践

经常出现这样的字符,如é被转化为é,即使对于MySQL数据库,表和字段排序规则设置为utf8_general_ci.页面的Content-Type中的编码也设置为UTF8.

我知道utf8_encode/decode,但我不太清楚在哪里以及如何使用它.

我已经阅读了" 绝对最低限度的每个软件开发人员,绝对必须知道关于Unicode和字符集(没有借口!) "的文章,但我需要一些MySQL/PHP特定的指针.

问题:如何确保用户输入的包含国际字符的数据不会被破坏?

php mysql internationalization

19
推荐指数
2
解决办法
1万
查看次数

浏览器检测

检测用户浏览器的最佳/最简单/最准确的方法是什么?

易于扩展和实施是一个优点.

使用的技术越少越好.

解决方案可以是服务器端,客户端或两者.但结果应该最终会在服务器上结束.

解决方案可以是框架无关的.

该解决方案仅用于报告目的.

browser browser-detection

10
推荐指数
2
解决办法
7013
查看次数

从MyISAM更改为InnoDB时,您是否需要了解任何陷阱/事项?

我的一个项目在MySQL中使用MyISAM引擎,但我正在考虑将其更改为InnoDB,因为我需要事务支持.

  • 在做这个之前我应该​​看什么或考虑什么?
  • 我可以只更改引擎,还是应该为它准备好数据?

mysql myisam innodb change-management

8
推荐指数
3
解决办法
1194
查看次数

将POST数组转换回POST字符串数据

在HTML表单中执行以下操作时:

<input name="one[]" value="foo" />
<input name="one[]" value="bar" />
<input name="two[key]" value="something" />
Run Code Online (Sandbox Code Playgroud)

并将表单提交到PHP页面,$ _POST数组将如下所示:

array(
    'one' => array(
        0 => 'foo',
        1 => 'bar'
    ),
    'two' => array(
        'key' => 'something'
    ),
),
Run Code Online (Sandbox Code Playgroud)

但是,如果查看标题数据,它将如下所示:

one[]=foo&one[]=bar&two[key]=something
Run Code Online (Sandbox Code Playgroud)

有没有人用脚本将PHP数组转换回POST数据字符串?urlencode无法正常工作,因为它无法访问数组...


php arrays post

8
推荐指数
1
解决办法
9155
查看次数

如何使用SQL计算树中值的总和

我需要在用户树所获得的每个级别上加分.级别1是用户1级以下用户的用户点数之和.2级是用户等级2级以下的1级点...

计算在非生产服务器上每月发生一次,不用担心性能问题.

SQL会是什么样子的呢?

如果你感到困惑,别担心,我也好!

用户表:

ID    ParentID    Points
1     0           230
2     1           150
3     0           80
4     1           110
5     4           54
6     4           342

Tree:
0
|---\
1    3
| \
2  4---
    \  \
     5  6
Run Code Online (Sandbox Code Playgroud)

输出应该是:

ID    Points    Level1     Level2
1     230       150+110    150+110+54+342
2     150
3     80
4     110       54+342
5     54
6     342
Run Code Online (Sandbox Code Playgroud)

SQL Server语法和函数最好......

sql tree

7
推荐指数
1
解决办法
7249
查看次数