thiva7 Δημοσ. 26 Αυγούστου 2015 Δημοσ. 26 Αυγούστου 2015 Καλησπέρα, Θέλω σε μια βάση να δω εάν από το ένα πινάκα υπάρχουν στοιχειά στο άλλο το έχω σχεδόν καταφέρει με το strpos άλλα αυτό που δεν μου κάνει είναι ότι ταιριάζει τα στοιχειά άπλα εάν περιεχέι έστω και κομμάτι του κειμενου πχ λέξει: καιρός κείμενο : δεν έχει κάλο καιρό σήμερα αυτά τα βλέπει σαν Τrue επειδή ταίριαξε ένα κομμάτι της λέξεις... υπάρχει κάποια άλλη μέθοδος που να βλέπει ακριβός την λέξει εάν υπάρχει στο κείμενο? χωρίς να έχει σημασία εάν είναι κεφαλαία η όχι αυτό δεν με νοιαζει πχ μην δει False επειδή η λέξει είναι Καιρός, και το κείμενο <<Ο καιρός μπλα μπλα>> Ευχαριστώ
akis_fc Δημοσ. 26 Αυγούστου 2015 Δημοσ. 26 Αυγούστου 2015 Αν θες μία λέξη πχ "ενα" και δεν θες να matcharei το "εναγωνίως" ή το "εμενα" ρίχτο σαν " ενα ". Αυτό βέβαια είναι λίγο μπακάλικο και δεν λύνει ένα ποιο σύνθετο πρόβλημα πχ να θές να matcharei το "εναν".
thiva7 Δημοσ. 26 Αυγούστου 2015 Μέλος Δημοσ. 26 Αυγούστου 2015 Δεν κατάλαβα τη λες Στο παράδειγμα που δίνω πάνω λέω ακριβός τι θέλω να μην δινει το : ενα - εναν = true Ενα - ενα = false
Giorgos65ert Δημοσ. 26 Αυγούστου 2015 Δημοσ. 26 Αυγούστου 2015 Δεν κατάλαβα τη λες Στο παράδειγμα που δίνω πάνω λέω ακριβός τι θέλω να μην δινει το : ενα - εναν = true Ενα - ενα = false στο δεύτερο μπορείς άπλα να κάνεις strtolower το string και να το ελέγχεις με 'ένα'.
akis_fc Δημοσ. 26 Αυγούστου 2015 Δημοσ. 26 Αυγούστου 2015 Δεν κατάλαβα τη λες Στο παράδειγμα που δίνω πάνω λέω ακριβός τι θέλω να μην δινει το : ενα - εναν = true Ενα - ενα = false στο δεύτερο μπορείς άπλα να κάνεις strtolower το string και να το ελέγχεις με 'ένα'. και στο πρωτο σου λεω να βάλεις κενά μπροστά και πίσω από το ενα, για περισσότερα δώσε κωδικα για να καταλαβεις οπως λεει ο def
thiva7 Δημοσ. 26 Αυγούστου 2015 Μέλος Δημοσ. 26 Αυγούστου 2015 Αυτος ειναι ο κωδικας foreach($models as $model){ foreach($videos as $video){ if ( strpos( $video['title'], $model['name'] ) !== FALSE ) { $db->query("INSERT INTO #__model_videos (model_id,video_id) VALUES ('".$model['model_id']."','".$video['video_id']."')"); } } }
defacer Δημοσ. 27 Αυγούστου 2015 Δημοσ. 27 Αυγούστου 2015 Όταν κάνεις τέτοιου text processing πρέπει πάντα να ξεκινάς από τα θεμέλια, δηλαδή το encoding. Να υποθέσω ότι και το needle και το haystack εκεί που κάνεις strpos είναι σε utf-8?
thiva7 Δημοσ. 27 Αυγούστου 2015 Μέλος Δημοσ. 27 Αυγούστου 2015 Όταν κάνεις τέτοιου text processing πρέπει πάντα να ξεκινάς από τα θεμέλια, δηλαδή το encoding. Να υποθέσω ότι και το needle και το haystack εκεί που κάνεις strpos είναι σε utf-8? Νομίζω ναι. ΑΑλλά βρήκα το τι θέμα έχω με το κώδικα αυτό. Το θέμα τελικά είναι για κάποιο λόγο στη βάση με τα model εάν το name είναι είναι μονή καταχώρηση ( χωρις επιθετο) κάνει αυτό που είπα πάνω. Δηλαδή δουλεύει σωστά σε όλα τα ονόματα αλλά στην καταχώριση πχ Jenni θα το δει True σε όλους τους τίτλους που είναι με Jennifer κτλπ
defacer Δημοσ. 27 Αυγούστου 2015 Δημοσ. 27 Αυγούστου 2015 Προφανώς το θέμα δεν είναι μόνο αυτό γιατί δε δουλεύει έτσι η strpos. Θα το δει true και στον τίτλο McJennifer και ακόμα αν το όνομα είναι Paul Rand θα το δει true στον τίτλο Paul Randall ή και στον McPaul Randall. Πρέπει να είσαι σίγουρος για το encoding προκειμένου να προσχωρήσεις σε λύση.
thiva7 Δημοσ. 27 Αυγούστου 2015 Μέλος Δημοσ. 27 Αυγούστου 2015 Προφανώς το θέμα δεν είναι μόνο αυτό γιατί δε δουλεύει έτσι η strpos. Θα το δει true και στον τίτλο McJennifer και ακόμα αν το όνομα είναι Paul Rand θα το δει true στον τίτλο Paul Randall ή και στον McPaul Randall. Πρέπει να είσαι σίγουρος για το encoding προκειμένου να προσχωρήσεις σε λύση. Αυτό που κάνω είναι ένα πρόσθετο για ένα έτοιμο σκριπτ δεν είναι δικός μου κώδικας. Πως μπορώ να δω το encoding? Γενικά αν εξαιρέσεις το θέμα που ανέφερα δεν φαίνεται να κάνει αυτό που λες...ππριν το τρέξω σε ονλινε σιτε το έκανα πολλές δοκιμές σε λοκαλ και με εκο έβλεπα να τα ταιριάζει όπως πρέπει. ..Απλά είχα αυτό το θέμα που ανέφερα. ..ευτυχώς είχα μόνο 3 μόνα ονόματα και τα έσβησα. ..Απλά θα ήθελα να το κάνω όσο πιο σωστό γίνεται
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα