autocomplete problem

7 innlegg i emnet

Skrevet

Hei.

Har fult denne her http://www.w3schools.com/PHP/php_ajax_php.asp .

Det fungerer utmerket , men skulle gjerne hatt det live søket der inn i en input text. så jeg kan bruke det i ett form. Noen som vet hvordan man kan løse dette?

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Mener du at du skal bruke det til noe annet enn en webside, altså til et "lokalt program" på din egen PC?

Da trenger du vel egentlig noen annen kode enn den som er vist der. Websider er beregnet på å "tolkes" av nettlesere, altså at det er kode som er spesielt beregnet på nettlesere.

Logikken i programkoden som vises der er relativt enkel. Man har rett og slett en ferdiglagret liste med navn, og kode for å motta forespørsel, sjekke om noen av navnene i lista stemmer med forespørselen, og returnere de navnene som matcher forespørselen.

Forslagene som returneres der er bare "forslag". Du kan ikke bruke dem til autoutfylling, da trenger du litt annen kode som putter forslagene inn i en liste som tillater deg å velge blant forslagene. Hvis du er på jakt etter autoutfylling har du altså bare fått deler av metoden.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Hmm.

Feltet er allerede et input-felt, og du kan dermed bruke det i en form.


<form>
First name: <input type="text" onkeyup="showHint(this.value)" size="20" />
</form>
[/code]

Dermed forstod jeg ikke helt hva du prøver å gjøre..

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Kanskje litt dårlig eksempel.

Jeg har to input felt. Ett for post nr , og ett for post sted.

Ønsker at når brukeren skriver postnr så kommer automatisk poststed opp i poststed feltet

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Da blir det litt feil å se på den tutorialen du har, tror jeg.

Først og fremst må du ha en database med alle postnummer og postadresser i Norge.

Posten.no har dette, og det finner du her: http://epab.posten.no/Norsk/Nedlasting/NedlastingMeny1.htm

Videre er du da nødt til å relatere postnummeret som blir skrevet inn med postnummer/sted i databasen din.

For at dette skal kunne gå for seg uten at du er nødt til å laste inn siden på nytt, må du bruke AJAX/Javascript eller jQuery, samt PHP og MySQL.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Hei igjen!

Her har du en løsning som er testet og fungerer:

Her har jeg brukt jQuery sammen med PHP og SQL.

post.php


<script type="text/javascript" src="http://code.jquery.com/jquery-latest.pack.js"></script>
<script type="text/javascript">
$(function() {
$('#postadresse').change(function() {
if ( $(this).val() != "" ) {
$.ajax({
url : 'post2.php',
type : 'GET',
data : 'postadresse='+ $(this).val(),

success : function(response) {
$('#poststed').val(response);
}
});
}
});
});
</script>

<form method="post">
<fieldset>
<legend><b>Postadresse</b></legend>
<label for="postadresse">Postnummer:</label>
<input type="text" id="postadresse" name="postadresse" size="5" value="" />
<input type="text" id="poststed" name="poststed" value="" readonly="readonly" />
</fieldset>
</form>
[/code] [b]post2.php[/b]
[code]
<?php
mysql_connect('localhost', 'post', 'vyum7fxKFEyWnLEc');
mysql_select_db('post');

if ( isset($_GET['postadresse']) ) {
$query = mysql_query( sprintf('SELECT `poststed` FROM `postadresse` WHERE `postnummer` = %d LIMIT 1', $_GET['postadresse']) );

if ( mysql_num_rows($query) > 0 ) {
echo mysql_result($query, 0);
} else {
echo 'Ukjent/feil poststed';
}
}
?>

Du må selv endre SQL-koden for å passe til din database.

Jeg brukte en tabell med to felt, postnummer og poststed.

Du må da lagre alle postnummer/poststed i databasen. Du kan hente ut alle poststeder fra Posten.no, som jeg linket til i forrige innlegg.

Håper dette var det du så etter! * Lykke til

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Hei, fikk du det til?

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

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å

  • Hvem er aktive   0 medlemmer

    Ingen innloggede medlemmer aktive