Autor Zpráva
Anonym
Profil *
Dobrý den, chtěl jsem se zeptat jak napsat nějaký kod na vyhledávání uživatelů. Umím udělat aby se objevil hráč když napíšu jeho jméno (napíšu anonym => odešlu a zobrazí se mi "Hráč Anonym je zde".) Potřeboval bych, ale takové vyhledávání, že když napíšu třeba "anon" tak aby mi to vypsalo Hráč anon je zde
Hráč Anonym je zde
Hráč Anony589 je zde
Hráč Anony658 je zde

Všem moc děkuji :)
Medvídek
Profil
Anonym:
Zřejmě hledáš toto.
Dej si jen pozor na CASE SENSITIVE, záleží, jakou shodu potřebuješ.
Anonym
Profil *
Medvídek:
Omlouvám se, ale vůbec tomu nerozumím... ale děkuji, já to nějak vyřeším :)
Anonym
Profil *
Tak se mi to zatím nepovedlo :( Prosím nevíte někdo jak to udělat. Mám zatím tento kód:

<?php

$searchuser = $_POST['submit'];


if ($searchuser)
{

include("connect.php");


$namecheck = mysql_query("SELECT id FROM users WHERE username='$searchuser'");
$count = mysql_num_rows($namecheck);

$_SESSION['username']=$searchuser;
}

$cist = mysql_query("SELECT `email` FROM `users` WHERE username='$searchuser'"); // Získá požadovaný záznam
while ($data = mysql_fetch_assoc($cist))
{ // Zpracuje Data pomocí funkce mysql_fetch_assoc

$_SESSION['email'] = $data['email']; // Uloží ID do Sessions
$email = $_SESSION['email'];
}

?>


<div style="positon: absolute; margin-top: -160px;">
<?php if($count!=0)
{
echo"
<div>
<table style='margin-left: 300px;width: 50%; text-align: left; border-collapse: collapse; '>
<tbody>
<tr>
<td style='vertical-align: top;'><span style='font-weight: bold;'>Rank</span><br>
</td>
<td style='vertical-align: top;'><span style='font-weight: bold;'>Nickname</span><br>
</td>
<td style='vertical-align: top;'><span style='font-weight: bold;'>Email</span><br>
</td>
</tr>
<tr>
<td style='vertical-align: top;'>"; if($count!=0)
{
echo "1";
}
echo"<br>
</td>
<td style='vertical-align: top;'>";
if($count!=0)
{
echo "<a href='#' >$searchuser</div>";
}
echo "<br>
</td>
<td style='vertical-align: top;'>";
if($count!=0)
{
echo ($email);
}
echo "
<br>
</td>
</tr>
</tbody>
</table>
</div>";
}

else

{
echo "<p style='margin-top: -160px; margin-left: 360px; color: gray; font-size: 26px;'>That user doesn't exist.</p>";
}
?>
</div>
Medvídek
Profil
Anonym:
Tak zkus toto: http://www.zaachi.com/cs/items/php-mysql-vyhledavani.html
Anonym
Profil *
Medvídek:
Moc děkuji, vyhledávání mi už funguje, ale ted mám problém s výpisem:
<?php
$hledat = $_GET['search'];
$submit = $_GET['submit'];

if(($submit)AND($hledat))
{

$db="search";
$tb="users";
$spojeni = mysql_connect("127.0.0.1","root","");
mysql_select_db($db, $spojeni);
$result=mysql_query("SELECT * FROM `$tb`");

//tento kód vypíše názvy sloupců:
echo ("<table border=\"1\" bordercolor=\"lavender\"><tr>");

echo "<td id='tab_td'>Rank</td>
      <td id='tab_td'>Username</td>
      <td id='tab_td'>Email</td>";
      
echo("</tr>");
//tento kód vypíše odpovídající položky:
$vysledek = mysql_query("SELECT * FROM `$db`.`$tb` WHERE `username` LIKE '%".$hledat."%'", $spojeni);
while ($zaznam = mysql_fetch_array($vysledek) ):

$searchuser = $zaznam['username'];

echo ("<td id='tbody_td'>".$zaznam['rank']."</td>");
echo ("<td id='tbody_td'><a href='user.php?user=$searchuser'>".$zaznam['username']."</a></td>");
$_SESSION['user'] = $searchuser;

echo ("<td id='tbody_td'>".$zaznam['email']."</td></tr>");
endwhile;
echo("</table>");
}

?>


potřeboval bych aby to $_SESSION['user'] bylo vždy naplněno tím jmenem na ktery odkaz zmáčknu. Př.: po tomhle kodu, se mi vypíší dvě jména (ty se otevřou do user.php) to funguje u obou. Ale když chci vypsat so SESSION tak mi to vypíše u obou to druhý jmeno (to jmeno ktere se mi v tabulce objeví poslení). Co s tím? Všem děkuji za radu :)
Anonym
Profil *
Prosím neznáte někdo nějaký způsob? :)
Medvídek
Profil
Anonym:
to jmeno ktere se mi v tabulce objeví poslen
Samozřejmě, protože ho v cyklu přepisujetem proto se naplní vždy posledním výsledkem.

Hold tomu odkazu dáte jako paramter ID toho uživatele a po kliknutí si z db vytáhnete to jmeno podle ID.
Jinak doporučuji ošetřit vstupy (mysql_real_escape_string) u $hledat = $_GET['search']; (Vesměs všechno co jde do db musí být ošetřeno)
Anonym
Profil *
Medvídek:
to mě napadlo ale nevím jak to mám udělat, nemohl by si mi trochu poradit :) jinak děkuji ošetřím si to :)
Medvídek
Profil
Anonym:
Prostě ve výsledcích toho vyhledávání budeš mít odkazy na jednotlivý uživatele a těm přidej parametr jejich UID. Nevím kam odkazy směřují, takže třeba takhle:

<a href="odkaz.php?nacti=25">Uživatel Lopikol</a>

A na stránce si to zpracuješ:
<?php 
if(isset($_GET["nacti"])){
 $_SESSION["user"]=mysql_result(mysql_query("SELECT username FROM users WHERE id = ".intval($_GET["nacti"])." "),0);
}
?>
Anonym
Profil *
Medvídek:
Moc ti děkuju !!! :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0