我正在创建一个小型家族树网站。我在mysql数据库中有每个人的信息,我想在一个人点击任何人时弹出的模态中显示。
不,我已经为模态部分启动并运行了所有HTML和CSS。我也知道一些基本的PHP来编写一个相当简单的脚本来从我做的数据库中提取信息(粘贴在下面)。但是我现在有2个问题:
树上的每个人都写成:
<a href="#" class="md-trigger" data-modal="modal-3">Tywin Lannister</a>
我的sql语句如下:
select * from family_table where name = Tywin Lannister;
我想知道如何用硬编码替换名称,只为每个只显示其信息的名称制作1个PHP脚本。
上面已经给出了我的名字html。我的模态HTML如下:
<div class="md-modal md-effect-1" id="modal-3">
<div class="md-content">
<h3>Person Information</h3>
<div>
<ul>
<li><strong>Name:</strong>Tywin Lannister.</li>
<li><strong>DOB:</strong> 28th July 1994.</li>
<li><strong>BirthPlace:</strong> Chicago.</li>
<li><strong>Occupation:</strong> Student.</li>
<li><strong>About:</strong> The Persons information will go here. Probably dynamic and deruved from a database.</li>
<li><strong>Contact:</strong> Contact information with FB, twitter and email address.</li>
</ul>
<button class="md-close">Close me!</button>
</div>
</div>
</div>
我的php脚本如下:
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT * from family_table';
mysql_select_db('family');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
echo "Name :{$row['Name']} <br> ".
"Nickname : {$row['Nickname']} <br> ".
"Age : {$row['Age']} <br> ".
"DOB : {$row['DOB']} <br> ".
"About : {$row['About']} <br> ".
"Contact : {$row['Contact Information']} <br> ".
"--------------------------------<br>";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>
答案 0 :(得分:1)
您有两种选择: 1.加载页面时,你需要加载人们的所有模态窗口,然后根据你的决定给他们一个。 这是简单的方法。 那是更难但更好的方法, 您可以使用ajax加载人员信息。 您可以通过创建一个接收人员ID或其他内容而不是回显其信息的php文件来实现这一点。 这是一个例子:
.ajax({
url : "URL to post the data to",
type: "POST",
data : person_id,
success: function(data)
{
//$('#id of a div inside the modal').html(data);
}
});