New2Programming
New2Programming

Reputation: 383

Writing to a text file using ASP

Im totally new to ASP so any help would be very grateful. I have a html page which has a form for users to leave their details and when they submit it goes to a text file fine but what I want is once they have submitted it I want to have an alert saying "comment saved" and to stay on the original page so they can submit another if they choose but when the user submits it goes to a blank page. My Form is

<form method="post" action="comments.asp">
<br><br>
Age <input type="text" name="age" />
Name<textarea rows="1" cols="70" <input type="text" name="name" /></textarea> 
<input type="submit" value="Send Comment">
</form>

my comments.asp file code is

<%
Dim age, name
age = Request.Form("age")
name = Request.Form("name")
dim fs,f
set fs=Server.CreateObject("Scripting.FileSystemObject")
set f=fs.OpenTextFile("C:\Inetpub\wwwroot\Wiki\Comments.txt",8,true)
f.WriteLine(age & " " & date() & " " & name)
f.Close
set f=nothing
set fs=nothing
%>

Upvotes: 5

Views: 13664

Answers (3)

ˈvɔlə
ˈvɔlə

Reputation: 10242

For those of you writing ASP with JScript instead of VBS, the code might look something like this:

var fileSystemObject = Server.CreateObject("Scripting.FileSystemObject");
var textStream = fileSystemObject.CreateTextFile(filePath, true, true);
textStream.Write(fileContent);
textStream.Close();
delete textStream;
delete fileSystemObject;

Documentation references:

Upvotes: 2

Marko
Marko

Reputation: 16

namespace A6
{
    public partial class imanik : System.Web.UI.Page
    {
        public class RedTabele {
            public string sifra { get; set; }
            public string ime { get; set; }
            public string prezime { get; set; }
            public string adresa { get; set; }
            public string mesto { get; set; }
            public string broj { get; set; }
            public string mail { get; set; }
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                // Lista za mesta
                List<string> mesta = new List<string>();

                using (StreamReader sr = new StreamReader(Server.MapPath("imenik.txt")))
                {
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {
                        /* line = Шифра корисника | Име | Презиме | Адреса | Место | Број телефона | e-mail  */
                        string[] podeljeno = line.Split('|');

                        string mesto = podeljeno[4];

                        mesto = mesto.Trim();

                        mesta.Add(mesto);



                    }
                }

                List<string> bezDuplikata = mesta.Distinct().ToList();
                for (int i = 0; i < bezDuplikata.Count; i++)
                {
                    ListaMesto.Items.Add(bezDuplikata[i]);
                }
            }

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            // sakri i ocisti table 
            Table1.Rows.Clear();
            Table1.Visible = false;

            // uzimanje podataka iz txtboxova
            string ime = txtIme.Text;
            string prezime = txtPrezime.Text;
            string adresa = txtAdresa.Text;
            string mesto = ListaMesto.Text;
            string br = txtTel.Text;

            // lista rezultata
            // Gore smo napravili klasu za ovo
            List<RedTabele> rezultati = new List<RedTabele>();

