Du gibst deinem Textsuchfeld den gleichen Namen wie dem Select. Damit übergibst du dem Textfeld mit $HTTP_POST_VARS[suchbegriff] den Wert des Selects...
hallo zusammen, ich hab bei Auswahlmenu(select) das Problem dass wenn ich mit den Auswahlmenu (select) suchen möchte erscheint in der Inputfeld das suchbegriff der ausgewählte name, wie kann ich dies umegehen.
ich hab mit hidden bis jetzt versucht aber erofolglos
hier den script:
<html>
<head>
<title>Suche</title>
</head>
<body onload="document.forms[0].suchbegriff.focus()">
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<table width="346" align="center">
<tr>
<td colspan="2">Suchbegriff <br>
<input type="text" name="suchbegriff" value="<?php echo $HTTP_POST_VARS[suchbegriff]; ?>" size="20">
<br>
<br>
Branche<br>
<select type="hidden" name="suchbegriff">
<option type="hidden" name="<?php echo $HTTP_POST_VARS[suchbegriff]; ?>" value="Bla">Bla</option>
<option type="hidden" name="<?php echo $HTTP_POST_VARS[suchbegriff]; ?>" value="Bla1">Bla1</option>
<option type="hidden" name="<?php echo $HTTP_POST_VARS[suchbegriff]; ?>" value="Bla2">Bla2</option>
</select>
<br>
<br>
<input type="submit" name="submit" value="Suchen"></td>
</tr>
</table>
</form>
<p> </p>
<?
if(isset($HTTP_POST_VARS[suchbegriff])){
$server = "localhost";
$benutzer = "";
$passwort = "";
$datenbank = "";
$suchbegriff = $HTTP_POST_VARS[suchbegriff];
$verbindung = mysql_connect($server,$benutzer,$passwort) or die ("Verbindungsaufnahme mit MySQL-Server fehlgeschlagen!");
mysql_select_db($datenbank,$verbindung) or die ("Verbindungsaufnahme mit Datenbank fehlgeschlagen");
$abfrage = "SELECT * FROM user WHERE id LIKE '%$suchbegriff%' OR kategorie LIKE '%$suchbegriff%'";
$ergebnis = mysql_query($abfrage,$verbindung);
echo "<table><tr><td>id</td><td>Kategorie</td></tr>";
while ($datensatz = mysql_fetch_array($ergebnis)) {
$stil=="#E7E7EF"?$stil = "#cccccc":$stil="#E7E7EF";
echo "<tr><td bgcolor=$stil>$datensatz[id]</td><td bgcolor=$stil> $datensatz[kategorie]</td></tr></table>";
}
}
?>
</body>
</html>
Du gibst deinem Textsuchfeld den gleichen Namen wie dem Select. Damit übergibst du dem Textfeld mit $HTTP_POST_VARS[suchbegriff] den Wert des Selects...
ja wie kann ich es lösen muss ich namen der kategorie eingeben.
Welches von beiden in dem Query soll den das aus dem Pulldownfeld und welches aus dem Textfeld sein?
"SELECT * FROM user WHERE id LIKE '%$suchbegriff%' OR kategorie LIKE '%$suchbegriff%'"
Du bennenst einfach das Pulldownfeld und Textfeld anders und passt dein Query entsprechend an...
ich möchte kategorie zur auswahlmenu haben, user und id zur textfeld.
Geändert von pop (14.02.2005 um 20:16 Uhr)
Ich frage mal im Vorfeld: Wieviel Ahnung hast du von PHP und Programmieren?
leider nicht viel denn ich hätte es länger gelöst wenn ich wie du programieren könnte ;-), kannst du mir helfen?
Geändert von pop (14.02.2005 um 20:35 Uhr)
zB. du nennst das Selectfeld Kategorie und das Textfeld suchbegriff und die ganzen Hiddens nimmst du dann raus.. Die machen nicht viel sinn.. Das Query müsste dann so aussehen:
"SELECT * FROM user WHERE id LIKE '%$_POST[suchbegriff]%' OR kategorie = '$_POST[Kategorie]'";
Oder halt genau andersrum...
vielen dank, es funktioniert nur wenn ich im oberen text ein buchstabe eingebe und dann auf suchen klicke ersta dann werden datensätze ausgelesen.
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)