Just nu i M3-nätverket
Gå till innehåll

Hjälp


pontuska

Rekommendera Poster

Hej,

 

Jag skulle behöva lite hjälp, är nybörjare på ASP och inte så bra på att skapa.

 

Jag gör nu en hemsida där jag på första sidan som är skapad i html , jag skulle vilja ha en sökruta i den vänstra framen där jag kan välja land , categori och sen även ett fritext fält men jag vill kunna söka dem var för sig också. Resultatet vill jag ska presenteras i mitt-framen. Några tips på hur jag ska göra ? och det kanske finns färdig kod-template som jag kan använda mig av då detta bör vara ganska basic. Tack på förhand.

 

Länk till kommentar
Dela på andra webbplatser

Som sagt jag är beginner beginner

 

vad tror du om det här

 

jag har en starsida.htm som är main_Frame

 

men jag vill visa resultatet i resultat.htm

 

ska jag då göra denna editering i resultat.htm ?

 

Länk till kommentar
Dela på andra webbplatser

Christoffer Eklund

om du verkligen är beginner beginner kan det bli svårt att bara förklara steg för steg hur du gör. För det är en del saker som måste göras. Du behöver alltså sätta upp en miljö som klarar ASP (el nåt annat serversidespråk), och konfigurera någon typ av databas. Sen köra in allt sökbart innehåll i databasen.

 

Det bästa är, lär dig asp & hur databaser funkar.

 

Att ladda hem en färdig lösning kommer bli svårt att använda om du inte kan nåt alls.

 

/doffe

 

Länk till kommentar
Dela på andra webbplatser

Jag kan väl en del men skapa är jag inget vidare på

 

Har installerat IIS och kör try and error på min burk.

 

SQL kan jag det är inga problem men däremot så har jag lite svårt för hur jag ska få asp kräket att förstå att jag vill visa resultatet i mitt-framen. Det funkar att se resultatet i den frame som ligger till vänster men ej när jag gör action=resultat.htm

 

jag har en tom resultat.htm som jag hoppades att asp skulle lyckas skriva till men icke.

 

SQL och koden funkar men jag kan inte få den att presentera resultatet i resultat.htm

 

Länk till kommentar
Dela på andra webbplatser

Humma.. om jag förstått det hela rätt.

2 frames;

vanster.htm = formulär med sökfunktioner

resultat.asp = mittsidan där resultatet visas

 

i form-taggen kan du skriva

<FORM ... TARGET="mitt"> 

om det nu är vad mitt-framen heter och det är där du vill att resultatet visas.

 

Länk till kommentar
Dela på andra webbplatser

Låter bra ska testa det ,

 

Det jag gjorde sist var

 

<form action=resultat.htm target=main>

 

var nog fel eller ? :-)

 

Länk till kommentar
Dela på andra webbplatser

där hade jag post

 

men frågan är om action var felaktigt ?

 

action skrev jag bara enligt följande

 

action=resultat.htm

 

Länk till kommentar
Dela på andra webbplatser

<form method=post action=resultat.htm target=main>

 

Denna får jag inte att fungera och frågan är varför ?

jag får den att funka när jag kör med enbart method post då visas resultatet i samma frame men jag vill att den ska lista och visa den sql-fråga jag ställt snyggt och prydligt i mitt-framen :-)

 

 

 

Länk till kommentar
Dela på andra webbplatser

försöker förstå jag med...

 

Din mitt-frame heter main_Frame?

Då borde du ju rimligtvis skriva TARGET="main_Frame"

 

Men ACTION borde väl vara din asp-sida och inte en .htm-fil? Det är ju asp som ska hantera och visa resultatet...

 

som jag ser det borde form-taggen alltså vara

<FORM METHOD="POST" ACTION="resultat.asp" TARGET="main_Frame">

 

 

Länk till kommentar
Dela på andra webbplatser

Härligt !!!

 

