小编Mic*_*uel的帖子

更改HTML下拉选项字体大小

我有这个简单的HTML下拉菜单:

<select>
    <option style="font-size:50px;">Test</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我找不到增加选项字体大小的方法.由于某种原因,忽略了font-size属性.这是一个错误还是什么?

谢谢

html css

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

将字符串的所有字符替换为星号,但PHP中的第一个和最后一个字符除外

除了PHP中的第一个和最后一个字符外,如何将字符串的所有字符替换为星号?

例如,test应该成为t**tprofanity成为p******y等等

php string function

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

是否可以将内联元素声明为块?

我将带有以下内容的样式表传递给W3C验证器并通过:

a {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)

所以想要确定,使用内联元素作为块1是否是有效的标记?我知道它会起作用,但它有效吗?

谢谢

html css css3

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

为什么CSS直接子选择器将样式应用于间接子节点

我有以下HTML代码:

<div id="test">
<span>
    test 
    <span>test</span>
</span>        
</div>  
Run Code Online (Sandbox Code Playgroud)

以下CSS代码:

#test > span {
color: red;
}
Run Code Online (Sandbox Code Playgroud)

是不是上面的代码应该只选择测试div的直接子跨度?因此,只有第一个"测试"单词应为红色,但不应选择子跨度内的第二个"测试"单词.或者我弄错了?

html css

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

PHP PDO for MYSQL中的NOT IN查询

我有一个$_POST['excludeids']使用以下值调用的post变量:

1,2,3,4,5,6,7,8,9
Run Code Online (Sandbox Code Playgroud)

我想将此传递给SQL查询,NOT IN因此我使用以下查询:

$STH = $DBH->prepare("SELECT * FROM books WHERE id NOT IN (:excludeids)");
$STH->bindValue(':excludeids', $_POST['excludeids']);
$STH->execute();
Run Code Online (Sandbox Code Playgroud)

绑定变量在这种情况下不起作用我不知道为什么.上面的查询有什么问题?

php mysql sql pdo

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

在PHP中检查COOKIE时未定义的索引

我在访客的PC上设置了一个cookie,每24小时显示一次通知.最近我开始在错误日志中收到以下错误:

PHP: undefined index notice in **
Run Code Online (Sandbox Code Playgroud)

我使用以下代码检查cookie是否存在值,如果没有显示通知:

if($_COOKIE['notice'] != 'yes')  
   echo 'notice';
}
Run Code Online (Sandbox Code Playgroud)

我可以使用以下内容来避免PHP通知:

if((isset($_COOKIE['notice']) || !isset($_COOKIE['notice'])) && $_COOKIE['notice'] != 'yes')
Run Code Online (Sandbox Code Playgroud)

有没有办法像我一样或以类似的方式一步完成检查?

谢谢

php cookies

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

MySQL"INSERT"和SQL注入

我有这个简单的mysql查询:

INSERT INTO table (col1, col2) VALUES ('1', '2')
Run Code Online (Sandbox Code Playgroud)

col1col2外键的另一个表,以便对任何价值col1col2必须存在于其他表或其他行不会被插入.

在这种情况下,是否还存在SQL注入的风险?如果我从PHP POST收到这些col值,在插入数据库之前是否还需要绑定它们,或者它们已经安全,因为cols是外键?

mysql sql security sql-injection

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

javascript函数是同步还是异步?

我有以下JS代码:

<script>
first();
second();
</script>
Run Code Online (Sandbox Code Playgroud)

我想确保second()在完成执行后运行first().这是预期的默认行为吗?

javascript

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

cron作业中的Google Drive API错误

我在cpanel中有一个cron作业连接到谷歌驱动器,定期备份网站文件和数据库到谷歌驱动器帐户.我简化了文件来发现问题:

<?php

set_time_limit(0);

require_once 'google-api-php-client/Google_Client.php';
require_once 'google-api-php-client/contrib/Google_DriveService.php';

$client = new Google_Client();
$client>setClientId('xxxx');
$client->setClientSecret('xxxx');
$service = new Google_DriveService($client);

