Gå til innhold

[løst]Trenger hjelp med en søkefunksjon!


Anbefalte innlegg

Hele koden:

Klikk for å se/fjerne spoilerteksten nedenfor

	<?php
	 if(array_key_exists('finn_spiller', $_POST))
	 {
		 $i_sok = 0;
		 $sokinput = mysql_real_escape_string($_POST['spiller_navn_finn']);

			 if(strlen($sokinput) < 3) {
				 echo '<font style="color:#FF0000; font-size:11px; font-family:Verdana, Arial, Helvetica, sans-serif;"><strong>Søket må inneholde minst 3 tegn!</strong></font>';
			 }
			 else {
		 ?>
		 <table align="center" width="203" class="table2" border="1" bordercolor="#000000" style="margin-top:30px;">
		 <tr>
		 <td height="20" colspan="2" align="center" style="background-image:url(bilder/tdbak.png); background-repeat:repeat-x; padding-left:5px; color:#000000;"><strong>FINN SPILLER ~ REULTATER</strong></td>
		 </tr>
		 <?php

			 $finn1 = "SELECT * FROM `brukere`";
			 $finn = mysql_query($finn1);
			 while($row = mysql_fetch_array($finn)) {

				 $leng = strlen($sokinput);
				 $sokinput = strtolower($sokinput);

				 $navn_bruker = $row['nick'];
				 $navn_bruker = strtolower($navn_bruker);

				 $navn_sok = substr($navn_bruker, 0, $leng);

					 if($navn_sok == $sokinput)
						 {
							 echo "<tr><td style=\"padding:5px;\" align=\"center\">
							 <a href=\"profil.php?vis=$row[nick]\">
							 <strong>$row[nick]</strong>
							 </a>
							 </td></tr>";
							 $i_sok++;
						 }

							 if($i_sok > 1) {
								 echo "<tr><td style=\"padding:5px;\"><strong>$i_sok </strong>treff</td></tr>";
							 } else {
								 echo "<tr><td style=\"padding:5px;\"><strong>$i_sok </strong>treff</td></tr>";
							 }

			 }

		 ?>
		 </table>
		 <?php
		 }
	 }
	 else {
 ?>
 <form action="" method="post">
<table align="center" width="203" class="table2" border="1" bordercolor="#000000" style="margin-top:30px;">
 <tr>
	 <td height="20" colspan="2" align="center" style="background-image:url(bilder/tdbak.png); background-repeat:repeat-x; padding-left:5px; color:#000000;"><strong>FINN SPILLER</strong></td>
	  </tr>
   <tr>
   <td width="85">Spillernavn:</td>
   <td width="102"><input type="text" name="spiller_navn_finn" style="border: 1px solid #6F6F6F;background-color: #2B2B2B; font-family: Verdana; font-size: 10px; color: white; width: 100px;" /></td>
   </tr>
   <tr>
   <td colspan="2" align="right" style="padding:5px;"><input type="submit" name="finn_spiller" value=" Finn! " /></td>
   </tr>
   </table>
</form>
<?php } ?>

 

 

Når jeg søker:

Problemet er at når jeg søker på admin, kommer "admin" opp, men under den, så skrives: "1 treff" ut 5 ganger nedover.. Hva har jeg gjort galt ?

Endret av creAtiive
Lenke til kommentar
Videoannonse
Annonse

Bruk heller "LIKE '%...%'" i spørringen din, så ungår du at PHP skal søke etter noe i en streng. Om mulig, så gjør man det meste i SQL.

 

		$finn1		= "SELECT * FROM `brukere` WHERE nick LIKE LOWER( '{$sokinput}%' )";
	$finn		= mysql_query($finn1);
	$results 	= mysql_num_rows( $finn );

	while( $row = mysql_fetch_array($finn) ) 
	{
		echo "<tr>
				<td style=\"padding:5px;\" align=\"center\">
					<a href=\"profil.php?vis={$row['nick']}\"><strong>{$row['nick']}</strong></a>
							 	</td>
			</tr>";
	}

	echo "<tr><td style=\"padding:5px;\"><strong>{$results}</strong> treff</td></tr>";

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...