πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
tempo
Δημοσιεύσεις: 808
Εγγραφή: 25 Μάιος 2002 16:41
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από tempo » 16 Ιαν 2011 11:25

καλημέρα,

θέλω απο έναν πίνακα να παίρνω μερικές εγγραφές που θα προκύψουν αν εφαρμόσω ένα ερώτημα.
το θέμα είναι ότι θέλω να μπορώ να εφαρμόσω τις εγγραφές μια-μια ώστε να μπορέσω να εφαρμόσω την κατάλληλη μορφοποίηση με βάση ένα CSS αρχείο.

πως μπορεί να γίνει αυτό;

ευχαριστώ
http://www.automotonet.com πραγματικές καταναλώσεις αυτοκινήτων και μοτοσυκλετών όπως διαμορφώνονται απο τους οδηγούς
http://www.ipedia.gr online εγκυκλοπαίδεια με ερωτήσεις και απαντήσεις απο τους επισκέπτες

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2505
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από xultimatex » 16 Ιαν 2011 14:10

Αν χρησιμοποιείς php γίνεται έτσι:

Κώδικας: Επιλογή όλων

while ($row = mysql_fetch_array($result) ) {
  //Επεξεργασία μια μια σαν $row.
  // πχ $row[id]: Το πεδίο id της γραμμής (πρέπει να βάλεις τα πεδία σου έτσι)
}
Αυτός ο κώδικας παίρνει μια σειρά κάθε φορά!
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
tempo
Δημοσιεύσεις: 808
Εγγραφή: 25 Μάιος 2002 16:41
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από tempo » 16 Ιαν 2011 14:25

και πως θα βάλω μετρητή που να μετράει μέχρι το πλήθος των γραμμών που έχουν προκύψει (αυτές δηλ. που ικανοποιούν το ερώτημα απο το οποίο προέκυψαν). Αυτό το νούμερο δεν είναι σταθερό
http://www.automotonet.com πραγματικές καταναλώσεις αυτοκινήτων και μοτοσυκλετών όπως διαμορφώνονται απο τους οδηγούς
http://www.ipedia.gr online εγκυκλοπαίδεια με ερωτήσεις και απαντήσεις απο τους επισκέπτες

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2505
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από xultimatex » 16 Ιαν 2011 14:43

Μπορείς να πάρεις το πλήθος των γραμμών με την mysql_num_rows().

Αλλά αυτό δεν είναι απαρραίτητο. Η while που έγραψα θα εκτελεστεί για όσες γραμμές έχεις λάβει. Αυτόματα!
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
tempo
Δημοσιεύσεις: 808
Εγγραφή: 25 Μάιος 2002 16:41
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από tempo » 16 Ιαν 2011 14:46

τότε ποιό το νόημα της id?
Ομολογώ ότι δεν καταλαβαίνω αυτό που γράφεις "Το πεδίο id της γραμμής (πρέπει να βάλεις τα πεδία σου έτσι) " και για αυτό μάλλον μπερδεύτηκα
http://www.automotonet.com πραγματικές καταναλώσεις αυτοκινήτων και μοτοσυκλετών όπως διαμορφώνονται απο τους οδηγούς
http://www.ipedia.gr online εγκυκλοπαίδεια με ερωτήσεις και απαντήσεις απο τους επισκέπτες

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2505
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από xultimatex » 16 Ιαν 2011 14:49

Ο πίνακας τί πεδία έχει; Αν ήταν τηλεφωνικός κατάλαγος πχ "Ονομα" "Επίθετο" "Τηλέφωνο".
Κάθε γραμμή που θα λαμβάνεις θα έχει τιμές σε κάθε ένα από αυτά. Για να πάρεις το όνομα πχ θα πρέπει να γράψεις $row[onoma]. Εκεί πάει το id, δεν ξέρω τί πεδία έχεις και έβαλα ένα τυχαίο.
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
tempo
Δημοσιεύσεις: 808
Εγγραφή: 25 Μάιος 2002 16:41
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από tempo » 23 Ιαν 2011 13:43

παιδιά παιδεύομαι άλλα δεν μπορώ να το κάνω τελικά.....