Får passa på att tacka för all hjälp

 

Men man vill ju alltid ha mer :-) Har ni några bra länkar som beskriver ingående hur man kan få detta presenterat på ett snyggare sätt en med enbart en tab. med kolumner osv...

 

 

Tack på förhand..

 

Ps. Det är ju lustigt att man alltid ska behöva någon annan som granskar koden för att man ska förstå :-)

 

Länk till kommentar
Dela på andra webbplatser

vad är det som ska presenteras på ett snyggare sätt?

 

Resultatet av SQL-frågan eller hela sidan så att du slipper använda dessa hopplösa ramar?

 

Data presenteras lämpligen i tabellform medan sidans design/layout lämpligen byggs upp med stilmallar (css).

 

[inlägget ändrat 2003-12-16 13:43:11 av Cluster]

Länk till kommentar
Dela på andra webbplatser

Hej,

 

Jag har fixat så att allt kommer i samma tab eller kolumn. Däremot så vill jag att man ska kunna trycka på t ex en mailaddress och då ska den starta mail.prog

 

vet hur man gör i "vanlig" html dvs mailto:.......

men inte i asp och hur gör man för att formatera vanlig text som ligger i databasen till att bli klickbara

 

Jag vill också presentera bilder som också ligger i databasen. Mycket info nu men jag vill även kunna klicka på mer info och då ska en popruta hoppa fram där det är mer info om spelaren (det borde vara JS) men du kanske har några tips ?

 

tack på förhand

 

Länk till kommentar
Dela på andra webbplatser

1) Först mail:

Om du har sparat mailadresser i en egen "kolumn" så är det inte mycket svårare än i plain HTML.

 

Säg att du kallar ditt recordset för RS och att mailadresserna öigger i kolumnen Epost.

Response.Write("<A HREF=mailto:"&RS("Epost")&">"&RS("Epost")&"</A>")

vill du istället att tex namnet ska bli en mailto-länk blir det

Response.Write("<A HREF=mailto:"&RS("Epost")&">"&RS("Namn")&"</A>")[/

Annars, om adresserna finns i löpande text, så får du använda reguljära uttryck/regular expressions för att matcha och ersätta. Sök på google, eforum eller pellesoft.se så hittar du massor om detta.

 

 

2) Sen "vanliga" länkar:

Samma sak, som ovan, gäller för vanliga länkar. Enkelt om de ligger sparade separat. Klurigare om di finns i löpande text. Jag har en funktion som gör länkar klickbara, som här på forumet

<%
Function make_link(txt)
txt = Replace(server.HTMLEncode(txt),vbCrlf,"<br>")
sPos		= inStr(lCase(txt),"http://")	' Hämtar positionen för första länken

' Fyll denna array med tecken som avslutar en länk << HÄR KAN DU ÄNDRA OM DU VILL >>
stoppa		= Array(";",","," ","!","<",">")

Do While sPos <> 0 AND sPos < len(txt)	
	startLink = sPos			' Länkens startpos
	tmpChar	  = ""				' Nollställ
	tmpLink	  = ""				' Nollställ
	stop_it	  = "FALSE"

	' Plocka ut namnet på länken
	Do Until sPos > len(txt)+1 OR stop_it = "TRUE"
		tmpLink = tmpLink &amp; tmpChar
		tmpChar = Mid(txt,sPos,1)
		endLink = sPos - 1
		sPos = sPos + 1
		For X = 0 To Ubound(stoppa)	' Kollar om tmpChar är ogiltig
			If tmpChar = stoppa(X) Then stop_it = "TRUE"
		Next
	Loop

	vanster = Left(txt,startLink-1)		' Texten till vänster om länken
	hoger	= Right(txt,len(txt)-endLink)	' Texten till höger om länken

	' Sätt ihop den nya texten, med länk!
	txt 	=  vanster &amp; "<a href=" &amp; tmpLink &amp; " target=_blank>"_
		&amp; tmpLink &amp; "</a>" &amp; hoger

	' Leta fram nästa länk
	jumpTo 	= endLink + 33 + len(tmpLink)
	sPos	= inStr(jumpTo,lCase(txt),"http://")

