小编Som*_*son的帖子

如何修复'我们计算的请求签名与签名'错误不匹配?

我已经在网上搜索了两天以上,可能已经浏览了大多数在线记录的场景和解决方法,但到目前为止我没有任何作用.

我在运行PHP 5.3的AWS SDK for PHP V2.8.7上.我正在尝试使用以下代码连接到我的S3存储桶:

// Create a `Aws` object using a configuration file

        $aws = Aws::factory('config.php');

        // Get the client from the service locator by namespace
        $s3Client = $aws->get('s3');

        $bucket = "xxx";
        $keyname = "xxx";

        try {
            $result = $s3Client->putObject(array(
                'Bucket'        =>      $bucket,
                'Key'           =>      $keyname,
                'Body'          =>      'Hello World!'
            ));
            $file_error = false;
        } catch (Exception $e) {
            $file_error = true;
            echo $e->getMessage();
            die();
        }
        //  
Run Code Online (Sandbox Code Playgroud)

我的config.php文件如下:

<?php

return array(
    // Bootstrap the configuration file with …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services aws-php-sdk

53
推荐指数
18
解决办法
8万
查看次数

根据加载的信息计算出值

我需要能够为用户所拥有的每个赌注显示"动态回报",但由于某些原因,它们都不起作用.我以前曾问过这个问题,但没有运气.

我希望这里的额外细节足以帮助我最终得到答案.

我已经硬编码了其中一个脚本,所以使用odds-1, stake-1等,这有效,但其他人没有.

如果有人可以提供帮助,我们将不胜感激.

JavaScript的

        var count_div = 0;
        $("div").each(function () {
            count_div++;
            console.log("Counter: " + count_div);
        });

        for (var i = 0; i < count_div; ++i) {
            $("#stake-" + i).on('keyup', function () {
                var newVal = (parseFloat($("#stake-" + i).val(), 10) * parseFloat($("#__odds-" + i).val(), 10)) + parseFloat($("#stake-" + i).val(), 10) || 0;
                $("#showdynamicreturn-" + i).val(parseFloat(newVal).toFixed(2));
            });
        }
Run Code Online (Sandbox Code Playgroud)

PHP

function readbets( $link, $id, $currentpage, $loggedIn = true ) {
    $idCount = 0;
    $queryBase = "SELECT * FROM …
Run Code Online (Sandbox Code Playgroud)

html javascript php jquery

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

使 $.ajax 失败

这是一个相当奇怪的问题,但是,我想让 $.ajax 无法检查我的失败触发器,我有这个 jQuery 代码:

$(document).ready(function () {
    $("#trigger").on("click", function () {
        $.ajax({
            url: "text.php",
            success: function (data) {
                $(".log").html(data.slice(0, 1000));
                //alert("Load has been performed");
            },
            fail: function () {
                $(".msg").html("Something went wrong...");
            }
        });
    });
});
Run Code Online (Sandbox Code Playgroud)

我正在调用这个 PHP 代码:

<?php
function foo()
{
    return "bar";
}

print foo();

return false;
?>
Run Code Online (Sandbox Code Playgroud)

并希望确保fail: ...正在工作。我该怎么做呢?

编辑

我已将 text.php 修改为:

<?php
throw new LogicException("Failed");
Run Code Online (Sandbox Code Playgroud)

还:

<?php
header("HTTP://this.does.not.exist");
Run Code Online (Sandbox Code Playgroud)

但这仍然显示在该$(".log")区域,即使它失败了。

注意到我错误地使用了失败函数,现在将我的 jQuery 修改为:

$(document).ready(function () {
    $("#trigger").on("click", function () { …
Run Code Online (Sandbox Code Playgroud)

php ajax jquery

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

在PHP中创建和使用魔术方法

我试图掌握PHP的魔术方法,为此我创建了一个如下所示的测试类:

<?php
class overload
{
    protected $lastCalledParam;

    public $param;

    public function __construct() 
    {
        return $this->switchConstruct(func_get_args());
    }

    protected function switchConstruct(array $args)
    {
        switch (count($args))
        {
            case 0:
                return print "0 params<br />";
            case 1:
                return call_user_func_array(array($this, 'constr1'), $args);
            case 2:
                return call_user_func_array(array($this, 'constr2'), $args);
        }
        die("Invalid number of args");  
    }

    protected function constr1($a) 
    {
        print "constr1 called<br />";
    }

    protected function constr2($a, $b) 
    {
        print "constr2 called<br />";
    }

    public function __get($name)
    {
        $this->lastCalledParam = $name;
        return $this->{$name};
    }

    public function …
Run Code Online (Sandbox Code Playgroud)

php magic-methods

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

PHP __DIR__ 文件和备份按一个目录

我正在使用 PHP 7 运行 laravel 服务器。我试图使用以下命令来请求文件:

require __DIR__.'/../bootstrap/autoload.php';
Run Code Online (Sandbox Code Playgroud)

我运行此脚本的文件位于名为 public 的文件夹中。因此__DIR__应该等于:

www.mydomain.com/myserver/public/index.php
Run Code Online (Sandbox Code Playgroud)

脚本应创建的路径应该是:

www.mydomain.com/myserver/bootstrap/autoload.php
Run Code Online (Sandbox Code Playgroud)

然而,它不是动态创建正确的路径,而是将“/../”视为文字目录,而不是告诉它返回一个目录。所以我要返回的路径是:

www.mydomain.com/myserver/public/../bootstrap/autoload.php
Run Code Online (Sandbox Code Playgroud)

有什么想法为什么会发生这种情况吗?提前谢谢了。

php

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

我无法访问我的类属性

我有这个C#类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Handler.FTPClient
{
    public class FTP
    {
        private static string _message = "This is a message";

        public static String message
        {
            get { return _message; }
            set { _message = value; }
        }

        public FTP()
        {
        }

        public static String GetMessage()
        {
            return message;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图用这个称呼它:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Handler.FTPClient;

namespace …
Run Code Online (Sandbox Code Playgroud)

c#

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

使用HTML脚本标记在源代码时进行编码

我注意到<script src="..."></script>标签不允许您在其中使用JavaScript,例如:

<script src="myFile.js">
    alert( "This is a test" );
</script>
Run Code Online (Sandbox Code Playgroud)

这不起作用,也不会在FireBug中引发错误,为什么会发生这种情况,为什么我们必须添加额外的<script>标签以允许在表单上使用JS?

我有一个文件,script/addScript.js从我的root中找到@ ,其中包含:

function addScript( $src )
{
    var script = document.createElement( 'script' );
    script.type = "text/javascript";
    script.src = $src;
    document.getElementsByTagName( 'head' )[0].appendChild( script );
}
Run Code Online (Sandbox Code Playgroud)

这是为了让我能够快速有效地向DOM添加脚本,所以我尝试这样做:

<script src="script/addScript.js">
    addScript( "script/obj.js" );
    addScript( "script/home/login.js" );
</script>
Run Code Online (Sandbox Code Playgroud)

但它不起作用,所以我必须这样做:

<script>
    addScript( "script/obj.js" );
    addScript( "script/home/login.js" );
</script>
Run Code Online (Sandbox Code Playgroud)

html javascript

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

PHP:如果语句在变量声明中

我知道在像C#这样的语言中你可以使用if like语句(我知道这些语句有一个名字但不记得它叫什么)有点像这样:

var variable = this ? true : false;

(我明白这是不正确的,但是我已经做了一段时间了,如果错了请纠正).

我的问题是:你可以在PHP中做同样的事情,如果是这样的话怎么样?

(该网站已在WordPress中构建,但这是关于wp_*功能的通用PHP变量赋值的问题)

我希望能够声明一个变量:

$current_user = if (is_user_logged_in()) {
    wp_get_current_user();
} else {
    null;
}
Run Code Online (Sandbox Code Playgroud)

我想知道如何让这个单线变量去除?

php variables variable-assignment

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

我如何将第二个参数作为可选参数传递给 LUMEN 中的路由?

我的routes/web.php 文件

$router->group(['prefix' => 'api/v1'], function () use ($router) {    
    $router->get('post/{string}/comment/{length?}', 'PostController@index');
});
Run Code Online (Sandbox Code Playgroud)

我的控制器文件

public function index($string, $length = 0){
    // boy
}
Run Code Online (Sandbox Code Playgroud)

要执行的 URL

localhost/project/public/api/v1/post/abcd/comment/1
    OR
localhost/project/public/api/v1/post/abcd/comment
Run Code Online (Sandbox Code Playgroud)

我想要控制器中的字符串和长度值,字符串不是可选参数,但长度是可选的,如果我不提供它,它应该为 0

php laravel lumen

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