scrooge Δημοσ. 24 Ιανουαρίου 2011 Δημοσ. 24 Ιανουαρίου 2011 καλησπερα. δεν ξερω πολλα απο mysql και php, ασχολουμαι με την πτυχιακη μου κ εχω το εξης προβλημα. >$gen_query = mysql_query("SELECT * FROM $table WHERE `artist`||`tracktitle` LIKE '%$query%' ")or die(mysql_error()); εχω ενα table με πολλα columns.οπως artist, tracktitle, numtrack, album, codec,genre, year κλπ. ειναι στοιχεια απο id3tags απο mp3. εχω ηδη δημιουργησει τη βαση απο αυτα. θελω να κανω ενα "γενικο" query, που σημαινει:οτι δινω, θελω να ψαχνει σε ΚΑΘΕ στηλη του table και να γυρναει αποτελεσματα. (η καθε στηλη αποτελει ενα στοιχειο του id3 tag και μια γραμμη αποτελει ενα σετ τετοιων στοιχειων, με αλλα λογια το id3tag ενος mp3, δλδ καθε γραμμη αντιπροσωπευει ενα mp3 ουσιαστικα.) πως γινεται αυτο? στον παραπανω κωδικα δουλευει σωστα με 2 μονο στηλες χωρισμενες με || (logic OR) ΑΛΛΑ στην τριτη στηλη που παω να βαλω πχ > `artist`||`tracktitle`||`album` χαλαει κ βγαζει σωστα αποτελεσματα, αλλα κ με λαθος αποτελεσματα μεσα, δηλαδη που δεν περιεχεται στις στηλες αυτες ο ορος προς αναζητηση. εψαξα στο google αλλα δε βρηκα καποιον τροπο να κανω αυτο που θελω. εχετε να προτεινετε καποια λυση; ειναι σημαντικο, πρεπει να τελειωσω την πτυχιακη μου. Ευχαριστω.
spartakoscs Δημοσ. 24 Ιανουαρίου 2011 Δημοσ. 24 Ιανουαρίου 2011 χωρίς να είμαι pro στην mysql δεν έχω ξαναδεί σε ερωτήματα το || οπότε δοκίμασε με το κλασικό OR >$gen_query = mysql_query("SELECT * FROM $table WHERE `artist` OR `tracktitle` OR `album` LIKE '%$query%' ")or die(mysql_error()); Η >$gen_query = mysql_query("SELECT * FROM $table WHERE `artist` LIKE '%$query%' OR `tracktitle` LIKE '%$query%' OR `album` LIKE '%$query%' ")or die(mysql_error());
scrooge Δημοσ. 25 Ιανουαρίου 2011 Μέλος Δημοσ. 25 Ιανουαρίου 2011 Σε ευχαριστω πολυ. Αυτο ηταν, το 2ο. Πως δε το σκεφτηκα; Δουλευει μια χαρα τωρα. Λογικα θα δουλευει σωστα κ με τα υπολοιπα fields. Προφανως δεν υπαρχει καποιος τροπος με κανα wildcard * να πουμε στην mysql ψαξε την λεξη σε καθε στηλη που εχεις στο table ε; Αναγκαστικα πρεπει να γινει με αυτα τα OR. Δουλευει, απλα δεν φαινεται ομορφο coding ενα μακαρονι 100 λεξεις query. Η απλα το query που θελω εγω ειναι παραξενο κ δεν εχει προνοησει για κατι τετοιο η mysql . Οπως και να χει, κ παλι thanx.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.