$accessToken = '{ "access_token" : "xxx", "token_type" : "Bearer", "expires_in" : 3600, 
"refresh_token" : "1/xxx" }';
$client->setAccessToken($accessToken);

$files = $service->files->listFiles();

print($files);

 ?>
Run Code Online (Sandbox Code Playgroud)

我进行了身份验证并获得了刷新令牌和访问令牌,并将它们放入变量中$accessToken.该脚本在从浏览器运行时有效,但当我将其设置为cron作业时,我收到以下错误:

[13-Jul-2013 13:41:02 Europe/Moscow] PHP Fatal error:  Uncaught exception 
'Google_IOException' with message 'HTTP Error: (0) error setting certificate verify     
locations:
CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
' in /home/xxxxxx/backup/google-api-php-client/io/Google_CurlIO.php:128
Stack trace:
#0 /home/xxxxxx/backup/google-api-php-client/auth/Google_OAuth2.php(270):    
Google_CurlIO->makeRequest(Object(Google_HttpRequest))
#1 /home/xxxxxx/backup/google-api-php-client/auth/Google_OAuth2.php(248): 
Google_OAuth2->refreshTokenRequest(Array)
#2 /home/xxxxxx/backup/google-api-php-client/Google_Client.php(315): 
Google_OAuth2->refreshToken('1/xxxxxx...')
#3 …
Run Code Online (Sandbox Code Playgroud)

php ssl curl google-drive-api

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

Facebook即时玩家签名验证失败

我目前正在Facebook上开发即时游戏,需要验证玩家信息是否来自Facebook。Facebook通过哈希签名提供验证,如下所示:

https://developers.facebook.com/docs/games/instant-games/sdk/fbinstant6.2#signedplayerinfo

我遵循了概述的步骤,但是无法获得匹配的签名:

这是签名:

$_POST['psig'] = 'je3yV8uKmysDrjXv1xp_RY2rTMJLEREM7xj8SGt5HEk.eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImlzc3VlZF9hdCI6MTU1MjI1NTc2OCwicGxheWVyX2lkIjoiMjA1OTE4OTA2MDgyMzk4MyIsInJlcXVlc3RfcGF5bG9hZCI6InBkYXRhIn0';
Run Code Online (Sandbox Code Playgroud)

1)将签名分成两部分,以“。”分隔。字符。

$first_part = explode('.', $_POST['psig'])[0];
echo $first_part;

// Output:
je3yV8uKmysDrjXv1xp_RY2rTMJLEREM7xj8SGt5HEk

$second_part = explode('.', $_POST['psig'])[1];
echo $second_part;

// Output
eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImlzc3VlZF9hdCI6MTU1MjI1NTc2OCwicGxheWVyX2lkIjoiMjA1OTE4OTA2MDgyMzk4MyIsInJlcXVlc3RfcGF5bG9hZCI6InBkYXRhIn0
Run Code Online (Sandbox Code Playgroud)

2)使用base64url编码对第一部分(编码签名)进行解码。

echo base64_decode($first_part);

// Output:
???W??+?5??Qcj?0??DC;???G
Run Code Online (Sandbox Code Playgroud)

3)使用base64url编码对第二部分(响应有效负载)进行解码,该部分应该是具有以下字段的JSON对象的字符串表示形式:**算法-始终等于HMAC-SHA256 ** issue_at-何时的unix时间戳此响应已发布。** player_id-玩家的唯一标识符。** request_payload-调用FBInstant.player.getSignedPlayerInfoAsync时指定的requestPayload字符串。

$payload = base64_decode($second_part);
echo $payload;

// Output:
{"algorithm":"HMAC-SHA256","issued_at":1552255768,"player_id":"2059189060823983","request_payload":"pdata"}
Run Code Online (Sandbox Code Playgroud)

4)使用HMAC SHA-256和您的应用程序密码来散列整个响应有效负载字符串,并确认它等于编码后的签名。

$check = hash_hmac('sha256', $payload, 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', true);
echo $check;

// Output:
n4Q?K?`<???????tT?~x????L?
Run Code Online (Sandbox Code Playgroud)

我已经花了几个小时,无法弄清楚我在做什么错!

php encryption facebook facebook-instant-games

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