2013-04-16 4 views
0

J'ai créé une fonction de recherche pour les lignes de bus. J'ai créé une page d'index:Base de données pour les lignes de bus

<DOCTYPE! html> 
<head> 
<title>Search</title> 
<body> 
Enter info below: 
<br /> 
<form action='routes.php' action='get'> 

Start Destination: 
<select name="start"> 
<option value="StopA">Stop A</option> 
</select> 
<br /> 
End Destination: 
<select name="stop"> 
<option value="StopZ">Stop Z</option> 
</select> 

Departing between (start): 
<select name="start_time"> 
<option value="13:40">13:40</option> 
<option value="13:45">13:45</option> 
<option value="13:50">13:50</option> 
<option value="13:55">13:55</option> 
</select> 
<br /> 
Departing between (end): 
<select name="end_time"> 
<option value="13:40">13:40</option> 
<option value="13:45">13:45</option> 
<option value="13:50">13:50</option> 
<option value="13:55">13:55</option> 
</select> 
<input type="submit" value="Submit"> 
</form> 

et une page « routes » qui se connecte à ma base de données

<?php 
mysql_connect('', '', ''); 
$start = $_GET['start']; 
$stop = $_GET['stop']; 
$start_time = $_GET['start_time']; 
$end_time = $_GET['end_time']; 


$query = mysql_query("SELECT * FROM searchengine.times where STOP_1 = '$start' and STOP_7 = '$stop' and time(time) between '$start_time' and '$end_time'") or die(mysql_error()); 

echo "<table border='1'>"; 
echo "<tr> <th>Departure Time</th> <th>Route No.</th> <th>Stop 1</th> <th>Stop 2</th>  <th>Stop 3</th> <th>Stop 4</th> <th>Stop 5</th> </tr>"; 

while($row = mysql_fetch_array($query)) 
{ 
echo "<tr><td>"; 
echo $row['time']; 
echo "</td><td>"; 
echo $row['route_no']; 
echo "</td><td>"; 
echo $row['STOP_1']; 
echo "</td><td>"; 
echo $row['STOP_2']; 
echo "</td><td>"; 
echo $row['STOP_3']; 
echo "</td><td>"; 
echo $row['STOP_4']; 
echo "</td><td>"; 
echo $row['STOP_5']; 
echo "</td></tr>"; 
echo $row['STOP_6']; 
echo "</td></tr>"; 
echo $row['STOP_7']; 
echo "</td></tr>"; 
} 

echo "</table>"; 

?> 

quand je recherche de mon arrêt de bus à partir de l'arrêt de bus fin je reçois aucun résultat.

ma base de données ressemble à ceci:

time(PM) STOP_1 STOP_2 STOP_3 STOP_4 STOP_5 STOP_6 STOP_7 route_no. 
13:00  
13:20 
13:40 
14:00 

Est-ce exact? Quelqu'un peut-il voir si le problème est avec mon code ou si quelqu'un a des suggestions sur la façon de l'améliorer, je serais très reconnaissant.

Cordialement, Key

+0

Attention: vous avez une sécurité injection sql problème. Vous utilisez l'entrée, qui est toujours dangereuse, et la décochez dans la chaîne sql. S'il vous plaît assurez-vous de comprendre l'injection SQL avant de mettre cela sur un serveur public. – Meier

Répondre

0

Je pense que le problème réside dans and time(time) changement à avec des accents graves comme temps est un mot-clé, il doit être utilisé comme time(`time`)

+0

salut, j'ai essayé mais toujours pas de chance. Est-ce que la façon dont la base de données est présentée vous convient? – key

Questions connexes