私は現在、ドキュメントの準備が整った状態で ajax を介してコンテンツをロードする基本的なサイトを持っています。問題は、このコードが「ライブ」ではなく、読み込まれたページ内に含まれるクエリにアクセスするために、php インクルードを再インクルードする必要があることです。
特定のイベントに関しては「on」メソッドを使用して、動的にロードされたコードが最初から機能するようにすることで、これを回避できることは知っていますが、ページがロードされたばかりのときにどのように対処しますか? ロードされた各ページに私のphpインクルードを再インクルードしなければならないのは、冗長でずさんなようです。
ここにいくつかのコードがあります:
<?php
session_start();
require_once('dbconnect.php');
require_once('functions.php');
?>
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="x.js"></script>
</head>
<body>
<div id="container">
<div id="content">
</div>
</div>
</body>
</html>
JS:
$(document).ready(function() {
$('#content').load('x.php', function() {
alert("loaded");
});
});
読み込まれたページ:
<?php
//LOAD ALL WORK
$query = mysql_query("SELECT * FROM work");
if (mysql_num_rows($query) > 0) {
while ($work = mysql_fetch_array($query)) {
?>
<div class="still_cell">
<img class="still_image" src="<?php
print $work['image_path'];
?>" />
<div class="still_info">
Info
</div>
</div>
<?php
}
}
?>
ロードされたファイルにネストされたデータベースに接続するコードを含めない限り、クエリが結果を生成しないというさまざまなphpエラーが発生します