我有一个脚本,可以在从数据库中相关类别的页面加载时从数据库加载示例图像。
<?php
$category = 'granite';
$samples = 'SELECT * FROM material WHERE material_type = :cat';
$res = $db->prepare($samples);
$res->execute(array(':cat' => $category));
$count = $res->rowCount();
if($count > 0)
while ($row = $res -> fetch()){
$postimggranite = $row[mat_image];
$postidgranite = $row[id];
?>
<?php
echo "<div class='sample'>";
echo "<h3 class='sample_h'>$row[name]</h3>";
echo "<a href='/images/granite-worktops/samples/$postimggranite'><img src='/images/granite-worktops/thumbs/$postimggranite' alt='$row[name]' width='100' height='100' class='aligncenter size-full' title='$row[name]'></a>";
echo "<br /><a class=\"button\" href=\" \" rel=\"nofollow\" onClick=\"user_notice(this,''); return false;\">More Details</a>";
echo "</div>";
}
?>
正如您在关闭 div 之前的最后一个回显中从上面的脚本中看到的那样,我有一个“更多详细信息”按钮,通过单击屏幕上出现的对话框,我需要显示来自同一数据库的其他信息。我正在计划的方法使用是
function user_dialog(a,b){
"undefined"!=typeof jQuery.ui?($("#dialog").attr("title","Detailed Information").html(a),
$("#dialog").dialog({
modal:true,
width:400,
buttons: {
Cancel: function() {
$(this).dialog("close");
},
Download: function(){
$(this).dialog("close");
window.location=b
}
}
}
))
:window.location=b}
function user_notice(a){
download_link=$(a).attr("href");
$.ajax({
type:"POST",
url:"/includes/json.php",
data:"action=reminder&thepath="+download_link,
dataType:"json",
error:function(){
window.location=download_link
},
success:function(a){
1==a.status&&user_dialog(a.html,download_link);
}
})
};
这里还有我的 json.php 文件的脚本
<?php
header('X-Robots-Tag: noindex, noarchive');
$a = session_id();
if(empty($a)) session_start();
if($_SERVER['HTTP_REFERER']){
$resp_dialog = array(
'status' => 1,
'html' => '<p>Here is you sample and rest of staff</p>'
);
echo json_encode($resp_dialog);
}else{
header('HTTP/1.1 403 Forbidden');
exit;
}
?>
很明显,这一切正常,并且该行<p>Here is you sample and rest of staff</p>
出现在对话框中,但我真正需要的是创建一个 json 对象,该对象从 DB 带来额外的信息,并且不知道json.php
文件内部的位置或创建某种额外的文件并放置在 href用urlid="something to get fromdb"
比$_GET['urlid']
在json.php
发送它做数据库。基本上不知道做什么和在哪里做。
请放轻松,因为我还在学习这一切,而且大部分内容对我来说还是很新的,所以如果我没有正确解释某些内容,请原谅我。