私は非常に厄介な問題を持っている....サーバー上のデータベースからの出力ではなく、PHPスクリプトの
にこのコードのための私の使用状況を取得します。私は毎回わずか5レコードを、AJAXを介して取得したい私は、さらに上をクリック-ボタン。そう遠くない、まだ - 私....
このスクリプトは、単に特定のユーザからの私の5つのレコードを取得する必要があります。
問題:
だから、SQLクエリは、データベース上の問題なく実行します。しかし、私はPHPスクリプトでそれをしたいときは、私は最初のクエリcounter()から取得し、2番目のクエリは私にPDOステートメントから空の配列を与えます。
CODE:
if (empty($_SESSION['counter']) || ($_SESSION['counter'] < 0)) {
$sql = 'SELECT count(record.record_id) AS counter FROM record
LEFT JOIN recordbook ON record.record_id = recordbook.record
WHERE user = ?';
$sth = $this->dbc->prepare($sql);
$sth->execute(array($u_id['user_id']));
$count = $sth->fetch();
$_SESSION['counter'] = $count['counter'];
var_dump($_SESSION);
}
$_SESSION['counter'] = $_SESSION['counter'] - 5;
$sql = 'SELECT record.record_id, status, place, record.record AS records, comment, recorddate
FROM record LEFT JOIN recordbook ON record.record_id = recordbook.record
WHERE user = ? ORDER BY record.record_id DESC LIMIT ?,5';
$sth = $this->dbc->prepare($sql);
$sth->execute(array($u_id['user_id'],
$_SESSION['counter']));
$output = $sth->fetchAll();
}
HOPEの誰かがこの問題を解決する方法を知っている...
テーブル構造
Field | Type | Null | Key | Default | Extra
record_id | int(10) unsigned | NO | PRI NULL | auto_increment
status | varchar(200) | YES | NULL |
place | varchar(200) | YES | NULL
record | longtext | YES NULL
comment | longtext | YES | NULL
recorddate | timestamp | YES | CURRENT_TIMESTAMP
attachment_id | int(10) unsigned | YES | MUL | NULL
どこからフェッチするのですか? –
なぜDESC LIMITをやっていますか?5レコードが5レコードをドロップしたい場合は5、ループはどこですか? – clearshot66
'$ output = $ sth-> fetchAll();'を 'while($ data = $ sth-> fetch()){var_dump($ data);}'に置き換え、あなたのデータがそこにあるかどうか確認してください。 – Dimi