Loop
make_link = txt
End Function
%>

Funktionen använder du sedan så här

<% Response.Write(make_link(RS("PersBeskr")))%>

om du tex vill skriva ut en personlig beskrivning som får/kan innehålla länkar. Den gör då så att tex http://www.pellesoft.se blir en klickbar länk.

 

 

3) Popup slutligen:

Först javascriptet

function OpenNewWin(URL,width,height){
if (parseInt(navigator.appVersion) >= 3){
	if (navigator.appName == "Netscape" && parseInt(navigator.appVersion)<5){
		var tools = new Packages.java.awt.Toolkit.getDefaultToolkit();
		screen=tools.getScreenSize();
	}
	x = screen.width;
	y = screen.height;
}
window.open(URL,"PasswordWindow","top=" + parseInt(y/2-height/2-16) + ",left=" + parseInt(x/2-width/2-5) + ",width=" + width + ",height=" + height);
}

sedan länken

<a href="#" onClick="OpenNewWin('info.asp?id<%Response.Write(RS("id"))%>',400,400); return false;">Mer info!</a>

sidan info.asp tar emot id:et och anpassar innehållet därefter. Typ

<%
SET RS=conn.execute("SELECT details FROM products WHERE id='"&amp;Request("id")&amp;"'") 
IF RS.EOF THEN
Response.Write("Ingen mer information tillänglig")
ELSE
Response.Write(RS("details"))
END IF
%>

 

[inlägget ändrat 2003-12-17 10:28:43 av Cluster]

Länk till kommentar
Dela på andra webbplatser

Var ska jag lägga href ???

 

<html>

<body>

<SCRIPT language=JavaScript>

function OpenNewWin(URL,width,height){

if (parseInt(navigator.appVersion) >= 3){

if (navigator.appName == "Netscape" && parseInt(navigator.appVersion)<5){

var tools = new Packages.java.awt.Toolkit.getDefaultToolkit();

screen=tools.getScreenSize();

}

x = screen.width;

y = screen.height;

}

window.open(URL,"PasswordWindow","top=" + parseInt(y/2-height/2-16) + ",left=" + parseInt(x/2-width/2-5) + ",width=" + width + ",height=" + height);

}

</SCRIPT>

 

<%

set conn=Server.CreateObject("ADODB.Connection")

conn.Provider="Microsoft.Jet.OLEDB.4.0"

conn.Open(Server.Mappath("databas/statistik_sodra.mdb"))

 

set rs=Server.CreateObject("ADODB.recordset")

sql="SELECT DISTINCT Country FROM Customers ORDER BY Country"

 

rs.Open sql,conn

 

Country=request.form("Country")

 

%>

<%

if country<>"" then

sql="SELECT Companyname,Country,URL FROM Customers WHERE Country='" & country & "'"

 

 

 

set rs=Server.CreateObject("ADODB.Recordset")

rs.Open sql,conn

%>

<br>

</p>

<table width="733" border="0">

<tr>

<td width="10">&nbsp;</td>

<td width="713"><table width="100%" border="1" cellpadding="2" cellspacing="0" bordercolor="#CCCCCC" bgcolor="#FFFFFF">

 

<%

do until rs.EOF

response.write("<tr>")

response.write("<td><strong>Company:</strong>" & rs.fields("companyname") & " <br> <strong>Country:</strong>" & rs.fields("country") & "<br><strong>URL:</strong> " & rs.fields("URL") & " <br><br><strong>More Info</strong></td>")

response.write("</tr>")

rs.MoveNext

loop

rs.close

conn.Close

set rs=Nothing

set conn=Nothing%>

</table></td>

</tr>

</table>

<p>

