page2
import pandas as pd
import os
excel_file = 'contacts_data.csv'
def load_data():
if os.path.exists(excel_file):
return pd.read_csv(excel_file)
else:
return pd.DataFrame(columns=['Name', 'Emp_No', 'mail_id', 'Contact_1', 'Contact_2', 'Project', 'Location', 'Designation', 'Remarks'])
Function to save data to the Excel file
def save_data(df):
df.to_excel(excel_file, index=False)
Load existing data
data = load_data()
Page 1: Data Entry
def data_entry():
st.title("Contacts")
Name = st.text_input("Name", max_chars=200)
Emp_No = st.text_input("Emp_No", max_chars=100)
mail_id = st.text_input("mail_id", max_chars=500)
Contact_1 = st.text_input("Contact_1", max_chars=500)
Contact_2 = st.text_input("Contact_2", max_chars=500)
Project = st.text_input("Project", max_chars=500)
Location = st.text_input("Location", max_chars=500)
Designation = st.text_input("Designation", max_chars=500)
Remarks = st.text_input("Remarks", max_chars=500)
if st.button("Submit"):
new_entry = pd.DataFrame({
'Name': [Name],
'Emp_No': [Emp_No],
'mail_id': [mail_id],
'Contact_1': [Contact_1],
'Contact_2': [Contact_2],
'Project': [Project],
'Location': [Location],
'Designation': [Designation],
'Remarks': [Remarks]
})
data = load_data()
data = pd.concat([data, new_entry], ignore_index=True)
save_data(data)
st.success("Data entry saved successfully!")
Page 2: View Entries
def view_entries():
st.title("View Existing Data Entries")
if data.empty:
st.write("No entries found.")
else:
for index, row in data.iterrows():
st.markdown(f"[{row['Name']}]({row['Name']})")
if st.button(f"View {row['Name']}"):
st.write(f"**Emp_No:** {row['Emp_No']}")
st.write(f"**mail_id:** {row['mail_id']}")
st.write(f"**Contact_1:** {row['Contact_1']}")
st.write(f"**Contact_2:** {row['Contact_2']}")
st.write(f"**Project:** {row['Project']}")
st.write(f"**Location:** {row['Location']}")
st.write(f"**Designation:** {row['Designation']}")
st.write(f"**Remarks:** {row['Remarks']}")
Page 3: Edit Entries
def edit_entries():
st.title("Edit Data Entry")
entry_titles = data['Name'].tolist()
selected_entry = st.selectbox("Select an entry to edit", entry_titles)
if selected_entry:
entry_data = data[data['Name'] == selected_entry].iloc[0]
title = st.text_input("Name of the entry", value=entry_data['Name'], max_chars=200)
Emp_No = st.text_input("Emp_No", value=entry_data['Emp_No'], max_chars=100)
mail_id = st.text_input("Objemail_id", value=entry_data['mail_id'], max_chars=500)
Contact_1 = st.text_area("Contact_1", value=entry_data['Contact_1'], max_chars=5000)
Contact_2 = st.text_area("Contact_2", value=entry_data['Contact_2'], max_chars=5000)
Project = st.text_area("Project", value=entry_data['Project'], max_chars=5000)
Location = st.text_area("Location", value=entry_data['Location'], max_chars=5000)
Designation = st.text_area("Designation", value=entry_data['Designation'], max_chars=5000)
Remarks = st.text_input("Remarks", value=entry_data['Remarks'], max_chars=1000)
if st.button("Submit"):
data.loc[data['Name'] == selected_entry, ['Name', 'Emp_No', 'mail_id', 'Contact_1','Contact_2','Project','Location','Designation', 'Remarks']] = [Name, Emp_No, mail_id, Contact_1, Contact_2, Project, Location, Designation, Remarks1]
save_data(data)
st.success("Data e ntry updated successfully!")
Main function to control the app
def main():
st.sidebar.title("Navigation")
page3 = st.sidebar.radio("CONTACTS", ["Data Entry", "View Entries", "Edit Entries"], key="key1")
if page3 == "Data Entry":
data_entry()
elif page3 == "View Entries":
view_entries()
elif page3 == "Edit Entries":
edit_entries()
if name == "main":
main()