Javascript Suche
#1
hallo
langsam wirds mir schon richtig peinlich! :-(
aber hier ist der einzige platz wo ich antworten bekomme bis es funktioniert! Smile)

Also ich habe ja eine html Datenbank gemacht.
Und damit man mit der besser arbeiten kann möcht ich eine suche integrieren. nur das funktioniert mal wieder nicht weil vielleicht wieder etwas in diesem scheiß!!!!!! Buch nicht stimmt! (ich verwende es trotzdem weil das das einzige ist wo immer das drinnsteht was ich brauche!) ---> nur das halt leider mit fehlern weil es schon sehr alt ist!

also wieder zum thema! die seite seht ihr auf
http://www.tauchen.hits4.net/tauchen/termine_art.html

hier ist der quellcode von der seite!
hier fehler die ich vermute:
1.) muss ich noch einen bereich deffinieren wo die treffer ausgegeben werden???
2.) schreibfehler?? (wegen alter version des buches?)

Zitat:
<html>
<head>
<link href="tauchen.css" rel="stylesheet">
<title>Tauch-Info</title>
<meta name="author" content="Thiltges">
<meta name="keywords" content="Wiener Termine, Termine, Wiener Tauchschulen, tauchen, Tauchen, datenbank, taucher">
<meta name="generator" content="Ulli Meybohms HTML EDITOR">
</head>
<!-- Script - Navigation -->
<script language="javascript" src="navi.js" type="text/javascript"></script>

<!-- Script - Suche -->
<script language="javascript">
function Suchen()
{
var max = 4;
var SuchDaten = 0;
var Suchwort = "";

if(document.Anfrage.SuchName.value != "")
{
if(SuchDaten > 0)
Suchwort = "Name = " + document.Anfrage.SuchName.value;
else
Suchwort = "Name = " + document.Anfrage.SuchName.value;
SuchDaten++;
}
document.all.Daten.object.Filter = Suchwort;
document.all Daten.Reset();
document.all.Daten.dataSrc = "#Daten";

if(document.all.Daten.recordset.recordCount < max
&& document.all.Daten.recordset.recordCount > 0)
{
document.all.Treffer.innerText =
Daten.recordset.recordCount
+ " mal "
+ document.Anfrage.SuchName.value
+ "gefunden!";
}
else
{
if(document.all.Daten.recordset.recordCount == max)
{
document.all.Treffer.innerText = "";
}
else document.all.Treffer.innerText =
"Suchbegriff nicht gefunden";
}
}
function Neu()
{
document.all.Daten.object.Filter = "";
document.all.Treffer.innerText = "";
document.all.Daten.Reset();
}
</script>


<body text="#000000" bgcolor="#2E3354" link="#FF0000" alink="#FF0000" vlink="#FF0000">

<div id="tauchen">
<div id="text">

<h3>Das ist nur eine Vorschau! ACHTUNG: Keine korrekten Termine!</h3>

<!-- Eingabe für Suche -->

<form name="anfrage">
<input type="text" name="suche" value="Suchen Nach" width="100">
<input type="submit" value="Suche Starten!" onclick="Suchen()">
<input type="reset" value="Neu" onclick="Neu()">
</form>


Ordnen nach:<br><br>

<table border="0" width="100%">
<tr>
<td width="100"><a href="termine_termin.html">Termin</a></td><td width="100"><a href="termine_veranstalter.html">Veranstalter</a></td><td width="90"><a href="termine_ort.html">Ort</a></td><td width="100"><a href="termine_kosten.html">Kosten</a></td>
</tr>
</table><br>

<!-- Hier beginnt die Datenbank -->
<object id="termine" classid="CLSID:333C7BC4-460F-11D0-BC04-0080C7055A83">
<param name="dataURL" value="datenbank.csv">
<param name="UseHeader" value="true">
<param name="FieldDelim" value="|">
<param name="Sort" value="Art">
<param name="CaseSensitive" value="false">
</object>

<table bgcolor="#7C83AF" width="99%" cellpadding="1" cellspacing="0" border="0">
<tr>
<td>
<table width="100%" cellpadding="1" cellspacing="0" border="1">
<tr>
<td width="100"><b>Art</b></td>
<td width="100"><b>Termin</b></td>
<td width="100"><b>Veranstalter</b></td>
<td width="100"><b>Ort</b></td>
<td width="50"><b>Kosten</b></td>
<td width="150"><b>Anmerkung</b></td>
</tr>
</table>

</td>
</tr>

