Formular mit zwei werten in einem value

sandroP

Erfahrenes Mitglied
Hallo,
ich habe ein Formular mit einem Dropdown. In Diesem möchte ich bei einer Auswahl
zwei werte im value haben.

geht das überhaupt?

Hier mal mein "Flascher Gedankenansatz"

<select name="typ" size="1" style="font-weight:normal;">
<option value="egal">egal</option>
<option value="Hotel">Hotel</option>
<option value="pension" && "gasthof">Pension</option>
<option value="Ferienwohnung">Ferienwohnung</option>
<option value="Camping">Camping</option>
<option value="Privatzimmer">Privatzimmer</option>
</select>


Grüsse Sandro
 
Soviel ich weiß nicht, aber du kannst vor der ausgabe bzw. beim abfragen ein
PHP:
If ($Post['formular'] = "pension")
{
    $gasthof = "true"; //oder was weiß ich
}
machen

mfg Spikaner
 
Code:
<option value="pension:gasthof" name="pension">Pension</option> //Mit Trennzeichen versehen

PHP:
$cache = explode(":",$_POST['pension']); //An Trennzeichen auseinandernehmen
$pension = $cache[0];  //Pension zuordnen
$gasthof = $cachce[1];  //Gasthof zuordnen

So in dem Dreh würde ich es machen
 
Hm wozu sollte man zwei Value-Werte haben?
Verstehe ich nicht ganz, klär mich auf :)

// edit:

Juhu ich war mal schneller ;)
 
Zuletzt bearbeitet:
Ich versteh grad den Sinn nicht.
Wenn du eh Beides gleichzeitig schicken möchtest, dann kannst du ja wenn Pension ausgewählt wurde, Gasthof "manuel" setzen?

Erklär mal bitte was du genau vorhast.

=====
EDIT:

Oh Loomes war schneller ;)
 
Pesnion und Gasthof ist ja eigentlich das selbe,
einziger und grösster unterschied ist der name.

Der nutzer soll aber durch nur eine Auswahl im dropdown beide angezeigt bekommen.

geht das irgendwie mit typ[]
 
Du nutzt doch dafür eine db.. MySql etc für das Projekt warum arbeitest du bei der Abfrage nicht gleich mit OR in der db abfrage ab..

bsp: SELECT * FROM tbl_namen WHERE id = 10 OR id = 20;

mfg Spikaner
 
das ist meine Abfrage im moment...


<?php

// deklaration/definition der Variablen
$preis = isset($_POST["preis"]) ? $_POST["preis"] : null;
$sterne = isset($_POST["sterne"]) ? $_POST["sterne"] : null;
$see = isset($_POST["see"]) ? $_POST["see"] : null;
$ort = isset($_POST["ort"]) ? $_POST["ort"] : null;
$verpflegung = isset($_POST["verpflegung"]) ? $_POST["verpflegung"] : null;
$pool = isset($_POST["pool"]) ? $_POST["pool"] : null;
$klima = isset($_POST["klima"]) ? $_POST["klima"] : null;
$typ = isset($_POST["typ"]) ? $_POST["typ"] : null;
$kundennummer = isset($_POST["kundennummer"]) ? $_POST["kundennummer"] : null;



if ($ort!="egal" && $typ!="egal")
{
//verbindung aufnehmen
include "zugang/inc.php";

$sqlab = "SELECT name, typ, sterne, aort, preis, beschreibung, kundennummer FROM gastgeber";
$sqlab .= " where preis <= '".$preis."'";
$sqlab .= " AND sterne >= '".$sterne."'";
$sqlab .= " AND aort = '".$ort."'";
$sqlab .= " AND typ = '".$typ."'";


$sqlab .= " order by typ, preis";

$res = mysql_query($sqlab);
$num = mysql_num_rows($res);
 
Ungetestet auf die schnelle:
PHP:
$sqlab = "SELECT name, typ, sterne, aort, preis, beschreibung, kundennummer FROM gastgeber";
$sqlab .= " where preis <= '".$preis."'";
$sqlab .= " AND sterne >= '".$sterne."'";
$sqlab .= " AND aort = '".$ort."'";
if($typ == 'pension')
{
  $sqlab .= " AND (typ = 'gasthof' OR typ = 'pension')";
} else
  {
    $sqlab .= " AND typ = '".$typ."'";
  }
$sqlab .= " order by typ, preis";

Formular dann so z.B.
HTML:
 <option value="pension">Pension/Gasthof</option>
 
Zuletzt bearbeitet:
Zurück