2012-08-07 39 views
0

我一直试图在正在为我的最后一年项目创建的网站上构建活动页面。我希望主页事件页面显示不太详细的标题事件列表。 事件标题应该作为链接打开一个页面,显示用户决定点击或选择的事件的更详细描述。 我设法创建每个事件标题的链接,但似乎无法将其正确链接到显示所选事件的详细说明的页面。显示更多详细信息的链接

我event.php页面有代码:

<?php 
include'session.php'; 
include"database.php"; 


//Retrieves data from MySQL 
$data = mysql_query("SELECT * FROM employees") or die(mysql_error()); 
//Puts it into an array 
while($info = mysql_fetch_array($data)) 
{ 

//Outputs the image and other data 
//Echo "<img src=http://localhost/trial_Admin/events/" .$info['photo'] ."> <br>"; 
Echo "<b>Name:</b> <a href='more_details.php/?name='$name''/ >".$info['name']. "</a><br>"; 
Echo "<b>Email:</b> ".$info['email'] . " <br>"; 
Echo "<b>Phone:</b> ".$info['phone'] . " <hr>"; 
} 
?> 

而more_details.php

<?php 
include'session.php'; 
include"database.php"; 


$name=$_GET['name']; 
    //Retrieves data from MySQL 
$data = mysql_query("SELECT * FROM employees WHERE name='$name'") or die(mysql_error()); 

//Puts it into an array 
while($info = mysql_fetch_array($data)) 
{ 

//Outputs the image and other data 
Echo "<img src=http://localhost/trial_Admin/events/" .$info['photo'] ."> <br>"; 
Echo "<b>Name:</b> <a href=''/ >".$info['name']. "</a><br>"; 
Echo "<b>Email:</b> ".$info['email'] . " <br>"; 
Echo "<b>Phone:</b> ".$info['phone'] . " <hr>"; 
    } 


?> 
+0

我真的需要你的帮助来解决这个问题。我的想法是创建一个类似于Eventbrite网站的活动页面。 – 2012-08-07 09:45:43

回答

1

你应该用事件的ID在你的数据库,因为它是唯一标识符。改变你的events.php页面。

+0

如果你坚持使用名称,你需要使用url_decode()来替换+空格等。另外查找SQL注入 – Waygood 2012-08-07 09:52:13

1

这里的问题是,因为这条线

Echo "<b>Name:</b> <a href='more_details.php/?name='$name''/ >".$info['name']. "</a><br>"; 

改变它

Echo "<b>Name:</b> <a href='more_details.php/?name=".urlencode($info['name'])."'/ >".$info['name']. "</a><br>"; 

但使用的ID会好得多即具有类似下面的

Echo "<b>Name:</b> <a href='more_details.php/?id=$info['id']'/ >".$info['name']. "</a><br>"; 
一个URL中使用的
+0

非常感谢你,我的代码现在工作正常。 – 2012-08-07 11:28:20