Rechnendes Anfrageforumular in PHP (Gastronomie)

Hallo,

Ich hab mal eine frage zu einem projekt (mein erstes) das ich in php realiesieren möchte. Und zwar geht es um ein Anfrageformular für eine Pension das selbst den Gesammtpreis zusammenrechnet.
  1. Da die Preise in einer Pension oder Hotel meistens nicht im ganzen Jahr gleich sind müsste der Gast das von bis Datum an einem Kalender ausfüllen. (Ist ja noch klar).
    Sagen wir mal der günstigste preis im Jahr beträgt 25.-€ (z.b vom 01.05 bis 08.07 und vom 11.09 bis-16.10) pro Person. Vom 09.07 bis 10.09 beträgt der Preis aber um 2€ mehr.
    Wie kann ich dies in PHP realiesieren?

  2. Häufig gibt es ja auch noch Kurzaufenthaltszuschläge (z.B bei Übernachtungen bis 3Tage) z.B 5.-€ pro Person. Wie kann ich es machen das Automatisch hinzugerechnet wir.

Danke im Vorraus
Daniel Taucher:)
 
Ich würde dir empfehlen eine Datenbank zu nutzen und dort die einzelnen Zeiträume mit Preisen zu speichern.

Zu Punkt 3:

PHP:
 if($anzahl_Tage<3) $summe+=(($anzahl_personen*5)*$anzahl_tage);
 
Bei Punkt 3: Der Gast sollte schreibt die Tage ja nicht direkt in ein Feld sondern das Formular soll sie aus Anreisedatum und Abreisedatum erreichen. Wie machh ich das?
Aber zu Punkt 2.:
Da dies mein erstes PHP Projekt ist hab ich es noch nicht verstanden wie ich dies ralisieren könnte. Also wie funktioniert sowas mit einer Datenbank zu bewerkstelligen.

mfg
und Danke im Vorraus
 
Zuletzt bearbeitet:
Der Kunde gibt zwei Daten an, daraus machst du jeweils einen Timestamp mit [phpf]mktime[/phpf] zum Beispiel, und ziehst den Anreisetag vom Abreisetag ab.
Das Ergebnis ist dann eine Dauer in Sekunden (nennen wir es mal x).
x / 60 = Minuten
x / 60 / 60 = Stunden
x / 60 / 60 / 24 = Tage

Mit der Datenbank geht es auf ähnliche Weise, nur dass du dort noch die Datums- und Zeitfunktionen von MySQL zur Verfügung hast.
 
Zuallererst danke ich euch schonmal für die schnelle Hilfe.

Nun nochmal zu Kurzaufenthalt:
Mein Code ist bis jetzt so:
PHP:
  <?PHP 
$sekundenunterschied = mktime(0,0,0,$end_monat,$end_tag,$end_jahr) - mktime(0,0,0,$start_monat,$start_tag,$start_jahr);
$tage = $sekundenunterschied / 60 /60 /24;

//Die Variable $tage wird ausgegeben
$summe = (25 * $anzahl_erw * $tage);

  //Die Variable $summe wird ausgegeben
echo $summe;
?>

Wie kann ich es nun realisieren das er mir bei der §summe eine Kurzaufenthalspauschale(natürlich nur unter 3 Nächtigungen ($tage) von 5€ pro Person hinzuzählt?

mfg
 
Zuletzt bearbeitet:
Zuerst musst du der zahl 25 auch nee variable geben bsp $grundpreis = 25;
dan nee einfache If abfrage sprich If Tage kleiner 3 $grundpreis = 30; else nimm den normalen

PHP:
<?PHP 
$sekundenunterschied = mktime(0,0,0,$end_monat,$end_tag,$end_jahr) - mktime(0,0,0,$start_monat,$start_tag,$start_jahr);
$tage = $sekundenunterschied / 60 /60 /24;
If ($tage < 3){
$grundpreis =30;
}else{}
//Die Variable $tage wird ausgegeben
$summe = ($grundpreis * $anzahl_erw * $tage);

  //Die Variable $summe wird ausgegeben
echo $summe;
?>
nicht getestet sollte aber so funktionieren

mfg Spikaner
 
ok das hab ich nun geschaft. Nur kommt jetzt das komplizierteste (glaub ich):
Die SAISONZEITEN
Hier mal eine Preisliste:

Sommer Nebensaison: 25.-€ pro Person und Tag ALSO: +0€ zum Grundpreis(25€)
Zwischen 01.05 - 08.07 und 11.09 - 16.10

Sommer Hauptsaison 27.-€ pro Person und Tag ALSO: +2€ zum Grundpreis(25€)
Zwischen 09.07 - 10.09

Winter Nebensaison 28.-€ pro Person und Tag ALSO: +3€ zum Grundpreis(25€)
Zwischen 01.12 - 21.12 und 07.01 - 31.01 und 04.03 - 05.04

Winter Hauptsaison: 34.-€ pro Person und Tag ALSO: +9€ zum Grundpreis(25€)
Zwischen 22.12 - 06.01.2007 und 01.02 - 03.03

Also wie mach ich das das er automatisch mit dem richtigen Saisonpreis rechnet. Wennd er Gast nur Ankunftsdatum und Abreisedatum eingiebt.

HIER MEIN DERZEITIGER CODE:
PHP:
    <?PHP 
$sekundenunterschied = mktime(0,0,0,$end_monat,$end_tag,$end_jahr) - mktime(0,0,0,$start_monat,$start_tag,$start_jahr);
$tage = $sekundenunterschied / 60 /60 /24;
if ($tage < 3){
$kurzaufenthalt=5;
}else{} 

$grundpreis = 25+$kurzaufenthalt;

//Die Variable $tage wird ausgegeben
$erw_summe = ($grundpreis * $anzahl_erw * $tage);
$kind1_summe = ($grundpreis * $anzahl_kind1 * $tage)*0.50;
$kind2_summe = ($grundpreis * $anzahl_kind1 * $tage)*0.70;
$summe = $erw_summe + $kind1_summe + $kind2_summe;

?>

Danke im Vorraus
Daniel
 
Ich schätz mal das ich die s mit if abfragen muss. Dann noch 2 Fragen:

1.) Kann mir mitte jemand ein Bsp einer Saison machen oder erklären?

2.) Was passiert mit dieser Methode wenn sich ein für einen Zeitraum die Saisonen überschneiden. Z.B wenn 5 Tage in der Hauptsaison sind und 3 Tage in der Nebensaison. Werden dann die ersten Tage mit 27.-€ gerechnet und die nöchsten mit 27.-€ ? So sollte es bestenfalls funtionieren.

mfg
 
Zurück