我是php的初学者,我需要一些帮助。 我在学校有这个任务,我需要在一个医院的网站上有字母表,所有的咨询都需要在点击它们开头的字母时出现。
我只用字母“a”尝试过,但我不行。我确信这很容易,但我已经在线搜索了一段时间,却找不到任何东西。
我感谢任何帮助。
提前致谢。
P.S。我的母语显然不是英语。
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<p><a href="" name="searchCons">A </a>
<a href="">B </a><a href="">C </a><a href="D"></a>
<a href="">D </a><a href="">E </a><a href="">F </a>
<a href="">G </a><a href="">H </a><a href="">I </a>
<a href="">J </a><a href="">K </a><a href="">L </a>
<a href="">M </a><a href="">N </a><a href="">O </a>
<a href="">P </a><a href="">Q </a><a href="">R </a>
<a href="">S </a><a href="">T </a><a href="">U </a>
<a href="">V </a><a href="">W </a><a href="">X </a>
<a href="">Y </a><a href="">Z </a><a href="">Everything</a></p>
<?php
if(isset($_POST['toon']))
{
include('dbconnect.php');
if(!empty($_POST['searchCons']))
{
$type = $_POST['searchCons'];
$query = "SELECT * FROM consultaties WHERE Naam LIKE '%A%'";
$res = mysql_query($query,$cn) or die('Uitvoeren query mislukt');
$count = mysql_num_rows($query);
while($rij=mysql_fetch_array($res))
echo $rij['Naam']."<BR>";
}
mysql_close($cn);
}
?>
</BODY>
</HTML>
答案 0 :(得分:3)
写下你的链接:
<a href="?searchCons=A">A</a>
而不是使用POST,请使用GET:
$_GET['searchCons']
您现在可以将变量分配给GET数组并在查询中使用它:
$search = $_GET['searchCons'];
并在您的查询中:
WHERE Naam LIKE '%$search%'";
但是,这使您可以打开SQL注入。所以,你需要逃避这些数据。
即:
$search = mysql_real_escape_string($_GET['searchCons']);
旁注问题:$_POST['toon']
做了什么?如果我正确理解您的代码,您可以删除if
语句。
答案 1 :(得分:1)
POST适用于表单。由于您未在代码中使用任何表单,因此应使用GET。 GET也适用于表单,但有一种方法可以克服这种情况,因为GET在链接中发送数据。
所以你应该改变你的链接:
<a href="#"></a>
(将#
更改为filename.php?searchCons=A
)
因此您的代码应该与此类似:
<?php
include('dbconnect.php');
if(!empty($_GET['searchCons']))
{
$type = $_GET['searchCons'];
$query = "SELECT * FROM consultaties WHERE Naam LIKE '%A%'";
$res = mysql_query($query,$cn) or die('Uitvoeren query mislukt');
$count = mysql_num_rows($query);
while($rij=mysql_fetch_array($res))
echo $rij['Naam']."<BR>";
}
mysql_close($cn);
?>
<HTML>
<HEAD><TITLE></TITLE></HEAD>
<BODY>
<a href="?searchCons=A" >A </a>
<a href="?searchCons=B">B </a>
<a href="?searchCons=C">C </a>
</BODY>
</HTML>
答案 2 :(得分:0)