Announcement

Collapse
No announcement yet.

Ultrabug?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ultrabug?

    Hi... also
    mein problem...
    ich habe eine Datenbank in der meine Mp3 sammlung drinne ist...
    jetzt hab ich eine Suchanfrage... über ein Formular...

    Code:
    $sql = 'SELECT * FROM `mp3s` WHERE `Speicherort` LIKE \'%'.$suchwort.'%\' OR `Interpret` LIKE \'%'.$suchwort.'%\' OR `Titel` LIKE \'%'.$suchwort.'%\' OR `Album` LIKE \'%'.$suchwort.'%\' ORDER BY `Titel`,`Album`, `Interpret`, `mp3` ASC';
    Soooo alles läuft 1a... mit allen suchanfragen (bisher)

    Wenn ich jetzt das wort "just" (lied just dance) suche... dann verabschiedet sich die SQL Datenbank und beendet sich (komplett) so das ich sie manuell wieder starten muss!)

    aber wirklich nur bei diesem Suchwort... alles andere kein Problem!

    Hat jemand ne Idee ???

  • #2
    Passiert das auch bei verwendung von Parametrisierten Abfragen? Werden deine Strings überhautp korrekt escaped (SQL-Injection lässt grüßen)

    Comment


    • #3
      versteh deine Frage nicht soo richtig...
      alle Suchanfragen bisher (und es waren nicht wenige) haben ohne probleme funktioniert... aber bei "just" (ich habs mindestens 5 mal getestet) schiest sich die Datenbank komplett hab!

      Comment


      • #4
        SQL-Injection sagt dir schon was?

        Kannst du mal probieren deinen SQL-String z.B. im MySQL Query Browser testen?

        Comment


        • #5
          Welche Datenbank verwendest Du denn?
          MfG

          Comment


          • #6
            Also ich verwende die MySQL Datenbank und einen Apache Webserver (das Packet) unter Windows.....

            Zur frage ob ich den String einsetzen kann ?

            Ja kann ich (so eingesetzt unter phpmyadmin -> SQL Query Browser) -->
            Code:
            SELECT * FROM `mp3s` WHERE `Speicherort` LIKE '%just%' OR `Interpret` LIKE '%just%' OR `Titel` LIKE '%just%' OR `Album` LIKE '%just%' ORDER BY `Titel`,`Album`, `Interpret`, `mp3` ASC
            aber als ergebnis kommt dann --->


            Und dann wars das auch schon wieder mit der Datenbank

            Comment


            • #7
              Welche genaue MySQL wird eingesetzt?
              Wie sieht die Tabellendefinition von mp3s aus?

              Comment


              • #8
                Genaue Version ---> MySQL-Client-Version: 5.0.45
                Zur Tabellen definition --->

                Comment


                • #9
                  Hallo cracker0dks,

                  die Tabellendefinition ist der Hammer! Von dfifferenzierten Feldtypen je nach Art der zu speichernden Daten hälst du wohl nicht viel? Also ein Jahr, welches i.a.R. numerisch ist und nach heutigen Maßstäben max. 4 Stellen hat, in ein Feld vom Datentyp TEXT zu packen, mit dem sich 2^16 Byte speichern lassen, ist schon krass! Orderst du eigentlich einen 40-Tonner wenn du einen Brief zu transportieren hast?
                  Und warum in aller Welt haben die Spalten unterschiedliche Kollationen?

                  Du solltest deine Tabellenstruktur einfach passend zu den Gegebenheiten machen. Ich denke mal für Speicherort, mp3, Interpret, Titel, Album und genre reicht ein VARCHAR(255), evtl. kann man comment als TEXT anlegen, wenn dort mehr als 255 Zeichen möglich sein sollen. Track und year auf alle Fälle als INT(4).
                  Mglws. hat sich dein Problem dann schon erledigt

                  Gruß Falk
                  Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

                  Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

                  Comment


                  • #10
                    JA hatte ich ja früher Varchar und solche Scherze ... nur wenn ich zb Ö,Ä,Ü im Namen habe (oder eine mp3 file mit alter Version) dann nimmt er die Datei komplett nicht auf Wenn ich nicht TEXT als Datentyp habe... weil andere Datentypen damit nicht klarkommen..... Dehalb hab ich auf Text umgestellt, und hatte so auch bisher NULL Probleme....

                    Aber kann mir nicht Vorstellen... warum diese Datentypen das Problem darstellen... wenn ich "just" eingebe... oder?

                    PS: die Kollationen hab ich umgestellt, bei den Stellen wo ein ö,ä,ü,ß auftauchen könnte...

                    Comment


                    • #11
                      OK GROßES THX an Falk ich hab meine Datentypen nach seinen Anweisungen gändert... und jetzt schmiert die DB nichtmehr ab.... "erstaunlich"

                      wissen zwar immernoch nicht den genauen Bug aber immerhin tuts...

                      Comment

                      Working...
                      X