Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Aiuto con ASP

  1. #1

    Aiuto con ASP

    Ciao a tutti,premetto che di ASP non so nulla...vi volevo esporre il mio problema...

    Ho trovato sul web un guestbook molto semplice ma molto personalizzabile difatti sono riuscito a integrarlo perfettamente con il mio sito.

    Questo è composto da 4 files:

    1.nuovo_messaggio.htm

    Dove è contenuto il form di invio dei dati inseriti.
    Questo è lo script:

    <html>
    <head><title>Firma il libro degli ospiti</title></head>
    <body>
    <h1>Libro degli ospiti</h1>
    Introduci il tuo messaggio ed invia il modulo
    <hr>
    <form action="inserisci_messaggio.asp" method="post">
    Nome: (*)

    <input type="text" name="nome">

    E mail:

    <input type="text" name="email">

    Home Page:

    <input type="text" name="homepage" value="http://">

    Messaggio: (*)

    <textarea rows="5" cols="30" name="messaggio"></textarea>


    <input type="submit" value="Invia">
    <input type="reset" value="Cancella">
    </form>
    <hr>
    I campi contrassegnati da (*) sono obbligatori
    </body>
    </html>


    2.inserisci_messaggio.asp

    che gestisce l'invio dei messaggi (credo)
    Questo è il codice:

    <%@ LANGUAGE = JScript %>
    <%
    function togliInvio(str) {
    var cars;
    var str2 = "";
    for (c=0;c<str.length;c++) {
    cars = str.charCodeAt(c);
    if (cars!=13 && cars!=10) {
    str2 += str.charAt(c);
    } else {
    if (cars==13) str2 += " ";
    }
    }
    return str2;
    }

    // Ricezione del form
    var nome = String(Request.Form("nome"));
    if (nome=="undefined") nome = "";
    var email = String(Request.Form("email"));
    if (email=="undefined") email = "";
    var homepage = String(Request.Form("homepage"));
    if (homepage=="undefined" || homepage=="http://") homepage = "";
    var messaggio = String(Request.Form("messaggio"));
    if (messaggio=="undefined") messaggio = "";

    // Controllo campi obbligatori
    if (nome=="" || messaggio=="") {
    Response.Write("Non hai compilato tutti i campi obbligatori! Torna indietro e correggi.");
    Response.End;
    }

    // Elimina eventuali "invii" dai vari campi
    // Evita così che un campo possa andare su più di una riga
    nome = togliInvio(nome);
    email = togliInvio(email);
    homepage = togliInvio(homepage);
    messaggio = togliInvio(messaggio);

    var fso = new ActiveXObject("Scripting.FileSystemObject");

    // Legge i messaggi vecchi
    var in_stream = fso.OpenTextFile(Server.MapPath("messaggi.txt"));
    var vecchi = in_stream.ReadAll();
    in_stream.Close();

    // Crea il nuovo file
    var out_stream = fso.CreateTextFile(Server.MapPath("messaggi.txt")) ;
    out_stream.WriteLine(nome);
    out_stream.WriteLine(email);
    out_stream.WriteLine(homepage);
    out_stream.WriteLine(messaggio);
    out_stream.WriteLine();
    out_stream.Write(vecchi);
    out_stream.Close();

    Response.Redirect("guestbook.asp");
    %>


    3.guestbook.asp
    ossia la pagina che conterrà i messaggi inseriti.
    questo è lo scritp:

    <%@ LANGUAGE = JScript %>
    <%
    // Apertura dello stream verso il file di testo
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var stream = fso.OpenTextFile(Server.MapPath("messaggi.txt"));
    %>
    <html>
    <head><title>*Canebullo* *Guestbook*</title></head>
    <LINK REL="stylesheet" TYPE="text/css" href="stileguest.css">
    <body>

    <div id="Messaggi">

    [ FIRMA IL GUESTBOOK ]



    <%
    while (!stream.AtEndOfStream) {
    Response.Write("<hr>");
    aux = stream.ReadLine();
    Response.Write("<div>nome:</div>" + aux + "
    ");
    aux = stream.ReadLine();
    if (aux!="") Response.Write("<div>e-mail:</div> " + aux + "
    ");
    aux = stream.ReadLine();
    if (aux!="") Response.Write("<div>sito:</div> " + aux + "
    ");
    aux = stream.ReadLine();
    Response.Write("<div>messaggio:</div>
    " + aux + "

    ");
    stream.SkipLine();
    }
    stream.Close();
    %>

    <hr width="300" size="1" color="#3B3C33" align="right">
    </div>
    </body>
    </html>

    4.messaggi.txt
    che funge da database.

    Il miei problemi sono i seguenti:

    vorrei avere un contatore, semplicissimo ovviamente, che mi conti i messaggi totali inseriti nel guestbook, ma non riesco a farlo (ossia impletare script presi da altri guest trovati sul web).

    in più vorrei che mi dividesse il guest in pagine ch visualizzano solo 5 messaggi per volta, mentre così com'è li mette tutti in un'unica pagina, risultando brutto esteticamente e poi col tempo risulterebbe lento a caricare...

    Sicuramente per voi saranno banalità, ma io sto a zero con asp...almeno finchè non trovo un bel corso!!!

    Se potete aiutarmi vi sarò grato a vita!!!

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Il problema è che hai scelto il peggior guesbook che potevi trovare.
    Quello che chiedi è estremamente facile se i messaggi li memorizzassi su un normalissimo database.
    Su un file txt diventa necessario scorrere tutte le righe per sapere quanti messaggi sono stati inseriti...
    Un carico eccessivo per il server.

    Roby

  3. #3

    Bene-....



    Grazie Roby, mi è di consolazione....
    Ma usando gli script che ho non posso inserire un database di access???

    Dimmi che si può fare sennò sono fregato e devo rifare tutto!!!

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Certo che si può ma non è che lo prendi e lo inserisci.
    Devi riscrivere tutto dal principio.

    Roby

  5. #5

    Capito...

    dunque devo riniziare...
    sai mica darmi un consiglio per trovare un guest cosi semplice ma con un database access?

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.