Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251

    da elenco record a dettaglio singolo record

    ciao
    ho una normale pagina che estrae i dati da un db di prodotti e li impagina ordinandoli per nome e categoria...
    ora vorrei linkare il nome del prodotto ad una pagina "dettaglio" dove visualizzo solamente i dati relativi all'id selezionato.

    cioè:
    seleziono id24 -> scheda dettaglio relativa all'id24

    sto provando con:
    ma non so come "passare" realmente i dati alla pagina "dettaglio" e quindi poi recuperarli...

    scusate la domanda, sicuramente banale ai più, ma sinceramente non ci sto capendo molto

    ciao e grazie

  2. #2
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Nslla stessa pagina fai la select dei dati e poi


  3. #3
    nella pagina dettaglio apri una nuova select che estrae tutti i campi del record avente l'id che gli hai passato

  4. #4
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251
    ho provato così:

    codice:
    <%@LANGUAGE = JScript%>
    
    <%
    	var Rs = Cn.Execute("SELECT * FROM auto ORDER BY descrizione,categoria ASC");
    %>
    <html>
    	
    <head>
    <title>DETTAGLIO</title>
    </head>
    
    <body>
    <p align="center">DETTAGLIO:</p>
    <p align="center"><%=Server.HTMLEncode(Rs("categoria"))%> 
    
      <%=Server.HTMLEncode(Rs("nome"))%></p>
    </body>
    </html>
    ma il risultato è che mi stampa solo il primo record presente nell'elenco iniziale

  5. #5
    no. allora, nella lista fai una select così:

    codice:
    sql="select id,nome from tabella"
    set rs=server.createobject("adodb.recordset")
    rs.open sql,conn
    e li fai scorrere tutti creando una lista.
    ad ognuno di questi fai scrivere nella pagina:

    codice:
    response.write(""&rs("nome")&"")
    nella pagina dettaglio recuperi la variabile id che gli hai passato:

    codice:
    id=trim(request("id"))
    e poi crei la select su di esso e riapri il recordset come prima:

    codice:
    sql="select * from tabella where id="&id
    set rs=server.createobject("adodb.recordset")
    rs.open sql,conn
    e poi crei la pagina che vuoi:

    codice:
    <body>
    <p align="center">DETTAGLIO:</p>
    <p align="center"><%=Rs("categoria")%>
    <%=Rs("nome")%></p>
    </body>

  6. #6
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251
    spetta... mi sa che sto sbagliando sicuramente qualcosa
    questo nella pagina dell'elenco

    codice:
     
    <%@LANGUAGE = JScript%>
    
    <%
    sql="select id,nome from auto"
    set rs=server.createobject("adodb.recordset")
    rs.open sql,conn
    %>
    <html>
    	
    <head>
    <title>SCHEDA2.ASP</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <div align="center"> 
      
    
    <font size="2" face="Verdana, Arial, Helvetica, sans-serif">SCHEDA2.ASP</font></p>
      <table width="700" border="0" align="center" cellpadding="1" cellspacing="0">
        <tr> 
          <td bgcolor="#003366"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><font color="#FFFFFF">SCHEDA2.ASP</font></font></td>
        </tr>
        <tr bgcolor="#66CC99"> 
          <td height="40"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Nome</font></td>
        </tr>
        <%
    		if (Rs.EOF) Response.Write("<td colspan=\"4\">Nessun dato</td>");
    		else while (!Rs.EOF)
    		{
    	%>
        <tr align="left" valign="top"> 
          <td bgcolor="#FFFFFF"> 
    
     <font size="2" face="Verdana, Arial, Helvetica, sans-serif"> 
              <%response.write(""&rs("nome")&"")%>
              </font></p></td>
        </tr>
        <tr align="left" valign="middle"> 
          <td></td>
        </tr>
        <%
    			Rs.Movenext();
    		}
    	%>
        <tr> 
          <td bgcolor="#003366"> <div align="right"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><font color="#FFFFFF">SCHEDA2.ASP</font></font></div></td>
        </tr>
      </table>
    </div>
    </body>
    </html>
    così non riesco ad aprire neanche la pagina

  7. #7
    allora ti mancano un paio di cose:
    1)prima di aprire rs devi aprire la connessione con il db;
    2)dopo rs.movenext manca la chiusura del while
    3)alla fine devi chiudere sia rs che conn.

  8. #8
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251
    la connessione la apro con



    che è così:

    <%
    Response.Buffer = true;
    var Cn = new ActiveXObject("ADODB.Connection");
    Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("database.mdb"));
    %>

    purtroppo ora devo assolutamente andare, ma domattina mi riguardo bene il codice

    x intanto grazie mille!

  9. #9
    allora è per forza la chiusura del while che manca.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.