Michael Kalochristianakis

Electrical and Computer Engineer




IT is about logic and mathematics. It is also about application, innovation and the biggest and most available library the world has ever seen. And if people focus a little bit, the renowned 'digital gap' not only vanishes but sometimes gets replaced by pure interest for information or even knowledge

so, in a way, IT is about new things and freedom in the modern world. Of course, there is a lot of work but nothing really satisfactory comes too easily : )

IT is best when it is open and freely distributed. Check out these links: Free Software Foundation (FSF), GNU, Debian, Android, Android developers






'father of internet' joins tech leaders in condemning repeal plan

for testing purposes, property of the Museum of Medicine

λύνω

web programming

εργαστήρια 4 - 5: PHP και διασύνδεση με βάση δεδομένων

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

τι θα χρειστείτε:

αναφορά στην html βλ w3shools ή τις σημειώσεις τις θεωρίας του μαθήματος στο eclass
αναφορά για τη χρήση php, πχ php.net και στη βάση δεδομένων ΜySQL, mysql
για τη χρήση του πακέτου εξυπηρέτησης xampp μπορείτε να ανατρέξετε στην τεκμηρίωση του πακέτου, στη σελίδα του xampp
τις οδηγίες για τη χρήση του συστήματος ανάπτυξης και συγκεκριμένα για τη σύνδεση και χρήστη της βάσης δεδομένων

εργαστηριακή άσκηση

  • σε συνέχεια της προηγούμενης εργαστηριακής άσκησης που περιελάμβανε σελίδες υποβολής και αναφοράς των στοιχεών των σπουδαστών θα πρέπει να μεταβάλλετε τον κώδικα του έχετε ήδη γράψει ώστε τα στοιχεία των σπουδαστών να αποθηκεύονται σε βάση δεδομένων και να ανακτώνται από αυτήν. Για τον λόγο αυτόν θα πρέπει να εκτελέσετε τις παρακάτω εργασίες:
  •  
  • (α) δημιουργία της βάσης δεδομένων και των πινάκων
  •  
  • δημιουργήστε στη βάση δεδομένων πίνακα με όνομα data και εγγραφές αντίστοιχες με αυτές που είχατε ορίσει στη φόρμα εισόδου στοιχείων, δηλαδή: όνομα, επώνυμο, όνομα χρήστη, συνθηματικό, email, διεύθυνση, τμήμα, εξάμηνο και αριθμό μητρώου, που θα είναι το πρωτεύον κλειδί για τον πίνακα. Το sql ερώτημα που δημιουργήσει έναν τέτοιο πίνακα μπορεί να είναι το εξής:
    • create table data3 (id integer, name varchar(20), surname varchar(30), username varchar(20), password varchar(10), email varchar(20), address varchar(20), dpt varchar(20), semester integer, PRIMARY KEY(ID));
  •  
  • (β) χρήση της php για σύνδεση με τη βάση δεδομένων και την αποθήκευση στοιχείων
  •  
  • μεταβάλλετε κατάλληλα τον κώδικα της σελίδας report.php που λαμβάνει το http request με τα στοιχεία των σπουδαστών ώστε να αποθηκεύει τα στοιχεία πριν τα παρουσιάσει στον χρήστη. Μπορείτε να χρησιμοποιήστε τη συνάρτηση mysql_connect για τη σύνδεση με τη βάση δίνοντας τα κατάλληλα ορίσματα. Kάντε χρήση του λογαριασμού που δημιουργήσατε παραπάνω
    • $conn = mysqli_connect('διεύθυνση εξυπηρετητή', 'όνομα χρήστη', 'συνθηματικό', 'βάση δεδομένων') για τον χρήστη 1515
    • $conn = mysqli_connect('localhost', '1515', '1515-xaasxs', 'db1515')
  • μπορείτε να επιλέγετε την βάση δεδομένων με την εντολή
    • 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