Visualizzazione dei risultati da 1 a 8 su 8

Discussione: problema asp

  1. #1

    problema asp

    Ho inserito un guestbook nel mio sito, visto che nn sono pratico di asp volevo chiedervi un aiuto:
    Ho capito leggendo varie discussioni che il codice mi da errore (too many task) perchè non uccido o chiudo le connessioni (nothing), mi potete scrivere dove devo ucciderle e con che sintassi? vi scrivo il codice grazie sareste molto gentili :


    codice:
    <%@LANGUAGE = JScript%>
    <%
    	/*
    		Autore: Luca Ruggiero - http://www.lukeonweb.net
    		Fonte:  freeAsp.it - http://freeasp.html.it
    	*/
    
    	// ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----
    
    	// QUESTA E' LA PASSWORD DI AMMINISTRATORE PER ELIMINARE MESSAGGI INDESIDERATI... CAMBIALAAAAAAAAAAAAAAA :-)
    	var admin_password = "mattorock78";
    
    	// ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----
    	
    	
    	/*
    		ASPETTI DELLA CONFIGURAZIONE DELL'APPLICAZIONE NON CONTEMPLATI NEI SINGOLI PASSAGGI DI CODICE
    		
    		Pur trattandosi di un semplice Guestbook, questo singolo file consente di effettare
    		tutte le operazioni possibili. A tal proposito è necessario puntualizzare alcune cose:
    		
    		1. E' importante, qualora dovessi decidere di rinominare questo file,
    		   modificare tutti i punti in cui si fa riferimento al file guestbook.asp
    		   sostituendo col nome del file che hai utilizzato per la rinomina.
    		
    		2. La grafica è personalizzabile in tutti i minimi particolari,
    		   ma è importante non confondere alcuna condizione del codice Asp
    		   evitando che generino errori.
    		   
    		Gli altri punti cardine dell'applicazione sono contemplati seguendo i vari passi del codice.
    	*/
    	
    	// ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----
    	
    	Response.Buffer = true;
    	
    	// APRO LA CONNESSIONE VERSO IL DATABASE
    	// SE SUL TUO SERVER HAI NECESSITA' DI SPOSTARE IL DATABASE IN UNA CARTELLA DI SISTEMA DEDICATA
    	// DEVI MODIFICARE IL PERCORSO NELLA PORZIONE DI CODICE Server.MapPath("percorso/guestbook.mdb")
    	var connessione = new ActiveXObject("ADODB.Connection");
    	var stringa = "driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("guestbook.mdb");
    	connessione.Open(stringa);
    	
    	// UTILIZZEREMO UN SOLO FILE PER ESEGUIRE TUTTE LE OPERAZIONI POSSIBILI
    	// INSERIMENTO DEI MESSAGGI, VISUALIZZAZIONE DEI MESSAGGI, CANCELLAZIONE DI MESSAGGI DA PARTE DELL'AMMINISTRATORE, ECC...
    	// QUINDI DICHIARO UNA VARIABILE QUERYSTRING PER OTTENERE RISULTATI DIVERSI A SECONDA DEL LORO VALORE
    	var azione = new String(Request.QueryString("azione"));
    	
    	// CONTO I MESSAGGI PREDENTI SUL DATABASE
    	var conta = connessione.Execute("SELECT COUNT(*) AS id FROM messaggi");
    	
    	// EFFETTUO LA PAGINAZIONE PER MOSTRARE SOLO UN CERTO NUMERO DI MESSAGGI A VIDEO
    	// IN QUESTO CASO 10
    	var quanti = 10;
    	var Mostra = new ActiveXObject("ADODB.Recordset");
    		Mostra.Open("SELECT * FROM messaggi ORDER BY id DESC",connessione,1);
    	var pagina = parseInt(Request.QueryString("pagina"));
    	    if (isNaN(pagina) || pagina < 1) pagina = 1;
    	    if (!Mostra.EOF)
    	    {
    	         Mostra.PageSize = quanti;
    	         Mostra.AbsolutePage = pagina;
    	    }
    	var i = 0;
    	
    	// IMPOSTO IL COLORE DI SFONDO DELLE CELLE CHE CONTENGONO I MESSAGGI
    	var colore = 0;
    %>
    <html>
    	<head>
    		<title>Guestbook</title>
    		<link rel="stylesheet" type="text/css" href="guestbook.css">
    	</head>
    <body scroll=yes>
    
    <h2><font face="sans-serif">Guestbook</font></h2>
    
    <table class="MODULO" width="500" align="center" cellpadding="3" cellspacing="0">
    	<form name="guestbook" method="post" action="guestbook.asp?azione=Inserisci">
    		<tr>
    			
          <td width="150">Nome</td>
    			<td width="350"><input type="text" name="nome" maxlength="50" style="width: 100%;"></td>
    		</tr>
    		<tr>
    			
          <td>Email</td>
    			<td><input type="text" name="email" maxlength="50" style="width: 100%;"></td>
    		</tr>
    		<tr>
    			
          <td>Homepage (opzionale)</td>
    			<td><input type="text" name="homepage" maxlength="50" style="width: 100%;" value="http://"></td>
    		</tr>
    		<tr>
    			
          <td>Titolo</td>
    			<td><input type="text" name="titolo" maxlength="70" style="width: 100%;"></td>
    		</tr>
    		<tr>
    			
          <td colspan="2">Messaggio</td>
    		</tr>
    		<tr>
    			<td colspan="2"><textarea name="messaggio" style="width: 100%; height: 100px;"></textarea></td>
    		</tr>
    		<tr>
    			<td colspan="2" align="right"><input type="submit" value=" Firma il Guestbook "></td>
    		</tr>
    	</form>
    </table>
    
    <p align="center">Ci sono <%=conta("id")%> messaggi</p>
    
    <%
    	if (azione == "undefined")
    	{
    %>
    <table width="500" align="center" cellpadding="3" cellspacing="0">
    <%
    	// MOSTRO I MESSAGGI A VIDEO
    	if (Mostra.EOF)
    	{
    		Response.Write("
    
    Non ci sono messaggi...</p>");
    	}
    	else while (!Mostra.EOF && i<quanti)
    	{
    %>
    	<tr>
    		<td bgcolor="#<%colore%2 == 0 ? Response.Write("FFFFFF") : Response.Write("EEEEEE")%>" style="border-bottom: Dashed 1px #CCCCCC;">
    			<font color="#800000"><%=Mostra("titolo")%></font><%Session("amministratore") == "OK" ? Response.Write(" (<a href=\"guestbook.asp?azione=Cancella&id=" + Mostra("id") + "\">cancella</a>)") : Response.Write("")%>
    
    			Autore: "><%=Mostra("nome")%>
    
    			Data: <%=Mostra("data")%> ore <%=Mostra("ora")%>
    
    
    			<%=Mostra("messaggio")%>
    			<%Mostra("homepage") == "http://" || Mostra("homepage") == "" || Mostra("homepage") == "undefined" ? Response.Write("") : Response.Write("
    
    <a href=\"" + Mostra("homepage") + "\" target=\"_blank\">" + Mostra("homepage") + "</a>")%>
    		</td>
    	</tr>
    <%
    		i++;
    		colore++;
    		Mostra.MoveNext();
    	}
    %>
    </table>
    <%
    	}
    	else if (azione == "Inserisci")
    	{
    		// RECUPERO I DATI DAL MODULO PER EFFETTUARE LA REGISTRAZIONE
    		var nome = new String(Request.Form("nome"));
    		var email = new String(Request.Form("email"));
    		var homepage = new String(Request.Form("homepage"));
    		var titolo = new String(Request.Form("titolo"));
    		var messaggio = new String(Request.Form("messaggio"));
    		// ESPRESSIONE REGOLARE PER LA VERIFICA DELL'INDIRIZZO EMAIL
    		var verifica = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
    		// CREO LA DATA
    		var oggi = new Date();
    		var data = oggi.getDate() + "/" + (oggi.getMonth() + 1) + "/" + oggi.getFullYear();
    		var ora = oggi.getHours() + ":" + oggi.getMinutes();
    		// VALIDAZIONE DEI DATI INSERITI DALL'UTENTE
    		var errore = "guestbook.asp?azione=errore&codice=";
    		if (nome == "" || nome == "undefined" || nome.charAt(0) == " ")
    		{
    			Response.Redirect(errore + "1");
    		}
    		else if (!verifica.test(email))
    		{
    			Response.Redirect(errore + "2");
    		}
    		else if (titolo == "" || titolo == "undefined" || titolo.charAt(0) == " ")
    		{
    			Response.Redirect(errore + "3");
    		}
    		else if (messaggio == "" || messaggio == "undefined" || messaggio.charAt(0) == " ")
    		{
    			Response.Redirect(errore + "4");
    		}
    		else
    		{
    			var r_messaggio = messaggio.replace(/</g, "&lt;");
    			var rr_messaggio = r_messaggio.replace(/>/g, "&gt;");
    			var rrr_messaggio = rr_messaggio.replace(/&/g, "&amp;");
    			var rrrr_messaggio = rrr_messaggio.replace(/\n/g, "
    ");
    			// CASO IN CUI TUTTE LE CONDIZIONI SONO STATE SODDISFATTE
    			// QUINDI PROCEDO CON LA REGISTRAZIONE DEL MESSAGGIO
    			var recordset = new ActiveXObject("ADODB.Recordset");
    				recordset.Open("messaggi",connessione,3,3);
    					recordset.AddNew();
    						recordset("nome") = nome;
    						recordset("email") = email;
    						recordset("homepage") = homepage;
    						recordset("titolo") = titolo;
    						recordset("messaggio") = rrrr_messaggio;
    						recordset("data") = data;
    						recordset("ora") = ora;
    					recordset.Update();
    				recordset.Close();
    				recordset = nothing;
    			Response.Redirect("guestbook.asp");
    		}
    	}
    	else if (azione == "errore")
    	{
    		// GESTIONE DEI MESSAGGI DI ERRORE
    		var codice = parseInt(Request.QueryString("codice"));
    		var correggi = "<p align=\"center\"><input type=\"button\" value=\"Correggi\" onClick=\"window.history.back()\">";
    		if (codice == "1")
    		{
    			Response.Write("<p class=\"ERRORE\">Inserisci il tuo nome per favore</p>" + correggi);
    		}
    		else if (codice == "2")
    		{
    			Response.Write("<p class=\"ERRORE\">Inserisci la tua email per favore</p>" + correggi);
    		}
    		else if (codice == "2")
    		{
    			Response.Write("<p class=\"ERRORE\">Inserisci la tua email per favore</p>" + correggi);
    		}
    		else if (codice == "3")
    		{
    			Response.Write("<p class=\"ERRORE\">Inserisci il titolo del messaggio favore</p>" + correggi);
    		}
    		else if (codice == "4")
    		{
    			Response.Write("<p class=\"ERRORE\">Inserisci il corpo del messaggio favore</p>" + correggi);
    		}
    		else
    		{
    			Response.Redirect("guestbook.asp");
    		}
    	}
    	else if (azione == "Login")
    	{
    		// LOGIN PER L'AMMINISTRATORE
    		var password = new String(Request.Form("password"));
    		if (password == admin_password)
    		{
    			Session("amministratore") = "OK";
    		}
    		Response.Redirect("guestbook.asp");
    	}
    	else if (azione == "Logout")
    	{
    		// LOGOUT PER L'AMMINISTRATORE
    		Session.Abandon();
    		Response.Redirect("guestbook.asp");
    	}
    	else if (azione == "Cancella")
    	{
    		// EFFETTUO LA CANCELLAZIONE DEL MESSAGGIO (SOLO SE AUTENTICATO)
    		if (Session("amministratore") != null)
    		{
    			var id = parseInt(Request.QueryString("id"));
    			connessione.Execute("DELETE * FROM messaggi WHERE id LIKE '" + id + "'");
    		}
    		Response.Redirect("guestbook.asp");
    	}
    	else
    	{
    		Response.Redirect("guestbook.asp");
    	}
    %>
    
    
    
    
    
    <p align="center">
    
    <%
    	// CREO LA BARRA DI NAVIGAZIONE PER VISITARE "TUTTE LE PAGINE" CONTENENTI I VECCHI MESSAGGI
    	for (var x=0; x<Mostra.PageCount; x++)
    	{
    		if (pagina == (x + 1))
    		{
    			Response.Write("[" + (x + 1) + "] ");
    		}
    		else
    		{
    			Response.Write("[<a href=\"guestbook.asp?pagina=" + (x + 1) + "\">" + (x + 1) + "</a>] ");
    		}
    	}
    %>
    </p>
    
    <div align="center">
    
      <a href="rientro.swf" target="_self"><font face="sans-serif">Torna alla 
      Home Page</font></a>
    
    </div>
    <p align="center">
    	<form name="login" method="post" action="guestbook.asp?azione=<%Session("amministratore") == null ? Response.Write("Login") : Response.Write("Logout")%>">
    		<%if (Session("amministratore") == null) {%>
    		<input type="password" name="password">
    		<%}%>
    		<input type="submit" value="<%Session("amministratore") == null ? Response.Write("Login") : Response.Write("Logout")%>">
    	</form>
    </p>
    
    </body>
    </html>
    <%connessione.Close()%>
    Tutti i trucchi e i segreti del tuo pc su
    www.guidailtuopc.com

  2. #2
    Utente di HTML.it L'avatar di Edipo
    Registrato dal
    May 2003
    Messaggi
    1,239
    Alla fine.

    <%
    connessione.Close
    Set connesione = Nothing
    %>
    "Il tempo aiuta a dimenticare e il destino regala sempre una seconda occasione.
    Ma aprirsi all'amore significa rendersi vulnerabili".

    Nicholas Sparks

  3. #3
    Se metto cosi mi da questo errore :


    Tipo di errore:
    Errore di compilazione di Microsoft JScript (0x800A03EC)
    Previsto ';'
    /mattipc/guestbook.asp, line 301, column 4
    set connessione = Nothing
    ---^
    Tutti i trucchi e i segreti del tuo pc su
    www.guidailtuopc.com

  4. #4

  5. #5
    Niente mi da sempre questo errore o provato anche a mettere il punto e virgola ma sempre errore.

    Tipo di errore:
    Errore di compilazione di Microsoft JScript (0x800A03EC)
    Previsto ';'
    /mattipc/guestbook.asp, line 302, column 4
    Set connesione = Nothing
    ---^
    Tutti i trucchi e i segreti del tuo pc su
    www.guidailtuopc.com

  6. #6
    Utente di HTML.it L'avatar di Edipo
    Registrato dal
    May 2003
    Messaggi
    1,239
    Originariamente inviato da mattorock
    Niente mi da sempre questo errore o provato anche a mettere il punto e virgola ma sempre errore.

    Tipo di errore:
    Errore di compilazione di Microsoft JScript (0x800A03EC)
    Previsto ';'
    /mattipc/guestbook.asp, line 302, column 4
    Set connesione = Nothing
    ---^
    Mi sembra che in jScript le istruzioni devi terminarle con il ;
    Ciao.
    "Il tempo aiuta a dimenticare e il destino regala sempre una seconda occasione.
    Ma aprirsi all'amore significa rendersi vulnerabili".

    Nicholas Sparks

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    29
    la soluzione è molto + semplice:
    devi scrivere

    connessione.close() <--- hai dimenticato le parentesi,semplicissimo
    set connessione = nothing

  8. #8
    Originariamente inviato da Infocgi
    la soluzione è molto + semplice:
    devi scrivere

    connessione.close() <--- hai dimenticato le parentesi,semplicissimo
    set connessione = nothing

    Le parentesi sono ininfluenti, è la sintassi non corretta.
    Quella che hai riportato (come quelle sopra) riguardano VbScript, non Jscript.

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.