<% end if %>

</p>

</body>

</html>

 

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Det du ser är resultat.asp en fil som är resultatet av ett val t ex ett land. När vi sen får upp en lista vill man kunna klicka dels på URL som öppnar ett nytt fönster och även Mer info där vi visar mer information som inte syns i den första länkningen.

 

Länk till kommentar
Dela på andra webbplatser

Ska "Mer info" öppnas i en popup? (Det popup-skriptet som du har med)

Vilken mer info är det som ska visas. Dvs. vad är det du behöver veta för att kunna generera mer info. Tex id för att kunna skapa en SQL-fråga typ SELECT.... WHRE id="&Request("id")&"

 

Länk till kommentar
Dela på andra webbplatser

Mer Info ska öppnas i en popup

 

Den mer info som ska visas är t ex omsättning, kontaktpersoner, email osv....

 

Har du ICQ ? kanske kan skriva direkt där, för snabbare info :-)

 

Länk till kommentar
Dela på andra webbplatser

Anv. inte ICQ....

 

Lägg till ID (el motsv.) din SELECT-sats.

 

Där du har More Info (typ rad 49), lägger du in

<a href="#" onClick="OpenNewWin('info.asp?id<%Response.Write(rs.fields("id"))%>',400,400); return false;">Mer info!</a>

om det nu är rs.fields("id") du har som identifierare för kunden.

 

I din info.asp anpassar du sen SQL-frågan för att hämta den info du önskar (se inlägg ovan).

 

Länk till kommentar
Dela på andra webbplatser

Får det inte att fungera , men det beror nog på mig

 

Error Type:

Microsoft VBScript compilation (0x800A0400)

Expected statement

/Asia_eurolink_files/resultat.asp, line 50

<a href="#" onClick="OpenNewWin('info.asp?companyname<%Response.Write(rs.fields("companyname"))

 

 

Browser Type:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461)

 

Page:

POST 37 bytes to /Asia_eurolink_files/resultat.asp

 

POST Data:

namn=&select=&Country=Japan&x=32&y=12

 

Time:

den 20 december 2003, 16:14:05

 

Länk till kommentar
Dela på andra webbplatser

För att få URL klickbar:

ändra

<strong>URL:</strong> " & rs.fields("URL") & "

till

<strong>URL:</strong> <A HREF="&rs.fields("URL")&" TARGET=_blank>"&rs.fields("URL")&"</A>

 

Länk till kommentar
Dela på andra webbplatser

Koden i info.asp ser ut så här

 

<html>

<body>

<%

set conn=Server.CreateObject("ADODB.Connection")

conn.Provider="Microsoft.Jet.OLEDB.4.0"

conn.Open(Server.Mappath("databas/statistik_sodra.mdb"))

 

set rs=Server.CreateObject("ADODB.recordset")

sql="SELECT * from Customers"

%>

<br>

</p>

<table width="733" border="0">

<tr>

<td width="10">&nbsp;</td>

<td width="713"><table width="100%" border="1" cellpadding="2" cellspacing="0" bordercolor="#CCCCCC" bgcolor="#FFFFFF">

 

<%

do until rs.EOF

response.write("<tr>")

response.write("<td><strong>Company:</strong>" & rs.fields("companyname") & " <br> <strong>Country:</strong>" & rs.fields("country") & "<br><strong>URL:</strong> " & rs.fields("URL") & " <br><br><strong>More Info</strong></td>")

<a href="#" onClick="OpenNewWin('info.asp?companyname<%Response.Write(rs.fields("companyname"))%>',400,400); return false;">Mer info!</a>

response.write("</tr>")

rs.MoveNext

loop

rs.close

conn.Close

set rs=Nothing

set conn=Nothing%>

</table></td>

</tr>

</table>

<p>

<% end if %>

</p>

</body>

</html>

 

 

 

 

 

Och i databasen så är companyname primärnyckel dvs identifierare

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...