μήπως μπορεί να βοηθήσει κάποιος πιο εξειδικευμένα;

δηλ. στο wordpress θέλω σε μια σελίδα να εμφανίζω τα περιεχόμενα ενός πίνακα (ας πούμε αρχικά όλα τα δεδομένα του πίνακα wp_comments που είναι στάνταρ πίνακας)

για να βάλω php κώδικα σε μια σελίδα χρησιμοποιώ το plugin exec-php. Μήπως μπορεί κάποιος να μου πει τι κώδικα να γράψω; αν τον έχω γραμμένο μετά θα προσπαθήσω να κάνω εγώ τις αλλαγές που θέλω.
http://www.automotonet.com πραγματικές καταναλώσεις αυτοκινήτων και μοτοσυκλετών όπως διαμορφώνονται απο τους οδηγούς
http://www.ipedia.gr online εγκυκλοπαίδεια με ερωτήσεις και απαντήσεις απο τους επισκέπτες

Άβαταρ μέλους
tempo
Δημοσιεύσεις: 808
Εγγραφή: 25 Μάιος 2002 16:41
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από tempo » 29 Ιαν 2011 15:03

τελικα φίλε xultimatex το έκανα όπως μου είπες και όλα ΟΚ.

ευχαριστώ πολύ για τον κόπο και τον χρόνο σου.

αν θέλω να δείξω πχ μόνο τις 10 πρώτες εγγραφές είναι εύκολο να το κάνω;
http://www.automotonet.com πραγματικές καταναλώσεις αυτοκινήτων και μοτοσυκλετών όπως διαμορφώνονται απο τους οδηγούς
http://www.ipedia.gr online εγκυκλοπαίδεια με ερωτήσεις και απαντήσεις απο τους επισκέπτες

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2505
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από xultimatex » 29 Ιαν 2011 18:17

Μπορείς να κρατάς ενα $i και να το αυξάνεις με κάθε εμφάνιση. Μόλις γίνει 10 σταματάς:

Κώδικας: Επιλογή όλων

$i=0
while ($row = mysql_fetch_array($result) ) {
  //Επεξεργασία μια μια σαν $row.
  // πχ $row[id]: Το πεδίο id της γραμμής (πρέπει να βάλεις τα πεδία σου έτσι)
 if ($i==10) break;
 $i++;
} 
Αν όμως θέλεις να κάνεις σελιδοποίηση πρέπει να προσαρμόσεις το query. Δηλαδή να μην τραβάει όλα τα comments με τη μια αλλά μόνο τα 10 πρώτα ξεκινώντας απο μια δωσμένη τιμή:

Κώδικας: Επιλογή όλων

$start = $_GET[start];
$end = $start + 10;
$query = "SELECT * FROM wp_comments WHERE ... LIMIT $start, $end";
Έτσι σε κάθε φόρτωμα της σελίδας η μεταβλητή start θα ορίζει από ποιο σημείο και μετά θα φορτώσει 10.

Κώδικας: Επιλογή όλων

show_comments.php?start=0
show_comments.php?start=11
κοκ.
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
tempo
Δημοσιεύσεις: 808
Εγγραφή: 25 Μάιος 2002 16:41
Επικοινωνία:

πως εμφανίζω τις εγγραφές που διαλέγω απο μια βάση

Δημοσίευση από tempo » 30 Ιαν 2011 13:18

ευχαριστώ λειτούργησε μια χαρά.....

δύο μόνο παρατηρήσεις:

αν βάλω στον 1ο κώδικα που δίνεις "if ($i==10) break;" τότε επιστρέφει 11 εγγραφές, οπότε για 10 εγγραφές βάζω if ($i==9) break;


για να μην παιδεύεται κανένας να βρει το λάθος στον 1ο κώδικα θέλει ; μετά το $i=0
http://www.automotonet.com πραγματικές καταναλώσεις αυτοκινήτων και μοτοσυκλετών όπως διαμορφώνονται απο τους οδηγούς
http://www.ipedia.gr online εγκυκλοπαίδεια με ερωτήσεις και απαντήσεις απο τους επισκέπτες

Απάντηση

Επιστροφή στο “MySQL”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης