ΔΟΜΗ. Στόχος της ώρας Δόμηση κώδικα Συνεργασία σε ομάδες Χωρισμός σε αρχεία Στυλ κώδικα Front-end και back-end Το πρότυπο MVC.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Οδηγός δημιουργίας ιστολογίου στο blogger.com
Advertisements

UNIX.
Δημιουργία Ιστοσελίδων σε HTML και FrontPage Πρόγραμμα Αναμόρφωσης Προπτυχιακών Σπουδών Κεντρικό Γραφείο Υποστήριξης Εκπαιδευτικού Έργου Αλέξανδρος Λεκατσάς.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
Τεχνικές Προγραμματισμού με την JavaScript Στυλιάδης Κων/νος Φλώρινα, Οκτώβριος 2004.
Sketchpad Χρήση του λογισμικού ΕΠΙΜΟΡΦΩΣΗ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΣΤΗΝ ΧΡΗΣΗ ΚΑΙ
ShareIt Social Network Project Simos Hatzikostas: Manolhs Georgiou: Theodoros Demetriou:
Copyright ©: SAMSUNG & Samsung Hope for Youth. Με επιφύλαξη κάθε νόμιμου δικαιώματος Εκπαιδευτικό υλικό Το Internet: Δημιουργία λογαριασμού .
WEB PAGE VIA WEEBLY. Α’ ΦΑΣΗ •Ενημέρωση Β’ ΦΑΣΗ •Συντονισμός Γ’ ΦΑΣΗ •Συλλογή και επεξεργασία πληροφοριών Δ’ ΦΑΣΗ •Υλοποίηση.
5η Συνάντηση Εκπαιδευτικών Πληροφορικής στη Δυτική Μακεδονία Πτολεμαΐδα, 29 Σεπτ 2005 Δημιουργία Δυναμικών Ιστοσελίδων με PHP και Dreamweaver MX Στυλιάδης.
Παρουσίαση της πλατφόρμας του καθηγητή
Εγκατάσταση & Διαχείριση
Copyright ©: SAMSUNG & Samsung Hope for Youth. Με επιφύλαξη κάθε νόμιμου δικαιώματος Εκπαιδευτικό υλικό Λογισμικό: Δημιουργία εφαρμογών Επίπεδο.
ΙΩΑΝΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΥ 1ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 5 ΟΚΤΩΒΡΙΟΥ 2012 ΑΙΘΟΥΣΑ Β4 11.
Γλώσσα Προγραμματισμού
Databases & Qt Μανούσης Πέτρος ΑΜ: 862
PL/SQL.
1 Εισαγωγή στις Βάσεις Δεδομένων  Ανάγκη Αποθήκευσης και Διαχείρισης Δεδομένων  Συστήματα Αρχείων  Συστήματα Βάσεων Δεδομένων  Παραδοσιακές και Σύγχρονες.
Στο λειτουργικό σύστημα Windows, υπάρχουν εικονίδια (icons) τα οποία αναπαριστούν τις διάφορες οντότητες (φυλαγμένες πληροφορίες, προγράμματα που κάνουν.
Τομέας Πληροφορικής ΙΕΚ ΔΕΛΤΑ Θεσσαλονίκη - Ιωάννινα
Δημιουργία Λογαριασμού
Microsoft ASP.NET Browser Web 2.0 CSS JavaScript Server Client Clients Κατσιώτης Ιωάννης Οικονομικό Πανεπιστήμιο Αθηνών
ΕΙΣΑΓΩΓΗ ΜΑΘΗΜΑ 1.
Μποχρίνη Σταυρούλα ΑΜ:3173 Σταθόπουλος Αναστάσιος ΑΜ:3220.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
ΕΣΔ 232: Οργάνωση δεδομένων στην Κοινωνία της Πληροφορίας © 2013 Nicolas Tsapatsoulis Φόρμες Δημιουργία Περιεχομένου Ι.
1 Εισαγωγή στις Βάσεις Δεδομένων  Ανάγκη Αποθήκευσης και Διαχείρισης Δεδομένων  Συστήματα Αρχείων  Συστήματα Βάσεων Δεδομένων  Παραδοσιακές και Σύγχρονες.
Message Passing Interface (MPI) Συστήματα Παράλληλης Επεξεργασίας Εργαστήριο Υπολογιστικών Συστημάτων Αθήνα, Δεκέμβριος 2002.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
Προηγμένη Εφαρμογή Ιστού Διαχείρισης Δεδομένων Βιοεπιστημών Διπλωματική Εργασία του Γεωργίου Πρέκα ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
Κουλίνας Μιχαήλ Α.Μ.:774 Μπουρνάζης Χρήστος Α.Μ.:792 Ρογκάκος Γεώργιος Α.Μ.:817.
Google Drive (διαμοιρασμός αρχείων
Asynchronous Javascript And XML (AJAX) Γιώργος Θάνος Παρασκευή 21 Νοεμβρίου 2008.
Δημιουργία προγράμματος ερωτηματολογίου Πολλαπλής Επιλογής Α. Σχεδίαση Φόρμας.
HTML-PHP Καμπέρης Άρης Α.Μ. 763 Zaher Owda Α.Μ. 849.
PHP 2. Στόχος της ώρας Εμβάθυνση στην PHP: Χωρισμός κώδικα σε αρχεία Εμβέλεια μεταβλητών Πίνακες foreach Συναρτήσεις αρχείων Χειρισμός ανεβασμένου αρχείου.
1. 1.Δημιουργία Νέου Αρχείου Επιλέγουμε καρτέλα File, πατούμε στην εντολή New και μετα αφου διαλέξουμε τον τύπo αρχείου (π.χ Blank Document), πατούμε.
ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τμήμα Μηχανικών Πληροφορικής ΤΕ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Κατασκευή Ιστοσελίδας Χρηματοοικονομικού.
Μπόλαρη Αγγελικη(1451) Επιβλέπων Βολογιαννίδης Σταύρος ΑΤΕΙ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ Σέρρες 2013.
Γνωριμία με το Λογισμικό του υπολογιστή Μια παρουσίαση για τους μαθητές της Α΄ Τάξης του 49ου Γυμνασίου Αθήνας Διδάσκων: Χ. Μοτσενίγος 49ο Γυμνάσιο Αθήνας.
Προγραμματιστικά Εργαλεία για το Διαδίκτυο Κατασκευή Ιστοσελίδων 3 ο Κεφάλαιο Βελώνης Γεώργιος – Καθηγητής Πληροφορικής ΠΕ20.
Παπαδημητρίου Δημήτριος Σιμώνης Εμμανουήλ Επιβλέπων καθηγητής: Δρ. Τσιμπίρης Αλκιβιάδης 1.
MATERIALS AND EQUIPMENT ΥΛΙΚΑ ΓΡΑΦΕΙΟΥ ΚΑΙ ΕΞΟΠΛΙΣΜΟΣ.
ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Αντικειμενοστραφής προγραμματισμός Web Site: ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ.
HTML/CSS: Εισαγωγή Θερινό Σχολείο, 14 – 20 Ιουλίου 2014 Γιώργος Φουρτούνης Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας.
ΔΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙΔΩΝ Ένας Συνοπτικός Οδηγός Καμήλαλη Δέσποινα Μαθηματικός, MSc Πληροφορικής, Υποψήφια Διδάκτωρ Χαροκοπείου Πανεπιστημίου Αθηνών.
Αρχεσ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Η/Υ ΤΑξη Β΄
Βάσεις Δεδομένων Ι Εισαγωγή
Prolog Επεξεργασία και Αναπαράσταση Γνώσης Εισαγωγή
Θερινό Σχολείο, 14 – 20 Ιουλίου 2014
ΔΗΜΙΟΥΡΓΙΑ BLOG wordpress
Java DataBase Connectivity
Εφαρμογές Υπολογιστών
Γνωριμία με το Λογισμικό του Υπολογιστή
Μάθημα 7 Φόρμες IΙ.
Σχολή Τεχνολογικών Εφαρμογών
Από τα Δεδομένα στην Πληροφορία………………….
Μιχαλάκη Αικατερίνη – AEM: 2414 Μπελμέζα Βασιλική – ΑΕΜ: 2629
Ενότητα 2 : Το σύστημα βάσεων δεδομένων MySQL (II) Ιωάννης Τσούλος
Πως δημιουργούμε ένα Wiki στο PBWorks
Server-side vs Client-side
Εισαγωγή Ζούμε σε μια online εποχή όπου τα περισσότερα γίνωνται με τη χρήση Η/Υ. Με την διάδοση του internet έχουν δημιουργηθεί νέες τεχνολογίες και.
ΕΦΑΡΜΟΓΗ Κ.Ε.Α. Γνωριμία με την πλατφόρμα διαχείρισης του Κοινωνικού Εισοδήματος Αλληλεγγύης για χρήστες Δήμων Η.ΔΙ.Κ.Α. Α.Ε.
ΔΗΜΙΟΥΡΓΙΑ BLOG Στις διαφάνειες περιγράφονται τα διαδοχικά βήματα για τη δημιουργία blog στον blogger, τη μια από τις δωρεάν υπηρεσίες σχετικού λογισμικού,
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
Ερωτήματα Επιλογής σε ACCESS
Γρήγορη αναφορά του Lync 2013 για Office 365
Ερωτήματα Επιλογής σε ACCESS
UNIT 1 Τα Πρώτα Προγράμματα.
Μεταγράφημα παρουσίασης:

ΔΟΜΗ

Στόχος της ώρας Δόμηση κώδικα Συνεργασία σε ομάδες Χωρισμός σε αρχεία Στυλ κώδικα Front-end και back-end Το πρότυπο MVC

Τίποτα δεν γίνεται από έναν Facebook: 4 ιδρυτές 1700 άτομα σήμερα Google: 2 ιδρυτές άτομα σήμερα Microsoft: 2 ιδρυτές Apple: 3 ιδρυτές YouTube: 3 ιδρυτές …πρέπει να μάθουμε να συνεργαζόμαστε!

Δόμηση κώδικα Καθαρότερος κώδικας για εμάς Επεξεργασία μετά από ένα μήνα ή ένα χρόνο Καθαρότερος κώδικας για τους άλλους Κι άλλοι διαβάζουν τον κώδικά σας Πρέπει να τον καταλάβουν Πρέπει να τον αλλάξουν Πρέπει να τον ξανακαταλάβουμε …χρειαζόμαστε μία κοινή συνισταμένη

Δόμηση κώδικα Πλεονεκτήματα ορθής δόμησης: Maintainability Ο κώδικας μπορεί να αλλάξει εύκολα Είναι προσαρμόσιμος Είναι επεκτάσιμος Είναι ευανάγνωστος Εκφράζει την σκέψη μας

Programs must be written for people to read, and only incidentally for machines to execute.

Στυλ κώδικα Το στυλ κώδικα ορίζει την μορφή του κώδικα Πού έχει κενά και πού όχι Πόσα κενά έχει Πότε γίνεται indentation Πότε γίνονται αλλαγές γραμμών κ.ό.κ.

Δύο διαφορετικά στυλ if ( isset( $foo[ ‘bar’ ] ) ) { doSomething(); } else { doSomethingElse(); } if(isset($Foo[‘bar’])) { DoSomething(); } else { DoSomethingElse(); } κενό απουσία κενού { δίπλα στο if { κάτω από το if

Στυλ κώδικα Ασυνέπεια: if ( $a ) { doSomething(); } else { doSomethingElse(); }

Στυλ κώδικα Δεν έχει σημασία ποιο στυλ χρησιμοποιείτε Δεν έχει σημασία αν έχετε πολλά κενά ή λίγα Διαλέξτε ένα στυλ και κρατήστε το Μία ομάδα  Ένα στυλ Ένα λογισμικό  Ένα στυλ Συνέπεια! Οτιδήποτε άλλο είναι αντιπαραγωγικό

Στυλ κώδικα Αν διαφωνείτε στο στυλ... Πιο σημαντικό να γράφετε στο ίδιο στυλ με τους συναδέλφους σας Παρά να γράφετε σε διαφορετικά στυλ στην ίδια ομάδα Σε ένα ήδη υπάρχον project, χρησιμοποίησε το στυλ που βλέπεις ήδη

Στυλ κώδικα Υπάρχουν έτοιμες προτάσεις Mozilla Google και άλλες. Αναζητήστε για “Coding Style” Βρείτε μία που σας ταιριάζει

Συνεργασία σε ομάδες Απαιτείται καταμερισμός εργασιών Αυτό σημαίνει σωστή δόμηση Χωρισμός σε αρχεία Όλοι πρέπει να συμφωνήσουμε: Τι είδους κώδικα γράφουμε πού; Πού θα γραφεί ο κώδικας... PHP, για την σύνδεση στη βάση δεδομένων; HTML, για την φόρμα δημιουργίας λογαριασμού; SQL, για την δημιουργία λογαριασμού; Κάθε πράγμα πρέπει να έχει μία θέση

Χωρισμός σε αρχεία Πρώτη ιδέα: Αντί να έχω ένα μεγάλο αρχείο, έχω πολλά μικρότερα Ευκολότερη συνεργασία Ο καθένας δουλεύει στα αρχεία που τον αφορούν

Συναρτήσεις Επαναχρησιμοποίηση κώδικα Συχνά μπορούν να χρησιμοποιηθούν σε αρχεία

Front-end και back-end Η πρώτη μεγάλη ιδέα! Front-end: Κώδικας που αναφέρεται στην διεπαφή χρήστη PHP που παράγει άμεσα HTML Στατικό HTML CSS Javascript Εικόνες κ.ό.κ.

Front-end και back-end Back-end: Κώδικας που επεξεργάζεται τα δεδομένα PHP που δεν παράγει HTML Συναρτήσεις επεξεργασίας δεδομένων Συναρτήσεις αποθήκευσης δεδομένων SQL

Front-end Back-end

Front-end και back-end Χωρίζουμε σε ξεχωριστά αρχεία Το front-end Το back-end Στο front-end δεν υπάρχει SQL Στο back-end δεν υπάρχει HTML/CSS Το front-end περιγράφει την παραγωγή της διεπαφής χρήστη Το back-end περιγράφει την επεξεργασία, αποθήκευση, ανάκτηση δεδομένων

Front-end και back-end Ας τα χωρίσουμε! Το back-end συχνά αναφέρεται και ως models Συχνό φαινόμενο σε web εφαρμογές: Φάκελος models που περιέχει τον back-end κώδικα

Decoupling Κάθε τμήμα κώδικα γνωρίζει μόνο όσα χρειάζεται να γνωρίζει Κάθε είδους «γνώση» υπάρχει μόνο σε ένα σημείο του κώδικά μας Front-end γνωρίζει: Ότι χρησιμοποιούμε HTML Ποια έκδοση της HTML χρησιμοποιούμε Back-end γνωρίζει: Ότι χρησιμοποιούμε MySQL Ποια έκδοση της MySQL χρησιμοποιούμε Ποιο είναι το σχήμα μας

Decoupling Front-end δεν γνωρίζει: Αν χρησιμοποιούμε αρχεία ή βάση δεδομένων για αποθήκευση Αν αποθηκεύω το όνοματεπώνυμο ως όνομα + επώνυμο Αν τα δεδομένα προέρχονται από ανάκτηση ή από υπολογισμό Back-end δεν γνωρίζει: Ότι παράγουμε HTML Αν χρησιμοποιούμε XHTML 1.0 Strict ή όχι Ότι ο χρήστης είναι άνθρωπος και όχι αράχνη

Τι είπαν οι άλλοι <?php $res = mysql_query( "SELECT username, text FROM shouts CROSS JOIN users ON shouts.userid = users.userid ORDER BY created DESC;” ); while ( $row = mysql_fetch_array( $res ) ) { ?> <?php echo $row[ 'username' ]; ?>: <?php echo $row[ 'text' ]; ?> <?php } ?> back-end front-end

Σαλάτα από τον Chiot's RunChiot's Run

Τι είπαν οι άλλοι <?php $res = mysql_query( "SELECT username, text FROM shouts CROSS JOIN users ON shouts.userid = users.userid ORDER BY created DESC;” ); while ( $row = mysql_fetch_array( $res ) ) { ?> <?php echo $row[ 'username' ]; ?>: <?php echo $row[ 'text' ]; ?> <?php } ?> back-end front-end

Πώς θα χωρίσουμε αυτό τον κώδικα; Το HTML στο front-end Η SQL στο back-end

models/shouts.php: $res = mysql_query( "SELECT username, text FROM shouts CROSS JOIN users ON shouts.userid = users.userid ORDER BY created DESC;” ); back-end

Τι είπαν οι άλλοι <?php include ‘models/shouts.php’; while ( $row = mysql_fetch_array( $res ) ) { ?> <?php echo $row[ 'username' ]; ?>: <?php echo $row[ 'text' ]; ?> <?php } ?> front-end ? back-end έλλειψη διαφάνειας αναφοράς

Τι είπαν οι άλλοι <?php include ‘models/shouts.php’; $shouts = GetShouts(); foreach ( $shouts as $shout ) { ?> <?php echo $shout[ 0 ]; ?>: <?php echo $shout[ 1 ]; ?> <?php } ?> διεπαφή (API) front-end/back-end

models/shouts.php: function GetShouts() { $rows = array(); $res = mysql_query( "SELECT username, text FROM shouts CROSS JOIN users ON shouts.userid = users.userid ORDER BY created DESC;” ); while ( $row = myql_fetch_array( $res ) ) { $rows[] = array( $row[ ‘username’ ], $row[ ‘text’ ] ); } return $rows; }

Front-end και back-end Back-end που ζει στον φάκελο “models”: Εμπεριέχει όλη την λογική επικοινωνίας με την βάση Αποθήκευση Ανάκτηση Επεξεργασία Δεν γνωρίζει για τον τρόπο χρήσης των δεδομένων Δεν γνωρίζει από πού προήλθαν τα δεδομένα

Front-end και back-end Front-end: Εμπεριέχει όλη την λογική διεπαφής χρήστη Παραγωγή HTML CSS/JS Δεν γνωρίζει για τον τρόπο αποθήκευσης των δεδομένων Δεν γνωρίζει πώς ανακτούνται τα δεδομένα

Συνεργασία σε ομάδες Σε μία ομάδα ο κάθε προγραμματιστής επιλέγει αν θα ασχοληθεί με το back-end ή το front-end Ταχύτερη ανάπτυξη Δεν γράφεται το ίδιο πράγμα 2 φορές

if ( isset( $_SESSION[ 'username' ] ) && isset( $_POST[ 'shout' ] ) ) { $shout = $_POST[ 'shout' ]; mysql_query( " INSERT INTO shouts SET text = ' ". $shout. "', userid = ". $_SESSION[ 'userid' ]. ", created = NOW(); ” ); header( 'Location: index.php' ); } else { ?> Πρέπει να έχεις κάνει είσοδο. <?php } back-end front-end

models/shouts.php: function SaveShout( $userid, $text ) { mysql_query( "INSERT INTO shouts SET text = ‘$text', userid = $userid, created = NOW();” ); }

if ( isset( $_SESSION[ 'username' ] ) && isset( $_POST[ 'shout' ] ) ) { include ‘models/shouts.php’; SaveShout( $_SESSION[ ‘userid’ ], $_POST[ ‘shout’ ] ); header( 'Location: index.php' ); } else { ?> Πρέπει να έχεις κάνει είσοδο. <?php }

Τι είναι front-end και τι back-end? Εμφάνιση μηνύματος σφάλματος (Δεν έχεις κάνει login) Ανάγνωση δεδομένων GET Ανάγνωση δεδομένων POST Προσθήκη εγγραφής στη βάση δεδομένων Εμφάνιση κουμπιού που αποθηκεύει Χρήση mysql_fetch_array για ανάγνωση δεδομένων Εύρεση μέσου όρου βαθμολογιών μαθητών Χρωματισμός γραμμάτων διεπαφής με κόκκινο χρώμα

MVC Model-View-Controller Καλός ο διαχωρισμός Front-end / Back-end Back-end = Model Όμως στο Front-end μας μπλέκουμε δύο πράγματα Την παραγωγή της διεπαφής (View) Την συλλογή δεδομένων και τις απαραίτητες κλήσεις (Controller)

Views Αποκλειστικά υπεύθυνα για την παραγωγή διεπαφής Κυρίως HTML κώδικας Μόνο η απαραίτητη PHP π.χ. foreach για παραγωγή επαναλαμβανόμενων τμημάτων Πρόσβαση σε συγκεκριμένες ονομασμένες μεταβλητές Λέγονται και «Templates» ή πρότυπα

Controllers Αποφασίζουν ποιο view και ποιο model θα κληθεί Παίρνουν τα δεδομένα από τον χρήστη Δίνουν τα δεδομένα του χρήστη στο σωστό model Δίνουν τα δεδομένα του χρήστη και του model στο view Στέλνουν πίσω τα δεδομένα στον χρήστη Το «λεπτότερο» τμήμα Το πρώτο και τελευταίο πράγματα που τρέχει Έχει τον έλεγχο (controller = ελεγκτής)

Views Models Controller

if ( isset( $_SESSION[ 'username' ] ) && isset( $_POST[ 'shout' ] ) ) { include ‘models/models/shouts.php’; SaveShout( $_SESSION[ ‘userid’ ], $_POST[ ‘shout’ ] ); header( 'Location: index.php' ); } else { ?> Πρέπει να έχεις κάνει είσοδο. <?php } View Controller

if ( isset( $_GET[ 'username' ] ) ) { $res = mysql_query( “SELECT userid FROM users WHERE username = ‘“. $_GET[ ‘username’ ]. “’ LIMIT 1;” ) ); if ( mysql_num_rows( $res ) == 1 ) { ?>Username already taken :-( <?php } else { ?><input type=“text” value=“<?php echo $_GET[ ‘username’ ]; ?>” /><?php } else { ?> <?php } controller view model

1. Controller $exists = false; $username = ‘’; if ( isset( $_GET[ 'username' ] ) ) { include ‘models/user.php’; $exists = UsernameExists( $_GET[ ‘username’ ] ); $username = $_GET[ ‘username’ ]; } include ‘views/register.php’;

2. Model function UsernameExists( $username ) { $res = mysql_query( “SELECT userid FROM users WHERE username = ‘$username’ LIMIT 1;” ); return mysql_num_rows( $res ) == 1; }

2. View <?php if ( $exists ) { ?>Το όνομα χρήστη υπάρχει ήδη :-(<?php } ?> <input type=“text” value=“<?php echo $username; ?>” />

Σε ποιο τμήμα του MVC ανήκουν; Εμφάνιση μηνύματος σφάλματος (Δεν έχεις κάνει login) Ανάγνωση δεδομένων GET Ανάγνωση δεδομένων POST Προσθήκη εγγραφής στη βάση δεδομένων Εμφάνιση κουμπιού που αποθηκεύει Χρήση mysql_fetch_array για ανάγνωση δεδομένων Εύρεση μέσου όρου βαθμολογιών μαθητών Χρωματισμός γραμμάτων διεπαφής με κόκκινο χρώμα Include του view Include του model

Συγχαρητήρια! Μπορείτε να δομείτε τον κώδικά σας σωστά!

Την επόμενη φορά... Εισαγωγή στην Javascript Πόσες γλώσσες προγραμματισμού θα χρειαστούμε πια;