![]() |
|
|
|||||||
| PHP Här diskuteras allt som har med scriptspråket PHP att göra. |
![]() |
|
|
Trådverktyg | Visningsalternativ |
|
|
#1 |
|
Medlem
Registrerad: 2003-12-16
Inlägg: 80
Lösningar: 0 |
Sökfunktion i PHP och MySQL
Jag håller på med en sida som sparar hockeystatistik för användarna. Nu vill jag ha en sökfunktion där man kan söka på fler olika saker, som t.ex. användarnamn, förnamn, efternamn m.m. Resultatet skall sedan presenteras i en lista över användare där användarnamnet skall vara en länk. Detta har jag lyckats få till på så sätt som nedan:
Kod:
<?php
session_start(); // Alltid överst på sidan
// Kolla om inloggad = sessionen satt
if(!isset($_SESSION['sess_user'])){
header("Location: innehall.php");
}else{
$username=$_SESSION['sess_user'];
$userid=$_SESSION['sess_id'];
$userpos=$_SESSION['sess_poss'];
}
include("conn.php");
if (isset($_POST['submit'])){
echo "<table width=950>";
echo "<tr><td width=140 bgcolor='#eeeeee'><b>Användarnamn:</b></td>";
echo "<td width=140 bgcolor='#D4D7DA'><b>Förnamn:</b></td>";
echo "<td width=140 bgcolor='#eeeeee'><b>Efternamn:</b></td>";
echo "<td width=200 bgcolor='#D4D7DA'><b>E-post:</b></td>";
echo "<td width=50 bgcolor='#eeeeee'><b>Ålder:</b></td>";
echo "<td width=70 bgcolor='#D4D7DA'><b>Position:</b></td>";
echo "<td width=140 bgcolor='#eeeeee'><b>Lagnamn:</b></td>";
echo "<td width=25 bgcolor='#D4D7DA'><b>Nr:</b></td>";
echo "</table>";
$sql="SELECT * FROM members WHERE user='$user' OR fornamn='$fornamn' OR efternamn='$efternamn' OR email='$email' OR alder='$alder' OR position='$position' OR lagnamn='$lagnamn' OR nummer='$nummer'";
$res = mysql_query($sql);
while($rad=mysql_fetch_array($res)){
echo "<table width=950>";
echo "<tr><td width=140 bgcolor='#eeeeee'><a href=\"filnamn.php?userid=".$userid."\">".$rad['user']."</a></td>";
echo "<td width=140 bgcolor='#D4D7DA'>".$rad['fornamn']."</td>";
echo "<td width=140 bgcolor='#eeeeee'>".$rad['efternamn']."</td>";
echo "<td width=200 bgcolor='#D4D7DA'>".$rad['email']."</td>";
echo "<td width=50 bgcolor='#eeeeee'>".$rad['alder']."</td>";
echo "<td width=70 bgcolor='#D4D7DA'>".$rad['position']."</td>";
echo "<td width=140 bgcolor='#eeeeee'>".$rad['lagnamn']."</td>";
echo "<td width=25 bgcolor='#D4D7DA'>".$rad['nummer']."</td>";
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Sök</title>
</head>
<body bgcolor="#BBBBBB">
<form action="sok.php" method="post">
<table>
<br>
<tr><td bgcolor="#eeeeee">Användarnamn:</td><td bgcolor="#D4D7DA">Ålder:</td></tr>
<tr><td bgcolor="#eeeeee"><input type="text" name="user"></td><td bgcolor="#D4D7DA"><input type="text" name="alder"></td></tr>
<tr><td bgcolor="#D4D7DA">Förnamn:</td><td bgcolor="#eeeeee">Position:</td></tr>
<tr><td bgcolor="#D4D7DA"><input type="text" name="fornamn"></td><td bgcolor="#eeeeee"><select name="position">
<option value=""></option>
<option value="malvakt">Målvakt</option>
<option value="malvakt">Back</option>
<option value="center">Center</option>
<option value="forward">Forward</option>
</select></td></tr>
<tr><td bgcolor="#eeeeee">Efternamn:</td><td bgcolor="#D4D7DA">Lagnamn:</td></tr>
<tr><td bgcolor="#eeeeee"><input type="text" name="efternamn"></td><td bgcolor="#D4D7DA"><input type="text" name="lagnamn"></td></tr>
<tr><td bgcolor="#D4D7DA">E-post:</td><td bgcolor="#eeeeee">Nummer:</td></tr>
<tr><td bgcolor="#D4D7DA"><input type="text" name="email"></td><td bgcolor="#eeeeee"><input type="text" name="nummer"></td></tr>
<tr><td><input type="submit" name="submit" value="Sök"></td></tr>
</table>
</from>
</body>
</html>
Om det är till någon hjälp så ser tabellen med användare ut som följer: Kod:
CREATE TABLE `members` ( `id` int(11) NOT NULL auto_increment, `fornamn` varchar(30) NOT NULL default '', `efternamn` varchar(30) NOT NULL default '', `user` varchar(30) NOT NULL default '', `pass` varchar(30) NOT NULL default '', `email` varchar(50) NOT NULL default '', `alder` int(3) NOT NULL default '0', `position` varchar(10) NOT NULL default '', `lagnamn` varchar(30) NOT NULL default '', `nummer` char(3) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=21 ; Kod:
CREATE TABLE `malvakt` ( `id` int(11) NOT NULL auto_increment, `PersonID` int(11) NOT NULL default '0', `datum` date NOT NULL default '0000-00-00', `hemmalag` varchar(30) NOT NULL default '', `bortalag` varchar(30) NOT NULL default '', `hemmamal` mediumint(9) NOT NULL default '0', `bortamal` mediumint(9) NOT NULL default '0', `minuter` int(11) NOT NULL default '0', `skott` int(11) NOT NULL default '0', `inslappta` int(11) NOT NULL default '0', `utvisning` int(11) NOT NULL default '0', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=23 ;
__________________
THX! |
|
|
|
|
|
#2 |
|
Medlem
Registrerad: 2003-12-16
Inlägg: 80
Lösningar: 0 |
Finns det verkligen ingen som kan hjälpa mig med detta?
__________________
THX! |
|
|
|
|
|
#3 |
|
Forumvärd
Registrerad: 2000-06-28
Ort: Universums mittpunkt
Inlägg: 4 786
Lösningar: 211 |
Antar att PersonID är referens till id i members tabellen?
Då är det ju bara att du hämtar informationen i filnamn.php från malvakt tabellen PHP-kod:
Eller är det något jag har missuppfattat? |
|
|
|
![]() |
| Trådverktyg | |
| Visningsalternativ | |
|
|