Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Εντάξη ανεβάζω κάτι πολύ απλό αλλά δεν ξέρω να φτάσω παραπάνω..Θέλω να φτιάξω μια μηχανή αναζήτησης για την ιστοσελίδα μου.Με αυτό το μονο που κατάφερα είναι να μου βγάζει όλα τα δεδομένα απο τη βάση που αρχίζουν από το πρώτο γράμμα της αναζήτησης, δεν έχει ακρίβεια δηλαδη.Θα ήθελα αν μπορείτε και γνωρίζετε να μου δώσετε τα φώτα σας για κάτι πιο επαγγελματικό..Ευχαριστώ.. :)

results.php

Δημοσ.

λοιπόν όμορφα, υπάρχει ο τρόπος που προσπαθείς να προσεγγίσεις το θέμα ναι δε λέω...

 

Αλλά υπάρχει και embeded (σε άψογα ελληνικά) μηχανισμός ο οποίος είναι ο FullTextIndex. Τον οποίο φυσικά και σου προτείνω ανεπιφύλακτα μιας και σου ταξινομεί τα αποτελέσματα βάσει "Relevance" - δηλαδή την σχετικότητα που έχει η λέξη που αναζήτησες, με τα δεδομένα της βάσης σου.

 

 

 

Δηλαδή θα κάνεις ένα FullTextIndex ως εξής:

ALTER TABLE `products` 
ADD FULLTEXT INDEX `test` (`description` ASC);
 
και στη συνέχεια απαξ και έχεις φτιάξει ένα FullText Index
 
Μπορείς να εκτελέσεις το ακόλουθο query: 
 
 
SELECT titlos_thematos, id, description, MATCH(description) AGAINST('$input') as Relevance
FROM description
Having Relevance > 0
ORDER BY Relevance DESC
Δημοσ.

 

λοιπόν όμορφα, υπάρχει ο τρόπος που προσπαθείς να προσεγγίσεις το θέμα ναι δε λέω...

 

Αλλά υπάρχει και embeded (σε άψογα ελληνικά) μηχανισμός ο οποίος είναι ο FullTextIndex. Τον οποίο φυσικά και σου προτείνω ανεπιφύλακτα μιας και σου ταξινομεί τα αποτελέσματα βάσει "Relevance" - δηλαδή την σχετικότητα που έχει η λέξη που αναζήτησες, με τα δεδομένα της βάσης σου.

 

 

 

Δηλαδή θα κάνεις ένα FullTextIndex ως εξής:

ALTER TABLE `products` 
ADD FULLTEXT INDEX `test` (`description` ASC);
 
και στη συνέχεια απαξ και έχεις φτιάξει ένα FullText Index
 
Μπορείς να εκτελέσεις το ακόλουθο query: 
 
 
SELECT titlos_thematos, id, description, MATCH(description) AGAINST('$input') as Relevance
FROM description
Having Relevance > 0
ORDER BY Relevance ASC

 

Βασικά αυτο που έχεις κάνει έχει ελληνικό stemming ; 

Δημοσ.

Που μπορώ να βρω κάτι παρόμοιο με αυτο που λες για να το εφαρμόσω?

 

Έχω κάνει edit το πρώτο μου post, θα βρεις παράδειγμα.

 

btw μου φαίνεσαι πολύ γνωστός φυσιογνωμικά, είσαι εσύ στη φωτογραφία;

 

 

Βασικά αυτο που έχεις κάνει έχει ελληνικό stemming ; 

Βοήθα με λίγο τι σημαίνει stemming

Δημοσ.

να βρίσκει τη ριζα της λεξης.Πχ πατατες/πατατα την κοβει και βαζει παπατ. Απο οτι βλεπω δεν το εχει η mysql αλλα το ειχα δει στη postgresql. Βεβαια εχει και stopwords http://dev.mysql.com/doc/refman/5.6/en/fulltext-stopwords.html. Αλλα για ελληνικά θα θέλει λιγο δουλειά...

Απο οσο ξερω για πολυ φορτο πανε σε αλλες λυσεις lucene κτλ

Δημοσ.

