小编Sho*_*hoe的帖子

形式欺骗和解决方法

我正在尝试开发一个表单助手来防止形式欺骗.所以我想出了这个:

<form...>
<?=form::secure()?>
...
</form>
Run Code Online (Sandbox Code Playgroud)

使用键'_token'标记隐藏的表单,使用令牌,该令牌是用户会话的id的md5(随机并在1周后续订).然后在"动作"网址(从表单):

$token = (isset($_GET['_token'])) ? $_GET['_token'] : null;
$token = (is_null($token) and isset($_POST['_token'])) ? $_POST['_token'] : $token;
if (form::is_secure($token)) { // checks if the given token is equal to md5(user id)
    ...ok...
} else {
    ...error...
}
Run Code Online (Sandbox Code Playgroud)

这是否可以防止形式欺骗或我遗漏了什么?如果用户ID的确切时刻到期时,用户刚刚加载的页面,然后提交表单,它只是打印错误,他应该再次提交表单,但多数民众赞成接受(这是罕见的).

我认为这里唯一可能出错的是,如果潜在的攻击者能够获得用户会话ID,然后他可以将?_token = id附加到它的请求并将其提供给用户进行浏览,但此时,如果攻击者拥有用户会话ID,它无论如何都可以做任何他想做的事情.

我对吗?如果没有,我如何编辑我的代码以实现我的目标?

html php forms security

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

.c文件中的std :: string

我见过std::string.c文件中使用过.std是一个c ++命名空间,命名空间是在c ++中引入的.为什么会这样?它不应该抛出错误吗?

c c++ std

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

我的ip在存储到mysql时会被转换

我正在编写一个脚本来获取访问者的IP,通过爆炸删除它的点,在数据库中存储没有点的IP,然后得到它并回应它.但是,当我将它存储到数据库中时,我的IP变得非常混乱.

这是代码!

示例:我的ip是178.175.35.205,没有点:17817535205但是当通过MYSQL时,我甚至可以在PhpMyAdmin上看到它,转换为2147483647.

更新:结果一切都很好,但我正在使用INT除了BIGINT.修好了.我现在正在使用ip2long和long2ip.

php mysql database ip

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

foreach没有在PHP中循环

例如,如何在foreach不进行循环的情况下执行函数

foreach($result['orders'] as $order) {
Run Code Online (Sandbox Code Playgroud)

但我不想做一个我想要的东西

$result['orders'] == $order;
Run Code Online (Sandbox Code Playgroud)

或类似的东西而不是在循环中执行它因为$result['orders']无论如何只返回1个结果所以我没有看到在循环中执行它的重点.

谢谢

php foreach

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

获取this-> c1-> c2-> c3-> myFunc()的函数指针;

我在获取通过指针访问的函数的指针时遇到了麻烦:

double *d = &(this->c1->...->myFunc();
Run Code Online (Sandbox Code Playgroud)

不起作用,myFunc()被宣布为double.有办法做到这一点吗?

c++ function-pointers

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

NSDictionary结果类型在关系中获取对象

我想知道是否设置NSDictionaryreault类型,并添加一个关系会在结果中显示这些对象.

示例我有一个带有toCarparts Relationship的汽车对象.

carPart对象有名称,品牌等.我只想提出carParts.name.

那么我可以将实体设置为汽车然后搜索toCarParts并仅返回名称吗?

如果是这样,我该怎么做?

谢谢!

core-data nsdictionary ios

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

提取请求的Authorization标头的值的最简单方法是什么?

给定HttpRequest带有Authorization标头的,获取该标头的身份验证类型身份验证凭证的最简单方法是什么?

作为一个例子,给出的Authorization: Bearer YWxhZGRpbjpvcGVuc2VzYW1l,我怎么能同时获得BearerYWxhZGRpbjpvcGVuc2VzYW1lHttpRequest

是的,我知道Identity框架存在。我在这里不使用它。如果您真的想尝试改变主意,我们可以在聊天中讨论。

我尝试了什么

我正在按照以下方式编写函数:

var authorizationHeader = request.Headers["Authorization"].ToArray()[0];
var authorizationParts = authorizationHeader.Split(' ');
if (authorizationParts.Length == 2 && authorizationParts[0] == "Bearer")
{
    var tokenValue = authorizationParts[1];
    // ...
}
// ...
Run Code Online (Sandbox Code Playgroud)

但这是非常容易出错和冗长的。例如,在第一行中,我没有检查数组是否包含至少一个元素。

.net c# asp.net http asp.net-core

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

Foreach循环问题

我有一个数组如下

$posts = array(
    0 => array('user' => 'Charlie', 'message' => 'First message'),
    1 => array('user' => 'Charlie', 'message' => 'Second message'),
    2 => array('user' => 'Charlie', 'message' => 'Third message TEXT!'),
    3 => array('user' => 'Charlie', 'message' => 'Fourth message')
);
Run Code Online (Sandbox Code Playgroud)

如果它在消息里面,我想用"NEXT"替换"TEXT".我怎么能这样做?

我试过了

foreach ($posts as $r)
{
    $r['message'] = str_replace('TEXT', 'NEXT', $r['message']);
}
Run Code Online (Sandbox Code Playgroud)

但似乎没有奏效.

php foreach loops

0
推荐指数
1
解决办法
205
查看次数

如何计算php中星级评分系统的平均值

这是我的输入,我如何计算平均值?

5 star - 252
4 star - 124
3 star - 40
2 star - 29
1 star - 33

totally 478 
Run Code Online (Sandbox Code Playgroud)

谁能告诉我..

math

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

搜索字符串用数组的值替换单词

我们的想法是在字符串中搜索某些单词,并根据特定的数组将其更改为其他单词.让我告诉你我的意思.

$string = "hello buddy, I'm your friend or maybe a fellow";      
Run Code Online (Sandbox Code Playgroud)

让我们说friends是一个发誓的话.我想把这个词改成我想要的.所以我做了这个:

$swears = array(
"friend" => "fri**d",
"buddy"  => "bu**y",
"fellow" => "fe**ow"
);
Run Code Online (Sandbox Code Playgroud)

我想根据数组的键搜索字符串,并用它的值替换它.我搜索网络所有我得到的是根据数组键替换数组中的值.所以在尝试后我想出了这个:

$string = "hello buddy, I'm your friend or maybe a fellow";  

$swears = array(
"friend" => "fri**d",
"buddy"  => "bu**y",
"fellow" => "fe**ow"
);

$foreach  = $string; 
foreach($swears as $bad => $good){
$foreach       = str_replace($bad,$good,$foreach);
$filtered =  $foreach;
 }
echo $filtered;
Run Code Online (Sandbox Code Playgroud)

我知道它有效,但有一种简单的方法我觉得我复杂了整个事情.如果我很好,是否有可能导致问题,如果我有大字符串,或需要时间来处理它.

php arrays string

0
推荐指数
1
解决办法
4206
查看次数

标签 统计

php ×5

c++ ×2

foreach ×2

.net ×1

arrays ×1

asp.net ×1

asp.net-core ×1

c ×1

c# ×1

core-data ×1

database ×1

forms ×1

function-pointers ×1

html ×1

http ×1

ios ×1

ip ×1

loops ×1

math ×1

mysql ×1

nsdictionary ×1

security ×1

std ×1

string ×1