'οι μάζες ουδέποτε εδίψασαν για αλήθεια. Αποστρέφονται τα πασιφανή γεγονότα που τις δυσαρεστούν και προτιμούν να θεοποιούν την πλάνη αν αυτή τις γοητεύει. Εκείνος ο οποίος γνωρίζει να προκαλεί αυταπάτες γίνεται εύκολα ο κύριος των μαζών, ενώ εκείνος που προσπαθεί να τις λυτρώσει από αυταπάτες είναι πάντοτε το θύμα τους... Ο μέγας παράγοντας της εξέλιξης των λαών ουδέποτε ήταν η αλήθεια αλλά η πλάνη ... οι μάζες οδηγούνται από τους μύθους, οι οποίοι πρέπει να απολοποιούν τις θεωρίες... Τίποτα δεν είναι πιο δύσκολο, πιο αβέβαιο, πιο επικύνδυνο από το να πάρει κανείς την πρωτοβουλία της εισαγωγής νέων θεσμών και εθίμων. Γιατί ο μεταρρυθμιστής έχει εχθρούς όλους εκείνους που έχουν άμεσο και απόλυτο συμφέρον να διατηρούνται οι παλιοί θεσμοί και βρίσκει απρόθυμους φίλους εκείνουν που θα ωφεληθούν από τους νέους', Ε. Λεμπέσης, ΤΟ ΒΗΜΑ, 2024
εργαστήρια 4 - 5: PHP και διασύνδεση με βάση δεδομένων
στην εργαστηριακή άσκηση αυτή θα δημιουργήσετε φόρμα, θα την υποβάλλετε και τα δεδομένα της θα αποθηκεύονται σε έναν πίνακα εντός μιας βάσης δεδομένων. Στη συνέχεια θα εκτυπώνετε τα στοιχεία της ώς αναφορά από μια σελίδα php.
τι θα χρειστείτε:
αναφορά στην html βλ w3shools ή τις σημειώσεις τις θεωρίας του μαθήματος στο eclass
αναφορά για τη χρήση php, πχ php.net και στη βάση δεδομένων ΜySQL, mysql
για τη χρήση του πακέτου εξυπηρέτησης xampp μπορείτε να ανατρέξετε στην τεκμηρίωση του πακέτου, στη σελίδα του xampp
τις οδηγίες για τη χρήση του συστήματος ανάπτυξης και συγκεκριμένα για τη σύνδεση και χρήστη της βάσης δεδομένων
εργαστηριακή άσκηση
σε συνέχεια της προηγούμενης εργαστηριακής άσκησης που περιελάμβανε σελίδες υποβολής και αναφοράς των στοιχεών των σπουδαστών θα πρέπει να μεταβάλλετε τον κώδικα του έχετε ήδη γράψει ώστε τα στοιχεία των σπουδαστών να αποθηκεύονται σε βάση δεδομένων και να ανακτώνται από αυτήν. Για τον λόγο αυτόν θα πρέπει να εκτελέσετε τις παρακάτω εργασίες:
(α) δημιουργία της βάσης δεδομένων και των πινάκων
δημιουργήστε στη βάση δεδομένων πίνακα με όνομα data και εγγραφές αντίστοιχες με αυτές που είχατε ορίσει στη φόρμα εισόδου στοιχείων, δηλαδή: όνομα, επώνυμο, όνομα χρήστη, συνθηματικό, email, διεύθυνση, τμήμα, εξάμηνο και αριθμό μητρώου, που θα είναι το πρωτεύον κλειδί για τον πίνακα. Το sql ερώτημα που δημιουργήσει έναν τέτοιο πίνακα μπορεί να είναι το εξής:
(β) χρήση της php για σύνδεση με τη βάση δεδομένων και την αποθήκευση στοιχείων
μεταβάλλετε κατάλληλα τον κώδικα της σελίδας report.php που λαμβάνει το http request με τα στοιχεία των σπουδαστών ώστε να αποθηκεύει τα στοιχεία πριν τα παρουσιάσει στον χρήστη. Μπορείτε να χρησιμοποιήστε τη συνάρτηση mysql_connect για τη σύνδεση με τη βάση δίνοντας τα κατάλληλα ορίσματα. Kάντε χρήση του λογαριασμού που δημιουργήσατε παραπάνω
$conn = mysqli_connect('διεύθυνση εξυπηρετητή', 'όνομα χρήστη', 'συνθηματικό', 'βάση δεδομένων') για τον χρήστη 1515
μπορείτε να επιλέγετε την βάση δεδομένων με την εντολή
mysqli_select_db('βάση δεδομένων')
αντίστοιχα, μπορείτε να χρησιμοποιήστε τη mysql_query για την εκτέλεση ερωτημάτων. Σχεδιάστε το ερώτημα προς τη βάση δεδομένων ώστε να είναι δυναμικό, υπό την έννοια ότι σε κάθε κλήση της σελίδας θα πρέπει να λαμβάνει τις διαφορετικές τιμές που υποβάλλονται από τον χρήστη. Το ερώτημα θα πρέπει να είναι της μορφής INSERT INTO DATA VALUES ('όνομα', 'επώνυμο', 'εξάμηνο', ... 'κτλ'). Χρησιμοποιήστε την $_GET["όνομα μεταβλητής αίτησης"] για να λαμβάνετε τις τιμές από την υποβολή και να τις εισάγετε στο παραπάνω ερώτημα.
$conn -> query('ερώτημα SQL')
πρέπει να ελέγχετε από το εργαλείο διαχείρισης της βάσης δεδομένων ότι τα δεδομένα όντως αποθηκεύονται σωστά
(γ) χρήση της php για σύνδεση με τη βάση δεδομένων και την ανάκτηση στοιχείων
δημιουργήστε σελίδα με όνομα usersList.php η οποία θα παρουσιάζει όλους τους χρήστες που έχετε εισάγει στο σύστημα, παραθέτοντας τo ΑΜ, και το ονοματεπώνυμο του χρήστη. Για την ανάκτηση των δεδομένων θα πρέπει να εκτελέσετε το κατάλληλο ερώτηματ τύπου SELECT στη βάση δεδομένων. Μπορείτε να χρησιμοποιήσετε τη συνάρτηση mysql_fetch_assoc(), η οποία παίρνει ως όρισμα το αποτέλεσμα της mysql_query και επιστρέφει array με τις τιμές μιας εγγραφής του πίνακα. Στη συνέχεια με $result['όνομα πεδίου'] μπορείτε να ανακτάτε τις τιμές των πεδίων.
μεταβάλλετε τον κώδικα κατάλληλα ώστε το ΑΜ του χρήστη να παρουσιάζεται ως link το οποίο θα κάνει η υποβολή στη σελίδα userDetails.php η οποία θα παρουσιάζει όλες τις πληροφορίες που περιλαμβάνονται στον πίνακα data για τον επιλεγμένο χρήστη.
August 2004