24. april 2004 - 12:03Der er
8 kommentarer og 1 løsning
Sjov lille en til en ekspert :D Flere sider, men med et twist!
Hejsa og godmorgen!
Jeg har mit fine db udtræk, denne gang fra en Access db (sigh!) men kan ikk slippe uden om access da det er til arb :( Anyway, så er mit udtræk variabelt da det er en del af en søgefunktion, og det skal deles op med 10 posts per side. Normalt ville man bare skrige LIMIT!!!! men det går jo ikke fordi Access er en SQL-wannabe og ikke understøtter limit... So what to do? Er der nogen der kan lave et SIMPELT eksempel der deler mit udtræk op i sider med 10 posts per side? Så der 200 point til kaffen! :D Herunder er nuværende kode:
<? include("inc/odbc_connect.inc");
$row = odbc_exec($odbc, "SELECT * FROM HNV WHERE Produkt LIKE '%".strtolower($sogeord)."%' OR VareNr LIKE '".strtolower($sogeord)."' ORDER BY varenr ASC") or die (odbc_errormsg()); ?>
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det rareste ville være hvis du har et felt i databasen der afspejler den ønskede sekvens, og som er reculært nok til at du kan "forudse" hvilken værdi det felt har i række nr 10, 20, 30, 40, ...
Du kunne evt lave det felt selv ved at oprette et ekstra felt i tabellen, og så gennummerere rækkerne i tabellen hver garg der er fhernet/indsat/ændret en række i tabellen. Med sådan et felt kunne du så bruge where istedet limit til at begrænse udtrækket. Det kommer så også an på om Access tillader den slage renummerering i et felt.
Men hvis tabellen ikke er vældig lang, eller hvis den ændres hyppigt er det nok billigere at hente alle rækker og så blot smide de rækker væk der ikke skal vises denne gang.
<? include("inc/odbc_connect.inc");
$row = odbc_exec($odbc, "SELECT * FROM HNV WHERE Produkt LIKE '%".strtolower($sogeord)."%' OR VareNr LIKE '".strtolower($sogeord)."' ORDER BY varenr ASC") or die (odbc_errormsg()); ?>
Hey jakoba! Det er sq en genial måde at gøre det på! Lortet kommer til at køre lokalt så det er ok, bare at hive hele sættet ud og sortere dem fra man ikke vil se. MEN... jeg ahr idt prob med at få det til at virke i praksis :D Når jeg fx søger på søm i min db, kommer der 29 resultater. Fint. Så det jo klart at den ikek viser noget, når det foreløbigt er specificeret til kun at vise fra 40 til 50. Men selvom jeg sætter $oensket_foerste = 5, så viser den ikke fra 5 - 15 som den burde. den viser i stedet 19 resultater? Så der er noget jeg misser... men hvad? :D A little more help plz :) Så gir jeg en cola!
one more thing, hvor gir jeg dig dine point? kan ikke lige finde knappen til det? mig der er blind, eller er der lavet om her siden jeg var her sidst? :D
hvis du er der endnu, ehm, så har jeg et lille spørgsmål mere :D Kan man tælle hvor mange poster der blir fundet? for jeg har lavet en funktion til at gå 10 frem hver gang man klikker næste og der virker fint, men det er lidt et prob at jeg ikke kan gå ind og sige at oensket_sidste max må være længden af array :D hvis du ved hvad jeg mener?
Ups. overså den sidste. Ja man kan tælle, som regel vil man dog bruge en anden SQL søgning til det:
$row = odbc_exec($odbc, "SELECT COUNT(*) AS antal FROM HNV WHERE Produkt LIKE '%".strtolower($sogeord)."%' OR VareNr LIKE '".strtolower($sogeord)."' ORDER BY varenr ASC") or die (odbc_errormsg()); $resultatrow = odbc_fetch_array($row); // der kommer kun een række echo "Der blev fundet " .$resultatrow[ 'antal' ] ." rækker.";
mvh JakobA
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.