Datenbankfelder abprüfen

Seraphine
Hi

ich weiß nicht, wie ich das anders benennen könnte.

Also, ich hab ein Script, wo man Dinge einträgt, darin auch Postleitzahl. Jetzt gibt es die Möglichkeit, Postleitzahlen anzuklicken, z. B. 1xxxx oder 8xxxx und die Datensätze ausfiltern zu lassen, die sich in diesem PLZ-Bereich befinden.

Natürlich gibts jetzt nicht immer überall einen Eintrag. Wenn jetzt ein Postleitzahlenbereich (z. B. 7) nicht vorhanden ist, soll er einen Fehler ausgeben.

Der ganze Kladeradatsch soll im WBB 2 funktionieren. Das Auslesen der einzelnen Postleitzahlen hab ich erst mal etwas unedel gelöst (wird sicher irgendwann einmal "edler")

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
if($_GET['letter'] == "7") 
{
		$result = $db->query("SELECT 
							gid, g_over, g_text, g_plz, g_ort, authorid, authorname, akt_date, g_date 
							FROM bb".$n."_datenbanktabelle WHERE g_plz LIKE '7%' ORDER BY g_plz DESC");
		
		while ($row = $db->fetch_array($result)) {
						
			$g_over = htmlconverter($row['g_over']);
			$g_text = htmlconverter($row['g_text']);
			$g_plz = intval($row['g_plz']);
			$g_ort = htmlconverter($row['g_ort']);
			$authorid = intval($row['authorid']);
			$authorname = htmlconverter($row['authorname']);
			$g_date = htmlconverter($row['g_date']);
			$akt_date = formatdate($wbbuserdata['dateformat'], $row['akt_date']);	
						
			eval("\$template_bit .= \"".$tpl->get("template_bit")."\";");
		}
}


Wie kann ich nun zusätzlich prüfen lassen, ob die PLZ 7 überhaupt vorhanden ist und wenn nicht, soll er mir ne Meldung ausgeben, dass es diese PLZ einfach noch nicht gibt.

Ich häng da einfach fest. Wäre super, wenn ihr mir da weiter helfen könnt.

LG
Seraphine
mkkcs
warum füllst Du nicht ein Select-Feld aus den Werten aus der Referenz?
Seraphine
Hi

wie meinst du das?

LG
Seraphine
mkkcs
Zitat:
Original von Seraphine
Hi

wie meinst du das?

LG
Seraphine


ist zwar ungetestet, aber sollte ggf. laufen ...
code:
1:
2:
3:
4:
5:
6:
7:
8:
	$plzoption = "";
	$resultplz = $db->query("SELECT SUBSTRING(g_plz,0,1) as plz FROM bb".$n."_datenbanktabelle GROUP BY SUBSTRING(g_plz,0,1) ORDER BY plz DESC");
	while ($row = $db->fetch_array($resultplz)) {
		$plzoption .= makeoption($row['plz'],$row['plz']."****",'',0);
	}
	
Seraphine
Hi

läuft leider nicht unglücklich

LG
Seraphine
mkkcs
hast Du viele Datensätze dadrinn ?
wenn nicht, dann füge einfach ein einstelliges Textfeld ein, setze dort die erste Position rein, (beim eintragen der Datensätze natürlich auch) und frage dann das Feld ab !
dann halt nur so
code:
1:
2:
3:
4:
5:
6:
7:
	$plzoption = "";
	$resultplz = $db->query("SELECT g_plz_e FROM bb".$n."_datenbanktabelle GROUP BY g_plz_e ORDER BY g_plz_e DESC");
	while ($row = $db->fetch_array($resultplz)) {
		$plzoption .= makeoption($row['g_plz_e'],$row['g_plz_e']."****",'',0);
	}