<tr>
<td>
<table width="100%" border="1" cellspacing="1" cellpadding="0" datasrc="#termine" datapagesize="200">
<tr>
<td width="100"><span datafld="Art"></td>
<td width="100"><span datafld="Termin"></td>
<td width="100"><span datafld="Veranstalter"></td>
<td width="100"><span datafld="Ort"></td>
<td width="50"><span datafld="Kosten"></td>
<td width="150"><span datafld="Anmerkung"></td>
</tr>
</table>

</td>
</tr>
</table>

<!-- Ende der Datenbank -->

<p align="justify">
Diese Tabelle ist nur eine Übergangslösung bis eine neue, besser Tabelle fertig gestellt ist. Mit der neuen Tabelle ist es dann möglich die Suchergebnisse noch zu ordnen. <br>
<h3>Warum kommt nicht gleich die bessere Tabelle?</h3> - Weil ich dann mit der Homepage nicht mehr, wie geplant, Frühling 2003, fertig werden würde!
</p>

</div>
</div>

<div id="navigation">

<!-- Hier muss noch die Tabelle für die Navigation rein (oben ist schon der Link für die .js Datei -->
</div>

</body>
</html>
[Bild: style1,Webmaster-Markt-dot-com.png]
  Zitieren
#2
Zu Punkt 1:

ich denke schon. Denn wenn man verschiedene Suchbegriffe eingibt, wird für eine ganz kurze Zeit auch eine Antwort ausgegeben. Die ist allerdings so schnell weg, dass man kaum sagen kann, ob sie zutreffend ist. Als "Schnellgucker" möchte ich fast behaupten, dass die Treffer angezeigt worden sind... Big Grin

Mehr kann ich dir leider nicht helfen, da ich keine Zeit habe, den Code genauer zu untersuchen. Bin auch nicht sonderlich fit mit MySQL. Aber vielleicht hat jemand anderes ja noch eine Idee oder sogar die Lösung. ?( Smile
  Zitieren
#3
das ist eine dynamische datenbanktabelle in html! von MySql versteh ich nix! =(

ähm das da kurz ein ergebnis angezeigt wird hab ich anfangs auch gedacht aber wenn man es sich ein paarmal anschaut sieht man das es nur die obere tabelle mit den head dinger ist (also name für druntere tabelle!) ---> zumindestens glaub ich das....... aber es fehlt glaub ich eh was zum ausgeben der ergebnise .....
[Bild: style1,Webmaster-Markt-dot-com.png]
  Zitieren
#4
Du hast da nen Punkt vergessen bei:

document.all.Daten.object.Filter = Suchwort;
document.all Daten.Reset();
document.all.Daten.dataSrc = "#Daten";

zweite Zeile zwischen "all" und "Daten" Wink
  Zitieren
#5
super danke!........ jetzt habe ich 2 fehler beseitigt (hab einen sogar selber gefunden!) *freU*

also jetzt kommt zwar kein scriptfehler mehr aber es wird das ergebnis nicht ausgegeben!

irgendwas glaub ich muss ich noch machen genau so wie auch bei der navigation (die eine tabelle da) wo das dann sichtbar wird....... weil jetzt habe ich ja nur den script und das eingabefeld....... aber es fehlt doch ein ausgabe feld oder?
[Bild: style1,Webmaster-Markt-dot-com.png]
  Zitieren
#6
Die Testseite online (Link oben in deinem Anfangsbeitrag) hast du noch nicht aktualisiert, oder?

Ansonsten weiß ich nicht, wie dieses Suchsystem arbeitet, und vor allem, WAS es zurückgibt. Also du rufst ja ne Function Suchen() auf, aber was die jetzt genau macht, weiß ich nicht. Muss ich entweder nochmal genau durchschauen oder du schreibst mal den Anleitungstext aus deinem Buch hier rein.

Kleiner Tipp: Bei dem Formular, wo man sein Suchwort eingibt, würde ich dir raten beim "Suchen"-Button folgendes type-Attribut zu nehmen:

<input type="button " ...

Weil wenn du Submit nimmst, läd er erstens die Seite neu, und zweitens werden alle Inhalte der Textfelder in der Adressleiste angezeigt. Aber vielleicht ist es ja doch wichtig, dass durch type="submit" die Seite neu geladen wird ... wie gesagt, dazu kenn' ich bis jetzt das Script zu wenig.
Bei Gelegenheit schau ich's mir noch einmal genauer durch, oder du schreibst die Infos mal hier rein, die du zum Script hast.

Tobi
  Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 4 Gast/Gäste