hty Geschrieben 31. Januar 2003 Geschrieben 31. Januar 2003 Hallo Ich habe mir eine Datenbank in meine HP integriert. Zwei Eingabefelder und ein Button (Suche Starten) sind auch schon drauf. Das ganze habe ich aus SELFhtml kopiert und eingefügt. Es funktioniert so weit auch, aber... 1. Es funktioniert nur wenn ich den Suchbegriff mit Sternchen (*) beginne und abschließe. 2. Möchte ich das GROSS/klein-Schreibung ignoriert werden. Das die suche nach meinetwegen "meyer" ebenso zum erfolg führt wie "Meyer" oder gar "MeYEr". Wer kann mir da helfen? Zitieren
MsB Geschrieben 31. Januar 2003 Geschrieben 31. Januar 2003 guten morgen, zwei fragen: 1. welche scriptsprache 2. kannst du den code posten oder zumindest den link dorthin dann können wir dir mit sicherheit weiterhelfen. so long, MsB Zitieren
hty Geschrieben 31. Januar 2003 Autor Geschrieben 31. Januar 2003 Guten Morgen 1. welche scriptsprache <script language="JScript"> 2. kannst du den code posten oder zumindest den link dorthin Das hier ist meine HP: http://www.awaa.de/ In der Navigation (linkes Frame) auf "Maxi-CDs" Da haben wir die Geschichte :o/ Wo kann ich den Quelltext hinschicken? gruss hty Zitieren
hty Geschrieben 31. Januar 2003 Autor Geschrieben 31. Januar 2003 <html> <head> <script language="JScript"> function Suchen() { var max = 500; document.all.Anzeige.style.display = "none"; var Suchausdruck = ""; var Suchbegriffe = 0; if(document.Eingabe.SuchName.value != "") { if(Suchbegriffe > 0) Suchausdruck = Suchausdruck + " & Künstlername = " + document.Eingabe.SuchName.value; else Suchausdruck = Suchausdruck + "Künstlername = " + document.Eingabe.SuchName.value; Suchbegriffe++; } if(document.Eingabe.SuchVorname.value != "") { if(Suchbegriffe > 0) Suchausdruck = Suchausdruck + " & Titel = " + document.Eingabe.SuchVorname.value; else Suchausdruck = Suchausdruck + "Titel = " + document.Eingabe.SuchVorname.value; Suchbegriffe++; } document.all.Adressen.object.Filter = Suchausdruck; document.all.Adressen.Reset(); document.all.Anzeige.dataSrc = "#Adressen"; if(document.all.Adressen.recordset.recordCount < max) { document.all.Anzeige.dataPageSize = Adressen.recordset.recordCount; document.all.Treffer.innerText = Adressen.recordset.recordCount + " Suchtreffer!"; document.all.Anzeige.style.display = "block"; } else document.all.Treffer.innerText = "0 oder zu viele Suchtreffer!"; } </script> </head> Zitieren
kills Geschrieben 31. Januar 2003 Geschrieben 31. Januar 2003 da du wie oben genannt eine datenbank benutzt gehe ich davon aus, dass du diese mit SQL abfragst oder? wenn ja: im SQL kannst du dir sowas stricken: select (blablabal....) from (blalbalba) where lower(tabellenname.spaltenname) like '%HIER DEINE VARIABLE%' (diese "% " in dem SQL bewirken das gleiche wie die '*' in deiner suchanfrage, was heisst das man es bei der suchanfrage nicht mehr angeben muss!!!) (das 'lower' ist std. SQL und müsste bei dir einfach gehen!! aber allerdings kann das lower keine Ä,Ö,Ü "klein" machen!! dafür bräuchtest du am besten "stored procedures" !! das stored procedures könnte ich dir machen!! Gruß kills Zitieren
hty Geschrieben 1. Februar 2003 Autor Geschrieben 1. Februar 2003 Hallo Die Datenbank selbst habe ich in Access erstellt und wollte diese ursprünglich auch so (als .mdb) in meine HP einbauen. Daran bin ich aber gescheittert. So das ich mich für die Variante aus SELFhtml entschieden habe. Die Datenbank muss in diesem Fall in das .txt-Format exportiert werden. Kann man überhaupt eine SQL-Anweisung an einem txt-Dokument ansetzen? Ich weiss nicht ob es sich hierbei um SQL handelt, denn offengestanden ich kann nicht erkennen wo in diesem Script eine SQL-Anweisung (wie ich sie kenne) entstehn sollte Sprich: SELECT [Artikel].[Artikel-Nr], [Videoarchiv].[Titel], [Videoarchiv].[Künstlername], [Artikel].[Verkaufspreis] FROM blablaba... Ich habe Deinen Rat mit der 96 versucht auf mein Script anzuwenden. Das hat aber nicht funktioniert. Vielleicht habe ich ja etwas falsch gemacht. So sah das z.B. in der 13. Zeile dann aus: Suchausdruck = Suchausdruck + " & Künstlername = '96" + document.Eingabe.SuchName.value + "96'"; Kommt vor bzw. nach der 96 tatsächlich ein -> ' <- Zeichen? Hochkomma, oder wie auch immer es sich schimpft. Die Taste mit -> # <- eben. Wie dem auch sei, ich habe es dann mit -> * <- versucht, und siehe da. Es funktioniert Wieder am Beispiel 13. Zeile sieht es nun so aus: Suchausdruck = Suchausdruck + " & Künstlername = *" + document.Eingabe.SuchName.value + "*"; NEUE FRAGE: Wo muss ich denn nun in meinem Fall das "where lower" einsetzen? Kann ich das überhaupt? Das Script in der aktuellen Version: -------------------------------------------- <html> <head> <script language="JScript"> function Suchen() { var max = 500; document.all.Anzeige.style.display = "none"; var Suchausdruck = ""; var Suchbegriffe = 0; if(document.Eingabe.SuchName.value != "") { if(Suchbegriffe > 0) Suchausdruck = Suchausdruck + " & Künstlername = *" + document.Eingabe.SuchName.value + "*"; else Suchausdruck = Suchausdruck + "Künstlername = *" + document.Eingabe.SuchName.value + "*"; Suchbegriffe++; } if(document.Eingabe.SuchTitel.value != "") { if(Suchbegriffe > 0) Suchausdruck = Suchausdruck + " & Titel = *" + document.Eingabe.SuchTitel.value + "*"; else Suchausdruck = Suchausdruck + "Titel = *" + document.Eingabe.SuchTitel.value + "*"; Suchbegriffe++; } document.all.Videos.object.Filter = Suchausdruck; document.all.Videos.Reset(); document.all.Anzeige.dataSrc = "#Videos"; if(document.all.Videos.recordset.recordCount < max) { document.all.Anzeige.dataPageSize = Videos.recordset.recordCount; document.all.Treffer.innerText = Videos.recordset.recordCount + " Suchtreffer!"; document.all.Anzeige.style.display = "block"; } else document.all.Treffer.innerText = "0 oder zu viele Suchtreffer!"; } </script> </head> Zitieren
kills Geschrieben 5. Februar 2003 Geschrieben 5. Februar 2003 da du keine datenbank benutzt kannst du das where lower nicht verwenden!! Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.