Statistik |
Beiträge: 144.534 (Täglich: 19,19 )
Themen: 16.701
Mitglieder: 13.209
Neuestes Mitglied: zitronentee.
Ausl. d. letzten Minute: 150%
Ausl. d. letzten 5 Minuten: 205%
Ausl. d. letzten 15 Minuten: 272%
Aktulle Uhrzeit: 14:22
Freier Webspace: 4.03 TB
PHP-Version: 7.4.33
|
|
|
|
|
Problem beim Aufruf der Suchfuktion |
Bone Dragon
wBB2-User | VG-Lizenz | Literatur | Mail | Coder
Zeige Bone Dragon auf Karte
Dabei seit: 02.12.2006
Beiträge: 1.133
49 Filebase-Einträge
Alter: 44 Jahre
Herkunft: Wagenfeld (Nds) wBB-Version: wBB2.3 PHP-Version: 4.4.x, 5.3.x, 5.4.x MySQL-Version: 4.0.x, 5.0.x, 5.5.x Wo bist du gehostet?: Strato, Kolido
Bewertung:
Level: 47 [?]
Erfahrungspunkte: 7.168.505
Nächster Level: 7.172.237
|
|
Problem beim Aufruf der Suchfuktion |
|
Guten Abend
Ich bin so langsam am verweifeln, ich habe versucht mir eine kleine Suchfunktion zu coden.
Das Problem was ich habe ist, das wenn ich die Seite aufrufe ich folgende Fehlermeldung bekomme.
Fatal error: Call to a member function on a non-object in /mnt/web3/43/79/5584079/htdocs/wbblitetest/ewg_suchen2.php on line 23
die ewg_suchen2.php sieht wie folgt aus:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
|
<?php
if(isset($_POST["send"])) {
$id3 = "ewgnum_bundesland_id = $_REQUEST[id2] AND";
If ($_REQUEST[id2] == '*'){
$id3 = "";
}
$ewgnum_daten = $db -> query_first("SELECT COUNT(*)FROM bb".$n."_ewgnum_datwn WHERE $id3 name LIKE '%$_REQUEST[name]%'");
If ($wegnum_daten[0]== 0){
eval("\$tpl->output(\"".$tpl->get("ewg_suchen2_error")."\");");
exit;
}
$result = $db->query("SELECT * FROM bb".$n."_ewgnum_daten WHERE $id3 name LIKE '%$_REQUEST[name]%' ORDER BY $_REQUEST[sortby]");
while($daten_bit = mysql_fetch_array($result)) {
eval ("\$ergebnisbit .= \"".$tpl->get("ewg_suchen2_ergebnis_bit")."\";");
}
eval("\$tpl->output(\"".$tpl->get("ewg_suchen2_ergebnis")."\");");
exit;
}
$result = $db->query("SELECT * FROM bb".$n."_ewgnum_kategorie ORDER BY id DESC");
while($kategorierow = mysql_fetch_array($result)) {
eval ("\$kategorie_options .= \"".$tpl->get("ewg_suchen2_kategorien_bit")."\";");
}
eval("\$tpl->output(\"".$tpl->get("ewg_suchen2")."\");");
?> |
|
Das Temnplate ewg_suchen2.tpl sieht so aus:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
|
<table cellpadding=4 cellspacing=1 border=0 width="{tableinwidth}" bgcolor="{tableinbordercolor}">
<tr bgcolor="{tablecatcolor}" id="tablecat">
<form action="ewg_suchen2.php" method="post">
<td colspan=2><normalfont><b>Suchfunktion</b></font></td>
</tr>
<tr id="tablea" bgcolor="{tablecolora}">
<td valign="top"><normalfont><b>Suchbegriff:</b></font></td>
<td valign="top" width="60%"><smallfont><input type="text" name="name" value="" class="input" size=20 maxlength=50><br></font></td>
</tr>
<tr id="tableb" bgcolor="{tablecolorb}">
<td colspan="2"><smallfont><b>Sortieren nach:<br><select name="sortby"><option value="staaten_nat">Staaten</option>
<option value="bundesland_name">Bundesländer/Regionen</option></select><br></b></font></td>
</tr>
<tr id="tableb" bgcolor="{tablecolorb}">
<td rowspan=5 colspan="3"><select name="id2" style="width:80%;" size=10><option value="*" selected>Suche in allen Kategorien</option>
<option value="-1">--------------------</option>
$kategorie_options</select></td>
</tr>
</table>
<p align="center">
<input type="hidden" name="send" value="send">
<input type="hidden" name="action" value="$action">
<input type="hidden" name="sid" value="$session[hash]">
<input class="input" type="submit" name="submit" value="Suchen">
<input class="input" type="reset"value="Zurücksetzen">
</p></form>
<br>
</font>
</td>
</tr>
</table> |
|
Kann mir einer sagen wieso ich diese Fehlermeldung bekomme ?
__________________
MfG Bone Dragon
Kein Support zur meinen Erweiterungen via Pn, eMail, Messanger, etc. sowie an Sonn- & Feiertagen!
|
|
10.12.2007 18:22 |
|
|
Bone Dragon
wBB2-User | VG-Lizenz | Literatur | Mail | Coder
Zeige Bone Dragon auf Karte
Dabei seit: 02.12.2006
Beiträge: 1.133
49 Filebase-Einträge
Alter: 44 Jahre
Herkunft: Wagenfeld (Nds) wBB-Version: wBB2.3 PHP-Version: 4.4.x, 5.3.x, 5.4.x MySQL-Version: 4.0.x, 5.0.x, 5.5.x Wo bist du gehostet?: Strato, Kolido
Bewertung:
Level: 47 [?]
Erfahrungspunkte: 7.168.505
Nächster Level: 7.172.237
Themenstarter
|
|
Au man bin ich panne .....
Dank dir knuddelchen - ich glaub ich brauch erstma ne Pause beim proggen
__________________
MfG Bone Dragon
Kein Support zur meinen Erweiterungen via Pn, eMail, Messanger, etc. sowie an Sonn- & Feiertagen!
|
|
10.12.2007 18:33 |
|
|
Bone Dragon
wBB2-User | VG-Lizenz | Literatur | Mail | Coder
Zeige Bone Dragon auf Karte
Dabei seit: 02.12.2006
Beiträge: 1.133
49 Filebase-Einträge
Alter: 44 Jahre
Herkunft: Wagenfeld (Nds) wBB-Version: wBB2.3 PHP-Version: 4.4.x, 5.3.x, 5.4.x MySQL-Version: 4.0.x, 5.0.x, 5.5.x Wo bist du gehostet?: Strato, Kolido
Bewertung:
Level: 47 [?]
Erfahrungspunkte: 7.168.505
Nächster Level: 7.172.237
Themenstarter
|
|
Sodala ich bin wieder am werk und schon die nächste Frage bzw. das nächste kleinere Problem - genauer gesagt 2
- Ausgabe der Anzahl der gefunden Treffer:
Ich möchte ganz gerne, das bei der Anzeige der Suchergebnisse auch die Anzahl der gefunden Treffer mit ausgegeben wird.
Ich weiß das ich mit Count(*) und GROUP BY arbeiten muß - aber ich krieg das nicht gebacken - vllt. könnte mir da mal jemand auf die Sprünge helfen.
Der Code der bisherigen Suchabfrage sieht wie folgt aus:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
|
#####--->> Start - Ausgabe der Suche <<---#####
if(isset($_POST["send"]))
$ewgnum_daten = $db -> query_first("SELECT COUNT(*)FROM bb".$n."_ewgnum_daten WHERE nummer LIKE '%$_REQUEST[searchdef]%' OR name LIKE '%$_REQUEST[searchdef]%' OR ort LIKE '%$_REQUEST[searchdef]%' OR kategorie LIKE '%$_REQUEST[searchdef]%' OR befristung LIKE '%$_REQUEST[searchdef]%' OR drittlandzulassung LIKE '%$_REQUEST[searchdef]%'");
If ($ewgnum_daten[0]== 0){
eval("\$tpl->output(\"".$tpl->get("ewg_suchen_error")."\");");
exit;
}
$result = $db->query("SELECT nummer, name, ort, kategorie, befristung, drittlandzulassung FROM bb".$n."_ewgnum_daten WHERE nummer LIKE '%$_REQUEST[searchdef]%' OR name LIKE '%$_REQUEST[searchdef]%' OR ort LIKE '%$_REQUEST[searchdef]%' OR kategorie LIKE '%$_REQUEST[searchdef]%' OR befristung LIKE '%$_REQUEST[searchdef]%' OR drittlandzulassung LIKE '%$_REQUEST[searchdef]%'");
while($daten_bit = mysql_fetch_array($result)) {
eval ("\$ergebnisbit .= \"".$tpl->get("ewg_suchen_ergebnis_bit")."\";");
}
#####--->> Ende - Ausgabe der Suche <<---##### |
|
- Ordnen der Suchergebnisse nach Staaten und Bundesland:
Ich möchte ganz gerne meine Sucheergebnisse im Ergebnissfenster nach Staaten und Bundesland sortiert ausgeben lassen.
Das Problem was ich dabei habe ist, das die Statten und die Bundesländer jeweils eine Extra-Tabelle in der DB haben.
Die Staaten werden in der Tabelle bb1_ewgnum_staaten mit den Spalten:
`id` int(11) NOT NULL auto_increment,
`staaten_nat` varchar(5) NOT NULL default '',
`staaten_nation` varchar(100) NOT NULL default '',
`staaten_eintrag` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
gespeichert.
Die Bundesländer werden in der Tabelle bb1_ewgnum_bundesland mit den Spalten:
`id` int(11) NOT NULL auto_increment,
`bundesland_nat` varchar(5) NOT NULL default '',
`bundesland_name` varchar(100) NOT NULL default '',
`bundesland_eintrag` varchar(255) NOT NULL default '',
`ewgnum_staaten_id` int(11) NOT NULL default '',
PRIMARY KEY (`id`)
gespeichert.
Da die Daten für die Suche aus der bb1_ewgnum_daten abgefrufen werden, komme ich da im Moment auf keine Idee, wie ich die Ergebnisse der Suche nach Staaten und Bundesländer in der Ausgabe ordnen kann.
Aussehen soll das ganze dann später wie folgt:
staat_nation (Hauptkategorie 1)
- bundesland_name (Unterkategorie 1)
-- Gefundener Datensatz 1 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 2 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 3 (aus bb1_ewgnum_daten)
- bundesland_name (Unterkategorie 2)
-- Gefundener Datensatz 1 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 2 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 3 (aus bb1_ewgnum_daten)
staat_natetion (Hauptkategorie 2)
- bundesland_name (Unterkategorie 1)
-- Gefundener Datensatz 1 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 2 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 3 (aus bb1_ewgnum_daten)
- bundesland_name (Unterkategorie 2)
-- Gefundener Datensatz 1 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 2 (aus bb1_ewgnum_daten)
-- Gefundener Datensatz 3 (aus bb1_ewgnum_daten)
und dann halt so weiter.
Was ich weiß, ist das ich das im Template über folgenden form-Tag anzeigen lassen kann:
php: |
1:
2:
3:
4:
5:
|
<select name="sortby">
<option value="x">Staaten</option>
<option value="x">Bundesländer</option>
<option value="x" selected>Staaten und Bundesländer</option>
</select> |
|
Das was mir halt Probleme macht ist im Moment die Umsetzung dafür ins PHP-Script.
__________________
MfG Bone Dragon
Kein Support zur meinen Erweiterungen via Pn, eMail, Messanger, etc. sowie an Sonn- & Feiertagen!
|
|
12.12.2007 23:50 |
|
|
|
|
|
|