« 1 2 »
Autor Zpráva
jannovak350
Profil
máte nějaký zajímavý tip jak na našeptávače? plugin, hotové řešení? Bohužel se mi stále nedaří rozjet
nightfish
Profil
http://docs.jquery.com/UI/Autocomplete
jannovak350
Profil
to jsem viděl funguje skvěle, ale je tam možnost tahat data z databáze? Pokud se dívám správně všude vidím jen pole source pevně dané
nightfish
Profil
Ano, jako zdroj je možné uvést URL skriptu, který bude spolupracovat s databází a vracet JSON data.
Mar
Profil
to by "možná" neměl být problém, zkusím ti to napsat
jannovak350
Profil
díky
Mar
Profil
<!DOCTYPE html>
<html>
<head>
  <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
  
  
<?
  include "connect.php";//pripojit na databazi
     
  $C = 0;
  
  $sql = "SELECT sloupce FROM `tabulka` ORDER BY ID";//(vybrat sloupce, z ktere tabulky a seradit je)
  $vysledek = MySQL_Query($sql); // provedení sql dotazu
  while ($zaznam = MySQL_Fetch_Array($vysledek)){
    $Nazev=$zaznam["sloupec"];
    
    $C = $C+1;
    
    if($C==1){
      $V = "\"".$Nazev."\"";
    }else{
      $V = $V.", \"".$Nazev."\"";
    }
    
  }
?>   
  
  <script>
  $(document).ready(function() {
    $("input#autocomplete").autocomplete({
    source: [<? ECHO $V; ?>]
    //source: ["c++", "java", "php", "coldfusion", "javascript", "asp", "ruby"]
});
  });
  </script>
</head>
<body style="font-size:62.5%;">
  
<input id="autocomplete" />

</body>
</html>



To je vše a funguje to....
jannovak350
Profil
diky za rychlost to je super akorat jeslti to chápu dobře tak to vlastně stáhne celou "tabulku" najednou ... což je třeba při několika tisicích záznamů problém .... umělo by to i si na databází šahat třeba na limit 15 při každeém event ?
Mar
Profil
to by jsi musel resit uz pres AJAX a provadet PHP script externe a podle toho doplnovat to pole s vyrazy

Moderátor nightfish: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
jannovak350
Profil
takové řešení právě hledám
jannovak350
Profil
mám na mysli přes AJAX
Kcko
Profil
Stačilo by Ti to takhle?



Je docela jednoduche to nastavit tak jak ty potrebujes.

http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/
jannovak350
Profil
to by asi melo byt ono - poslal bys kód inicializace?
Kcko
Profil
Neposlu, protoze tam mam zamichano vic veci, ktere by te akorat zmatly.
Podivej se sem a das to dohromady.

http://jquery.bassistance.de/autocomplete/demo/
nightfish
Profil
jannovak350:
to by asi melo byt on
Pozor, na stránce se píše, že plugin nebude dále vyvíjen a že se má přejít na jQuery UI Autocomplete.
Kcko
Profil
nightfish:
Neni treba ho dale vyvijet. Na to co potrebuje postacuje bohate, skyta docela dost moznosti.
jannovak350
Profil
no ale ja se divam ze to cos poslaal :http://jquery.bassistance.de/autocomplete/demo/ netaha data z databaze .. hm?

a u jQuery UI Autocomplete zase řikáš, že to umí jen natáhnout celou tabulku

Potřeboval bych řešení, které zvládne při každém eventu (písmenu) načíst třeba 15 výsledků
Kcko
Profil
jannovak350:
Ja cist umim. Proto sem Ti hodil reseni, ktere umi tahat i jednotlive veci z DB a nemusis si delat seznam do pole.
Znovu opakuji http://jquery.bassistance.de/autocomplete/demo/ v prikladech to je.


Konkretne

	$("#suggest4").autocomplete('search.php', {
		width: 300,
		multiple: true,
		matchContains: true,
		formatItem: formatItem,
		formatResult: formatResult
	});


Moderátor nightfish: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
nightfish
Profil
jannovak350:
Pochop, že k oběma uvedeným variantám potřebuješ PHP skript, který bude poskytovat data (pro UI to bude JSON, pro plugin z [#12] to budou data oddělená řádky). Obě řešení samozřejmě PHP skriptu v parametru posílají již zadaný text, takže nějaké filtrování řádků z databáze je bez problému.
jannovak350
Profil
ok a jak má vypadat tedy search.php to nikde nevidím
jannovak350
Profil
nightfish:
to chápu to je fajnt, ale asi bych potřeboval to vidět komplet kod FORM, KOD autocomplete a kod search.php jak to má vypadat
díky
Kcko
Profil
jannovak350:
Mas tam tam celou knihovnu s priklady ke stazeni. Je tam i search.php.
jannovak350
Profil
v search php je toto:

$q = strtolower($_GET["q"]);
if (!$q) return;
$items = array(
"Great <em>Bittern</em>"=>"Botaurus stellaris",
"Little <em>Grebe</em>"=>"Tachybaptus ruficollis",
"Black-necked Grebe"=>"Podiceps nigricollis",
"Little Bittern"=>"Ixobrychus minutus",
Kcko
Profil
jannovak350:
A?
nightfish
Profil
Kcko:
A?
Pravděpodobně kolega potřebuje, abychom mu napsali skript, který bude tahat data z databáze.
Kcko
Profil
nightfish:
Aha tak to necham na jinem dobrodinci, myslim, ze uz jsme se angazovali dost.

jannovak350:
Pri vsi ucte, pokud neumis pripravit data z DB do pole tak vynech oblast pusobeni v tomto oboru.
jannovak350
Profil
nightfish:
ano - všude jsou příklad jak incializovat jquery atd, ale skript, který vrací data z databáze nikoliv ... nevím jak ty data vracet ... to je celé
jannovak350
Profil
klient na to celkemspecha takze pokud by se ozval nekdo kdo by zkompletoval ajax naseptavac prosim o kontakt na email wolowitztreti@seznam.cz dekuji (cena dohodou)...

za pripadny rady dale ve vlakne predem diky
Kcko
Profil
jannovak350:
Kontakt mam v profilu, jsem ochoten to vecer udelat. Cenu sdelim pres ICQ ci email.
smiesek
Profil
omlouvám se za hodně staré obnovení tématu, ale dle postupu Mar tedy části kodu, který testuju na svém localu a ráda bych jej využila, bych se ráda zeptala, jelikož se mi nedaří nikde to dohledat, pravda je to otázka javascriptu, ale:
a) jakým způsobem je možné do prázdného pole napsat text? Tedy pokud je vstup na stránku, tak aby v poli byl text něco jako "zadejte město"
b) stylování vyhledávacího pole pomocí css bude probíhat úplně stejně, jako by se třeba jednalo o pole formuláře, nikde není nic světoborného co by se ještě muselo někde přídavného vkládat, ano? Budu tedy stylovat #autocomplete {}

Děkuji nechtěla jsem kvůli tomu zakládat nové téma, když jsem využila přímo tuto část kodu a pouze na něj odkazovat.
« 1 2 »

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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