            using (StreamReader sr = new StreamReader(Server.MapPath("imenik.txt")))
            {
                string line;
                while ((line = sr.ReadLine()) != null)
                {
                    /* line = Шифра корисника | Име | Презиме | Адреса | Место | Број телефона | e-mail  */
                    string[] podeljeno = line.Split('|');

                    string sifraTXT = podeljeno[0];
                    string imeTXT = podeljeno[1];
                    string prezimeTXT = podeljeno[2];
                    string adresaTXT = podeljeno[3];
                    string mestoTXT = podeljeno[4];
                    string brTXT = podeljeno[5];
                    string mailTXT = podeljeno[6];

                    sifraTXT = sifraTXT.Trim();
                    imeTXT = imeTXT.Trim();
                    prezimeTXT = prezimeTXT.Trim();
                    adresaTXT = adresaTXT.Trim();
                    mestoTXT = mestoTXT.Trim();
                    brTXT = brTXT.Trim();
                    mailTXT = mailTXT.Trim();


                    bool ImeOk = true;
                    bool PrezimeOk = true;
                    bool AdresaOk = true;
                    bool MestoOk = true;
                    bool BrOk = true;

                    if (ime != "") {
                        ImeOk = imeTXT.StartsWith(ime);
                    }

                    if (prezime != "")
                    {
                        PrezimeOk = prezimeTXT.StartsWith(prezime);
                    }

                    if (adresa != "")
                    {
                        AdresaOk = adresaTXT.StartsWith(adresa);
                    }

                    if (br != "")
                    {
                        BrOk = brTXT.StartsWith(br);
                    }

                    if (mesto != mestoTXT)
                        MestoOk = false;



                    if (ImeOk && PrezimeOk && AdresaOk && MestoOk && BrOk)
                    {
                        rezultati.Add(new RedTabele { 
                            sifra = sifraTXT,
                            ime = imeTXT,
                            prezime = prezimeTXT,
                            adresa = adresaTXT,
                            mesto = mestoTXT,
                            broj = brTXT,
                            mail = mailTXT
                        });
                    }


                }

                // Create Table
                TableRow naslovna = new TableRow();
                Table1.Rows.Add(naslovna);

                TableCell tdSifra = new TableCell();
                tdSifra.Text = "Sifra";

                TableCell tdIme = new TableCell();
                tdIme.Text = "Ime";

                TableCell tdPrezime = new TableCell();
                tdPrezime.Text = "Prezime";

                TableCell tdAdresa = new TableCell();
                tdAdresa.Text = "Adresa";

                TableCell tdMesto = new TableCell();
                tdMesto.Text = "Mesto";

                TableCell tdBroj = new TableCell();
                tdBroj.Text = "Broj";

                TableCell tdMail = new TableCell();
                tdMail.Text = "Mail";

                naslovna.Cells.Add(tdSifra);
                naslovna.Cells.Add(tdIme);
                naslovna.Cells.Add(tdPrezime);
                naslovna.Cells.Add(tdAdresa);
                naslovna.Cells.Add(tdMesto);
                naslovna.Cells.Add(tdBroj);
                naslovna.Cells.Add(tdMail);
            

               

                
                for (int i = 0; i < rezultati.Count; i++) {
                    TableRow red = new TableRow();

                    TableCell sifraKol = new TableCell();
                    TableCell imeKol = new TableCell();
                    TableCell prezimeKol = new TableCell();
                    TableCell adresaKol = new TableCell();
                    TableCell mestoKol = new TableCell();
                    TableCell brojKol = new TableCell();
                    TableCell mailKol = new TableCell();

                    sifraKol.Text = rezultati[i].sifra;
                    imeKol.Text = rezultati[i].ime;
                    prezimeKol.Text = rezultati[i].prezime;
                    adresaKol.Text = rezultati[i].adresa;
                    mestoKol.Text = rezultati[i].mesto;
                    brojKol.Text = rezultati[i].broj;
                    mailKol.Text = rezultati[i].mail;

                    red.Controls.Add(sifraKol);
                    red.Controls.Add(imeKol);
                    red.Controls.Add(prezimeKol);
                    red.Controls.Add(adresaKol);
                    red.Controls.Add(mestoKol);
                    red.Controls.Add(brojKol);
                    red.Controls.Add(mailKol);

                    Table1.Rows.Add(red);
                }
               

                Table1.Visible = true;



            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
// Za tekstualne fajlove
using System.IO;

namespace A6
{
    public partial class imanik : System.Web.UI.Page
    {
        public class RedTabele
        {
            public string sifra { get; set; }

        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {

                List<string> mesta = new List<string>();

                using (StreamReader sr = new StreamReader(Server.MapPath("imenik.txt")))
                {
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {

                        string[] podeljeno = line.Split('|');

                        string mesto = podeljeno[4];

                        mesto = mesto.Trim();

                        mesta.Add(mesto);



                    }
                }

                List<string> bezDuplikata = mesta.Distinct().ToList();
                for (int i = 0; i < bezDuplikata.Count; i++)
                {
                    ListaMesto.Items.Add(bezDuplikata[i]);
                }
            }

        }

        protected void Button1_Click(object sender, EventArgs e)
        {

            Table1.Rows.Clear();
            Table1.Visible = false;


            string ime = txtIme.Text;
            string prezime = txtPrezime.Text;
            string adresa = txtAdresa.Text;
            string mesto = ListaMesto.Text;
            string br = txtTel.Text;


            List<RedTabele> rezultati = new List<RedTabele>();

            using (StreamReader sr = new StreamReader(Server.MapPath("imenik.txt")))
            {
                string line;
                while ((line = sr.ReadLine()) != null)
                {

                    string[] podeljeno = line.Split('|');

                    string sifraTXT = podeljeno[0];


                    sifraTXT = sifraTXT.Trim();



                    bool ImeOk = true;
                    bool PrezimeOk = true;
                    bool AdresaOk = true;
                    bool MestoOk = true;
                    bool BrOk = true;

                    if (ime != "")
                    {
                        ImeOk = imeTXT.StartsWith(ime);
                    }





                    if (ImeOk && PrezimeOk && AdresaOk && MestoOk && BrOk)
                    {
                        rezultati.Add(new RedTabele
                        {
                            sifra = sifraTXT,

                        });
                    }


                }

                // Create Table
                TableRow naslovna = new TableRow();
                Table1.Rows.Add(naslovna);

                TableCell tdSifra = new TableCell();
                tdSifra.Text = "Sifra";



                naslovna.Cells.Add(tdSifra);






                for (int i = 0; i < rezultati.Count; i++)
                {
                    TableRow red = new TableRow();

                    TableCell sifraKol = new TableCell();


                    sifraKol.Text = rezultati[i].sifra;


                    red.Controls.Add(sifraKol);


                    Table1.Rows.Add(red);
                }


                Table1.Visible = true;



            }
        }
    }
}

Upvotes: -2

ScotterMonkey
ScotterMonkey

Reputation: 1044

<%
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
'Open the file for writing
Set f = fso.CreateTextFile(s_path & "/" & s_file_being_created, True)
f.Write(m)
f.Close
Set f = Nothing
Set fso = Nothing
%>

Upvotes: 4

Related Questions