mysql och asp

Elektronik- och mekanikrelaterad mjukvara/litteratur. (T.ex schema-CAD, simulering, böcker, manualer mm. OS-problem hör inte hit!)
pern
Inlägg: 700
Blev medlem: 14 juli 2004, 08:47:36
Ort: Landskrona

Inlägg av pern »

Kod mellan

<%

%>

Är serverkod , dvs körs på servern
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Okej, då fattar jag.

Sen en sak till.. :)

Om jag har en kolumn i MySql med ett ID-nummer, också vill jag veta vilket det största är, finns det då något smidigare sätt än att skriva följande?

Kod: Markera allt

sSql="SELECT ID FROM komihag ORDER BY ID DESC" //Flytta alla ID nummer till RS med största först.
rs.Open sSql, conn
ID_high = RS("ID").value // Flytta första (största) ID nummer till variabel..
pern
Inlägg: 700
Blev medlem: 14 juli 2004, 08:47:36
Ort: Landskrona

Inlägg av pern »

sSql="SELECT TOP 1 ID FROM komihag ORDER BY ID DESC"
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Tack! :D
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Om jag har en kolumn i MySql med ett ID-nummer, också vill jag veta vilket det största är,

http://dev.mysql.com/doc/refman/5.1/en/ ... olumn.html

Det *gick* ju faktiskt att hitta...
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Nu helt plötsligt fick jag ett konstigt felmedelande.. Vad jag minns så har jag inte ändrat på något mera än en loop för att skriva ut värdena som ligger i RecordSett, och det har jag ändrat tillbaks igen, men felmedelandet är ändå kvar..

Kod: Markera allt

Response object error 'ASP 0251 : 80004005'

Response Buffer Limit Exceeded

/komihag.asp, line 0

Execution of the ASP page caused the Response Buffer to exceed its configured limit. 
Om jag förstår det rätt så är det att buffern som används för tex. Respond.Write blir fylld med mer än 4Mb (default), men jag har inte ändrat på något som kan påverka det vad jag vet.. Och jag kan väll inte ändra den buffertstorleken eftersom det är ett webhotell? (= dem bestämmer det)

Mvh,.
pern
Inlägg: 700
Blev medlem: 14 juli 2004, 08:47:36
Ort: Landskrona

Inlägg av pern »

Är det mycket data du skriver ut ?


har du : Response.Buffer=True i koden ?
pern
Inlägg: 700
Blev medlem: 14 juli 2004, 08:47:36
Ort: Landskrona

Inlägg av pern »

Du kan pröva:


While NOT Rs.EOF

Response.flush


sHref = "<a href=""komihag.asp?ar=2008&manad=" & Rs("in_man").Value & """>" & GetMonth(Rs("in_man").Value) & "</a> <br/>"
Response.Write(sHref)
Rs.MoveNext

Wend
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Tack pern, Nu fungerar det! Om jag förstår rätt så flyttar det komandot allting i buffern till klient datorn (webläsaren) så att bufferten blir tom igen?
pern
Inlägg: 700
Blev medlem: 14 juli 2004, 08:47:36
Ort: Landskrona

Inlägg av pern »

Jo.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Hur gick det med MAX() ??
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Sodjan: Jo, Det fungerar utmärkt, Tack! :)

Jag har kommit på varför bufferten blev full också.. När jag va inne på hemsidan och testade funktioner så blev datorn helt plötsligt välldigt slö.. Då såg jag att den höll på att skriva ut en massa ASP komandon på skärmen, kanske 10 000 rader eller något sånt innan jag han avbryta den :wacko:. Jag hittade sen felet, det berodde på att det saknades en "<%" vilket gjorde att en loop som skulle köra x gånger inte utförde ASP komandona i den, utan den skrev bara ut dom som HTML, vilket gjorde att det blev en evighets loop.. :)
Användarvisningsbild
squiz3r
Inlägg: 5424
Blev medlem: 5 september 2006, 20:06:22
Ort: Lund
Kontakt:

Inlägg av squiz3r »

Okej, Nu är jag nästan helt klar med hemsidan, men jag har ett litet problem till. :)

Jag har en column i MySQL där jag ska kunna lagra längre texter. Tidigare körde jag med text (65k) nu kör jag med 255 stycken CHAR, men problemet blir samma..

När jag skriver ut texten skriver jag den till en "textarea" för att man ska kunna ändra i den och sedan skicka tillbaks den till MySQL (editerad). Problemet är att det blir en massa blanksteg (tab'ar?) både efter och före texten, så den sitter någonstanns mitt i rutan vilket jag inte tycker om.. Om jag fattar det rätt så finns dem där för att alla variablerna måste fyllas upp, men om det hade varit tex. "mellanrum" efter texten va slut hade inte skadat mig.. Så jag funderade på när man skriver texten till MySQL om man då inte kunde räkna dem på något sätt och sedan skicka X antal blanksteg så att man fyllde alla.

Det finns ju en funktion "len()" som returnerar längden. Då borde man kunna skriva:
temp = len(Request.Form("mera_text"))

Sen får man göra någon slags while-loop som lägger till " " till sSQL lika många gånger som värdet i temp-variabeln... Hur löser man det enklast?

Det känns som om hela detta är ganska klumpigt, men jag har sökt på google utan framgång..

Textarean:

Kod: Markera allt

	<form action="komihag.asp?Action=ChangeText&ID=<%=ID2%>&manad=<%=in_man%>&ar=<%=in_ar%>" method="post">
		<textarea rows="15" cols="50" name="mera_text">
			<%
			sSQL="SELECT text FROM komihag WHERE ID='" & ID2 & "'"
			rs.Open sSQL, conn
			Response.Write(rs("text").value)
			rs.Close
			%>
		</textarea>
		<input type="submit" value="Spara" />
	</form>
mvh. Daniel
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Tidigare körde jag med text (65k) nu kör jag med 255 stycken CHAR,

Exakt vad är det du använder ?
Ange gärna korrekt SQL/MySQL syntax istället för dina egan omskrivningar...

Har du läst detta ? :
http://dev.mysql.com/doc/refman/5.1/en/char.html
pern
Inlägg: 700
Blev medlem: 14 juli 2004, 08:47:36
Ort: Landskrona

Inlägg av pern »

Pröva : VARCHAR(255) som datatyp
Skriv svar