να βρίσκει τη ριζα της λεξης.Πχ πατατες/πατατα την κοβει και βαζει παπατ. Απο οτι βλεπω δεν το εχει η mysql αλλα το ειχα δει στη postgresql. Βεβαια εχει και stopwords http://dev.mysql.com/doc/refman/5.6/en/fulltext-stopwords.html. Αλλα για ελληνικά θα θέλει λιγο δουλειά...

Απο οσο ξερω για πολυ φορτο πανε σε αλλες λυσεις lucene κτλ

Εξ όσων γνωρίζω για το match/against δεν υποστηρίζει και παράλληλα δεν είναι και τόσο καλή όσο άλλα engines σε άλλες databases.

 

Φαντάζομαι κάτι θα υπάρχει που να επεκτείνει την παρούσα λειτουργία.
Δημοσ.

Σας ευχαριστω για τις πολυτιμες πληροφοριες..δοκιμαζω στην πραξη και θα σας πω αποτελεσματα!Φιλε μου στη φωτογραφια ναι εγω ειμαι!:P και παλι ευχαριστω


Συγνώμη παιδιά δεν μπορώ να εφαρμόσω αυτό που μου δώσατε..δεν ξέρω βασικά πως να το εφαρμόσω πάνω στον κωδικά μου σωστά και μου βγαίνει λάθος!Ρίξτε καμιά ιδέα..

Δημοσ.

Σας ευχαριστω για τις πολυτιμες πληροφοριες..δοκιμαζω στην πραξη και θα σας πω αποτελεσματα!Φιλε μου στη φωτογραφια ναι εγω ειμαι! :P και παλι ευχαριστω

Μου φαίνεσαι πολύ γνωστή φυσιογνωμία, έχεις καμία σχέση με ΤΕΙ Αθήνας;

 

 

Για να τα δοκιμάσεις θα τρέξεις τα queries που σου έγραψα στο post, και λογικά θα τρέξουν απροβλημάτιστα.

Απλά πρέπει να προσέξεις ότι το match-against λειτουργεί μόνο σε MyISAM και όχι σε InnoDB.

Δημοσ.

Το κάνω αλλά μου βγάζει σφάλμα συντακτικό :/ αν μπορείς κάνε ένα κόπο και στήλε να δω πως το κάνεις εσύ..Ευχαριστώ!

Δημοσ.

Sorry για το off topic, αλλά με αφορμή την παρατήρηση του cyclo, έχεις τρομερή ομοιότητα με τον http://www.imdb.com/name/nm1256532/?ref_=ttfc_fc_cl_t15 ειδικά σε αυτή τη φωτό που παραθέτω.

 

Οι fans του walking dead μπορεί να συμφωνήσουν μαζί μου (εμένα αυτόν μου θύμησες από παλαιότερα postd) :-)

Δημοσ.

Sorry για το off topic, αλλά με αφορμή την παρατήρηση του cyclo, έχεις τρομερή ομοιότητα με τον http://www.imdb.com/name/nm1256532/?ref_=ttfc_fc_cl_t15 ειδικά σε αυτή τη φωτό που παραθέτω.

 

Οι fans του walking dead μπορεί να συμφωνήσουν μαζί μου (εμένα αυτόν μου θύμησες από παλαιότερα postd) :-)

 

Ρε λες αυτόν να μου θύμισε; :Ρ 

 

 

Πιστεύω στα 40 μου έτσι θα είμαι!Αλλά πες μου οτι έχεις και λύση για το πρόβλημα μου :)

 

Αρχηγέ μου πραγματικά η λύση είναι στο δεύτερο post.

από εκεί και πέρα το ότι σου βγάζει syntax error αν δεν μας δείξεις και λίγο php δεν βλέπω να γίνεται δουλειά^

  • 2 εβδομάδες αργότερα...
Δημοσ.

Ρε λες αυτόν να μου θύμισε; :Ρ 

 

 

 

Αρχηγέ μου πραγματικά η λύση είναι στο δεύτερο post.

από εκεί και πέρα το ότι σου βγάζει syntax error αν δεν μας δείξεις και λίγο php δεν βλέπω να γίνεται δουλειά^

 

 

Ορίστε και η php πολύ απλή αλλά με τις κινήσεις σας θα κάνει καλύτερη δουλειά πιστεύω! 

search.php

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...