Δομή site

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

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

Απάντηση
ksamole
Δημοσιεύσεις: 92
Εγγραφή: 08 Οκτ 2006 04:43

Δομή site

Δημοσίευση από ksamole » 25 Νοέμ 2008 18:54

Εχω κανει μια σχεδιαση βασης με foreign keys οπου εχω πινακες categories και
pages, galleries , news , contact οπου ολα αυτα ανηκουνε σε categories.

Δηλαδη 1 category μπορει να εχει pages , news, galleries κτλπ...

Το θεμα ειναι πως θα φτιαξω το μενου ωστε πχ οταν μπαινεις σε μια category να ξερεις
απο πριν τι πρεπει να δειξεις.
Το index.php?categoryID=κατι δεν αρκει τι αλλο πρεπει να εχω?

Μπορει να δωσει καποιος καμια ιδεα ?

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Δομή site

Δημοσίευση από Basilakis » 25 Νοέμ 2008 19:21

Ναι αλλα το 1 πηγαίνει για το categories ή κάθε category έχει δικό του ID.

ΓΙατί έτσι πρέπει να είναι.

Ο πίνακας να είναι

categories και μετα
id1 pages
id2 news
id3 gallery

έτσι ώστε να κάνεις το

index.php?categoryID=1 και να φορτώνει αυτά που υπάρχουνε στο category ID Που είναι =1 δηλαδή το Pages.

Παρόλα αυτά πρέπει με αυτό τον τρόπο να έχεις ένα εμφολευμένο query που θα κάνει load περιεχόμενο απο το

pages, για να δεί το category και να εκτυπώσει αυτό που έχεις μέσα στο Pages.

Αλλα το περιεχόμενο του pages πώς θα εμφανιστεί; ας πούμε πως θέλεις να έχεις κάποιες σελίδες μέσα στον πίνακα pages

πρέπει λοιπόν να καλείς το categoryid=1 και μετά, κάθε Page ξεχωριστά...

index.php?categoryID=1&pageid=2

για τον πίνακα Pages, όπου PagID=2 η σελίδα που έχεις αντιστοιχήσει σε αυτό το ID

P.S.

to query μοιάζει κάπως έτσι

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

$categoryID = isset($_GET['categoryID']) ?intval($_GET['categoryID']):0;
$result = mysql_query("SELECT * from category WHERE categoryID='$categoryID'");
Προσοχή το intval ορίζει integer Value. εάν θέλεις να καλείς με βάση ίσως το όνομα στο query Σου δηλαδή

categoryID=1$page=contact

τότε πρέπει να το έχεις με strval

ksamole
Δημοσιεύσεις: 92
Εγγραφή: 08 Οκτ 2006 04:43

Δομή site

Δημοσίευση από ksamole » 25 Νοέμ 2008 19:39

Οχι στον πινακα για παραδειγμα pages εχω ενα foreign key categoryID που αναφερεται
στον πινακα Categories to ιδιο και στους πινακες news , galleries κτλπ

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Δομή site

Δημοσίευση από korgr » 25 Νοέμ 2008 20:09

Μάλλον πρέπει να το "πάρεις αλλιώς"...
Πιστεύω πως το πας ανάποδα.
Τα pages, galleries, news, contact, είναι κατ' ουσίαν sections (ιεραρχικά πάνω από το θέμα κατηγοριοποίηση).
Κάθε section μπορεί να έχει την δική του κατηγοριοποίηση.
Επίσης στο σημείο του σχεδιασμού της βάσης που βρίσκεσαι πρέπει αν έχεις πάνω από μία γλώσσα να το λάβεις σοβαρά υπ' όψιν.
Αν δεις πως η δομή σε οδηγεί σε fields του τύπου "name_gr", "name_en" κλπ, έχεις ήδη πάρει "στραβό" δρόμο και θα εγκλωβιστείς σε μελλοντική προσθήκη γλώσσας.

ksamole
Δημοσιεύσεις: 92
Εγγραφή: 08 Οκτ 2006 04:43

Δομή site

Δημοσίευση από ksamole » 25 Νοέμ 2008 20:55

