小编Joh*_*ohn的帖子

如何获得affected_rows MYSQLI准备语句,PHP

当我INSERT和SELECT时,我似乎遇到了遇到affected_rows的问题,它只是因某种原因返回-1?我使用的数据库类,我一直用于我的项目,使用MYSQLI准备语句,以避免sql注入.

有谁知道它为什么一直返回-1?根据我的阅读,它应该能够在INSERT和SELECT上返回受影响的行.

数据库类

$class database {
protected $_mysqli;
protected $_debug;

public function __construct($host, $username, $password, $database, $debug) {
    $this->_mysqli = new mysqli($host, $username, $password, $database);
    $this->_debug = (bool) $debug;
    if (mysqli_connect_errno()) {
        if ($this->_debug) {
            echo mysqli_connect_error();
            debug_print_backtrace();
        }
        return false;
    }
    return true;
}

public function q($query) {
    if ($query = $this->_mysqli->prepare($query)) {
        if (func_num_args() > 1) {
            $x = func_get_args();
            $args = array_merge(array(func_get_arg(1)),
                array_slice($x, 2));
            $args_ref = array();
            foreach($args as $k => &$arg) {
                $args_ref[$k] = &$arg; 
            } …
Run Code Online (Sandbox Code Playgroud)

php mysqli prepared-statement rows-affected

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

Facebook登录不符合CSRF状态令牌的问题

我做了一些搜索,但没有发现任何与我的问题有关的内容.

我目前正在尝试在我的网站上实现Facebook登录,并且由于htaccess mod重写URL,我遇到登录验证问题?

代码工作得很好,如果我使用它没有mod重写规则,我会登录,如:

domain.com/view_webhosting.php?webhosting=name
Run Code Online (Sandbox Code Playgroud)

但是一旦我转到mod重写URL

domain.com/webhosting-name/
Run Code Online (Sandbox Code Playgroud)

然后它只是不起作用并抛出错误"CSRF状态令牌与提供的不匹配".

在htaccess文件中它看起来像这样

RewriteRule ^webhosting-([a-z_0-9-]+)/$ /view_webhosting.php?webhosting=$1 [L]
Run Code Online (Sandbox Code Playgroud)

任何人都有这样的问题的解决方案?我正在使用Facebook SDK v3.1.1

.htaccess facebook facebook-php-sdk

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

在不知道div宽度的情况下,div的水平居中可能吗?

我目前正在使用css/jquery构建一个弹出框脚本,我似乎无法在所有情况下将div置于屏幕中心.它可以在不知道div宽度的情况下居中吗?

我没有在这里发布所有代码,而是在http://goo.gl/N45cp上提供了一个实例

任何形式的帮助非常感谢!

最好的问候约翰

javascript css jquery

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

如何记录查询执行时间?

我正在尝试将慢查询日志记录实现到我的数据库类中,但我得到了奇怪的结果.它目前"主要"记录所有查询,并且它表示大多数查询运行大约需要0.8秒,我不明白,因为这是在我的开发人员计算机上,并没有负载过重.

地狱,我甚至尝试在phpMyAdmin中运行查询,它们在那里非常快.

我把它放在了错误的地方吗?还是我错过了什么?

class database {
    protected $_mysqli;
    protected $_debug;

    public function __construct($host, $username, $password, $database, $debug) {
        $this->_mysqli = new mysqli($host, $username, $password, $database);
        $this->_debug = (bool) $debug;
        if (mysqli_connect_errno()) {
            if ($this->_debug) {
                echo mysqli_connect_error();
                debug_print_backtrace();
            }
            return false;
        }
        return true;
    }

    public function q($query) {
        $incomingq = $query;
        if ($query = $this->_mysqli->prepare($query)) {
            if (func_num_args() > 1) {
                $x = func_get_args();
                $args = array_merge(array(func_get_arg(1)),
                    array_slice($x, 2));
                $args_ref = array();
                foreach($args as $k => &$arg) …
Run Code Online (Sandbox Code Playgroud)

php mysql

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

使用javascript无法获取输入字段值?

我似乎有使用javascript获取字段值的问题,我认为facebook popup jquery脚本阻止它但我不知道为什么...

如果有人可以帮助我,我会很感激,因为现在我要把我的头发撕掉.

<input type="text" id="photo_album_name" style="width: 280px; height: 20px; color: #525252;" />
<textarea id="photo_album_desc" style="width: 280px; height: 100px; color: #525252;"></textarea>

function submit_photoalbum()
{
    var albumname = document.getElementById('photo_album_name').value; 
    var albumdesc = document.getElementById('photo_album_desc').value;

    alert("Album name: "+ albumname + ", Album Desc: " + albumdesc);
}  
Run Code Online (Sandbox Code Playgroud)

您可以在http://goo.gl/op6r4上查看实时示例

html javascript jquery

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