小编sil*_*npi的帖子

PHP代码生成安全的URL?

我们需要从书的标题中生成一个唯一的URL - 标题可以包含任何字符.我们如何搜索 - 替换所有"无效"字符,以便生成有效和整洁的查找URL?

例如:

"The Great Book of PHP"

www.mysite.com/book/12345/the-great-book-of-php

"The Greatest !@#$ Book of PHP"

www.mysite.com/book/12345/the-greatest-book-of-php

"Funny title     "

www.mysite.com/book/12345/funny-title
Run Code Online (Sandbox Code Playgroud)

php regex string sanitization url-rewriting

5
推荐指数
3
解决办法
7814
查看次数

导出整个表结构,但仅通过 phpMyAdmin 从某些表中导出数据

我可以访问 phpMyAdmin,但不能访问 MySQL 命令行。

我需要在其他地方重新创建表结构以及需要“预填充”的某些表。当然,我可以导出空表结构,然后将表一个一个导出,但是有没有更好的方法将一堆表数据一起导出?

mysql phpmyadmin

5
推荐指数
1
解决办法
6060
查看次数

提供网站API访问的框架?

我们有一个网站,我们希望提供对其他网站的基于Web的API访问.

它可能最终成为基于REST的API,但我还不确定.它需要可以从Drupal模块访问,但我们希望构建API可扩展,以便我们可以从其他环境访问站点的数据和功能,如joomla,wordpress,其他非PHP语言等.

我正在寻找一个强大/稳定的基于PHP的框架,允许我创建这样的API - 人们可以建议符合标准的东西吗?

php api rest frameworks

5
推荐指数
1
解决办法
1456
查看次数

限制访问受限用户的PHP脚本

我有一个PHP网站,有多个PHP脚本.我需要从另一个站点向用户提供有限访问权限的用户.我想限制这些ppl可以访问的页面.

我这样做的方式如下:

// $_SESSION['systemid'] is set with a value of say, '1'
$permissionArray = $objACCESS->getPermissions($_SESSION['systemid']);

// getPermissions returns an array like the following (for that systemid):
// 0 => {'systemid' => '1', 'permission_type' => 'createcontent' }
// 1 => {'systemid' => '1', 'permission_type' => 'invitecontacts' }

// the following contain a list of script names that should be 
// restricted if permission is not allowed
$createcontent = array('createcontent.php');
$managecontent = array('managecontent.php');
$invitecontacts = array('invitecontacts.php');

$page_name=basename($_SERVER["SCRIPT_FILENAME"]);

if(is_array($permissionarray))
{
    $haspermissions = false; …
Run Code Online (Sandbox Code Playgroud)

php permissions

5
推荐指数
1
解决办法
1675
查看次数

获取ReCAPTCHA公钥/私钥时使用全局域有效性有何损害?

只是好奇 - 使用从ReCAPTCHA获得的公钥/私钥是否存在任何风险,仅用于一个域的预期用途,但随后我们最终将其用于另一个域.

我打算为特定域获取它,但错误地将公钥/私钥作为"全局密钥":

This is a global key. It will work across all domains.
Run Code Online (Sandbox Code Playgroud)

使用"全局密钥"而不是特定域的"全局密钥"是"坏事"吗?

recaptcha

5
推荐指数
1
解决办法
1046
查看次数

MYSQL导入存储过程时出现错误1064

我正在导入一个刚刚从开发服务器导出到生产服务器的存储过程,并且在 phymyadmin 中遇到以下错误。

SQL query: Documentation

$$ CREATE DEFINER = `devuser`@`localhost` FUNCTION `get_refundable_amount` (
enrol_id INT
) RETURNS double( 10, 2 ) READS SQL DATA BEGIN DECLARE refundable_amount double( 10, 2 ) DEFAULT 0;

SELECT (
sum( P.amount ) - EI.amount
)
INTO refundable_amount
FROM site_payment_processed AS P
INNER JOIN site_user_enroled AS E ON ( P.enrol_id = E.id
AND P.payment_type = 'Refund' )
INNER JOIN site_user_enroled_invoice AS EI ON EI.enrol_id = E.id
WHERE E.id = enrol_id
GROUP BY E.id;

RETURN …
Run Code Online (Sandbox Code Playgroud)

mysql stored-procedures phpmyadmin mysql-error-1064

3
推荐指数
1
解决办法
3589
查看次数

Mcrypt在PHP中加密/解密的替代方案?

我正在为需要进行加密和解密的Drupal模块提供一些代码.我不认为我可以假设Mcrypt模块安装在Drupal系统上.我可以使用什么作为替代加密机制?

这不是财务方面的东西,所以我不需要复杂的密码学,但更好的是...

php encryption drupal mcrypt

3
推荐指数
1
解决办法
3093
查看次数

PHP生成的时区列表不完整

我已经尝试使用以下代码生成http://php.net/manual/en/timezones.php(UTC除外)中指定的完整时区.

$zones = timezone_identifiers_list();

print_r($zones);
Run Code Online (Sandbox Code Playgroud)

但是这个列表似乎跳过了大约50个地区,例如:太平洋/萨摩亚(与http://php.net/manual/en/timezones.php相比)

我们做错了什么?

phpinfo()显示:

PHP Version 5.3.4
Apache Version  Apache/2.2.3 (CentOS) 

$ uname -r
2.6.18-028stab070.14
Run Code Online (Sandbox Code Playgroud)

编辑#2

date
date/time support   enabled
"Olson" Timezone Database Version   0.system
Timezone Database   internal
Default timezone    UTC 
Run Code Online (Sandbox Code Playgroud)

php timezone region

3
推荐指数
1
解决办法
4044
查看次数

正则表达式:删除"双引号"中的所有文本(包括多行)

我很难在双引号中删除文本,特别是那些分布在多行中的文本:

$file=file_get_contents('test.html');

$replaced = preg_replace('/"(\n.)+?"/m','', $file);
Run Code Online (Sandbox Code Playgroud)

我想删除双引号内的所有文本(包括在内).其中的一些文本将分布在多行中.

我读到换行符可以\r\n\n也.

php regex

3
推荐指数
2
解决办法
8015
查看次数

在MySQL数据库中存储空字符串与NULL?

我有一个PHP/MySQL应用程序,在某些情况下将"空白"值存储为''(空字符串),在其他情况下存储为NULLs.

这种混合格式在比较时肯定会引起问题,所以我想知道哪一种是更好的存储机制?''还是NULL

string null database-design

3
推荐指数
1
解决办法
880
查看次数