τις γλωσσες τις εχω παρει χαμπαρι....

σχεδον ολοι οι πινακες εχουνε και τον αντιστοιχο πινακα language
και κανω joins και ολα συνδεονται με κεντρικο πινακα languages με foreign keys
οποτε μολις σβησεις πχ μια γλωσσα σβηνεται και οτι περιοχομενο σχετιζεται με τη γλωσσα αυτη

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

Αλλα με τον αλλο τροπο εχεις ποιο οργανωμενη δομη καλυτερα sitemaps κτλπ.
Θα προτιμησω τον τροπο σου αμα δε σκευτω τιποτα καλυτερο η δε βρω κανα ετοιμο cms
να καλυπτει τις αναγκες μου.

α και κατι αλλο...

πως μπορω να εχω links της μορφης langID/1/categoryID/1 αντι langID=1&categoryID=1
εχω δει πολλα sites και το κανουνε..

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Δομή site

Δημοσίευση από Basilakis » 26 Νοέμ 2008 02:51

Το τελευταίο οι μορφές γίνονται με Mod rewrite Στον apache.

αλλα έχεις ακόμη για να φτάσεις σε αυτό.

Φτιάξε την SQL σου πρώτα, γιατί υπάρχει χάος.

ksamole
Δημοσιεύσεις: 92
Εγγραφή: 08 Οκτ 2006 04:43

Δομή site

Δημοσίευση από ksamole » 01 Δεκ 2008 19:55

τελικα το ξαναειδα και ποιο καλη δομη ειναι να εχεις
κατηγοριες/υποκατηγορίες κτλπ και εκει μεσα να εχεις τα sections

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6228
Εγγραφή: 30 Νοέμ 2004 03:09

Δομή site

Δημοσίευση από fafos » 01 Δεκ 2008 22:31

ksamole έγραψε:τελικα το ξαναειδα και ποιο καλη δομη ειναι να εχεις
κατηγοριες/υποκατηγορίες κτλπ και εκει μεσα να εχεις τα sections
ekshghse mas giati einai kalytera (giati kanoume tosa xronia auto to lathos)

ksamole
Δημοσιεύσεις: 92
Εγγραφή: 08 Οκτ 2006 04:43

Δομή site

Δημοσίευση από ksamole » 01 Δεκ 2008 23:35

αν δεν το κανεις ετσι πως θα κανεις τα navigation links ?

π.χ. Ειστε στο: /home/category1/subcategory1 κτλπ?

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6228
Εγγραφή: 30 Νοέμ 2004 03:09

Δομή site

Δημοσίευση από fafos » 02 Δεκ 2008 00:12

ksamole έγραψε:αν δεν το κανεις ετσι πως θα κανεις τα navigation links ?

π.χ. Ειστε στο: /home/category1/subcategory1 κτλπ?
oi categories kai subcategories orizontai apo ta id pou tous dineis.. oi titloi einai "analosimo" pedio gia na mporeis opote thes na tous epeksergasths (allagh onomasia, diagrafh, metafora se allh kathgoria klp)

etsi loipon otan exeis kapoia section p.x. news ekei mesa exeis ena pedio subcategory... kalontas to new "tade" ksereis oti h subcategory "1" anhkei sthn category "3" klp..

kalontas thn diadromh http://www.tositemou.gr/subcategorynews/1/ tha sou emfanisei ola ta news pou anhkoun sthn subcategory "1" ara anhkoun kai sthn category "3"...


kalontas to new me id "123" ksereis oti anhkei sthn subcategory "1" h opoia anhkei sthn category "3"....

opote tha einai etsi:

Ειστε στο: /home/category3/subcategory1/new123/

kai to url tha einai aplos: http://www.tositemou.gr/new/123/


den mporo na ta po poio mperdemena!! :roll:

ksamole
Δημοσιεύσεις: 92
Εγγραφή: 08 Οκτ 2006 04:43

Δομή site

Δημοσίευση από ksamole » 08 Δεκ 2008 17:50

δεν εβγαλα ακρη....

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

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

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