background image

 

 

54 

 

Με τη λειτουργία get_input_text ο χρήστης εισάγει τα δεδομένα του στα πεδία του ονόματος 

και της ηλικίας. Αν στο πεδίο της ηλικίας δεν εισαχθεί αριθμός, αλλά κείμενο, τότε εμφανίζεται 

μήνυμα, το οποίο ενημερώνει τον χρήστη. 

 

Εικόνα 25.Ασφάλεια εισαγωγής ηλικίας 

    user_name = get_input(screen, font, "Enter your name:") 
    user_age = get_input(screen, font, "Enter your age:", numeric_only=True) 

 

Αν το numeric_only είναι ίσο με True τότε γίνεται ο διαχωρισμός του ονόματος και της ηλικίας, 

όπου μπορεί να καταχωρηθεί μόνο αριθμός. 

 

Αριθμός Ερωτήσεων 

Με  την  add_user_topic_num_settings  καταχωρείται  στη  βάση  δεδομένων  ο  αριθμός  των 

ερωτήσεων που θέλει να δεχθεί ο χρήστης, ανα θεματική.

 

    def add_user_topic_num_settings(user_id, topics_num_settings): 

        conn = sqlite3.connect('topics.db') 
        cursor = conn.cursor() 
        for topic, num_questions in topics_num_settings.items(): 

            # set the initial_num_questions as equal to num_questions 
            initial_num_questions = num_questions 
            cursor.execute(''' 
                INSERT 

OR 

REPLACE 

INTO 

user_topics 

(user_id, 

topic, 

num_questions, 

initial_num_questions) VALUES (?, ?, ?, ?) 
            ''', (user_id, topic, num_questions, initial_num_questions)) 
        

        conn.commit() 
        conn.close() 

 

 

 Επιτρέπεται  η  επιλογή  από  0  έως  10  ερωτήσεων.  Αν  ο  αριθμός  ξεπεραστεί  ή  εισαχθεί  μη 

αριθμητικός  χαρακτήρας,  εμφανίζεται  μήνυμα,  που  ενημερώνει  το  χρήστη  για  τη  σωστή 

συμπλήρωση του πεδίου. Το ίδιο συμβαίνει και στην περίπτωση που ο χρήστης δεν εισάγει 

αριθμό αλλά οποιοδήποτε άλλο σύμβολο.