私のメインページには、別のページからJqueryのload()を使用してコンテンツをロードするコンテンツボックスがあります。すべてがうまくいっていて、素早く素敵です。 次に、小さなフィルタリング機能を追加することです。変数はGET変数としてメインページ(snappage.php)に送られます。しかし、SQLクエリのPHPは別のページにあります(つまり、すべてsnaps.php)。私はあなたに私のコードをお見せしましょう:Jquery load()は別のページから変数を取得します
snappage.php
<?php
require "database/database.php";
session_start();
if($_GET['country']) {
$country = $_GET['country'];
}
?>
<section class="main-snap-page-wrapper">
<nav class="all-snaps-countries">
<h4>Filter by country</h4>
<ul>
<?php
//GET COUNTRY FLAGS
$flagsql = mysql_query("SELECT * FROM countries");
while($getflag = mysql_fetch_array($flagsql)) {
$countryname = $getflag['countryname'];
$flag = $getflag['countryflag']; ?>
<li>
<a href="snappage.php?country=<?php echo $countryname?>">
<img src="<?php echo $flag?>" alt="">
<h5><?php echo $countryname?></h5>
</a>
</li>
<?php } ?>
</ul>
</nav>
<div class="all-snaps-page">
<nav class="main-page-tabs-wrapper">
<ul class="main-page-tabs" id="<?php echo $country?>">
<li class="active-tab"><a href="all-snaps">All</a></li>
<li><a href="female-snaps">Female</a></li>
<li><a href="male-snaps">Male</a></li>
</ul>
<div class="main-snaps-content"></div>
</nav>
</div>
</section>
<script type="text/javascript">
$('.main-snaps-content').load('all-snaps.php');
$('.main-page-tabs li').on('click', function() {
$('.main-page-tabs li').removeClass('active-tab');
$(this).addClass('active-tab');
var page = $(this).find('a').attr('href');
$('.main-snaps-content').load(page + '.php');
return false;
});
</script>
次は私がすなわち、すべての-snaps.phpから.main-スナップ・コンテンツにロードするページです:
すべてのスナップ.PHP
<?php
require "database/database.php";
session_start();
if($_GET['country']) {
$country = $_GET['country'];
$newsql = mysql_query("SELECT * FROM users JOIN fashionsnaps ON users.id = fashionsnaps.userid WHERE country = '$country' ORDER BY snapid ASC");
}
else {
$newsql = mysql_query("SELECT * FROM fashionsnaps ORDER BY snapid ASC");
}
?>
<ul class="snaps-display">
<?php
//GET SNAPS BY ID
while ($getnew = mysql_fetch_array($newsql)) {
$newsnappics = $getnew['snappic'];
$newsnapid = $getnew['snapid'];
?>
<li>
<a href="snap.php?id=<?php echo $newsnapid?>">
<img src="<?php echo $newsnappics?>" alt="">
</a>
</li>
<?php } ?>
</ul>
は、だから私はここに達成したいものをsnappage.phpにある.main-スナップコンテンツにすべての-snaps.phpからのフィルタリングコンテンツをロードすることです。
この$ country変数はどこに送信しますか?どのページで取得すればよいですか?
'mysql_ *が'今 'PHP7のよう推奨されませんのでご注意ください'セキュリティの問題のために。 'mysqli_ *'や 'PDO'拡張に切り替えることをお勧めします。 –
Pedroさん、ありがとうございます。私はこれを私のPCでテスト用にのみ使用しています。一度私がライブに行くとこれを念頭に置いておきます。 – davidb