php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 28-10-2008, 23:45
dirrtyfriday
 Newbie
Links : Onlinestatus : dirrtyfriday ist offline
Registriert seit: Oct 2008
Ort: München
Beiträge: 9
dirrtyfriday ist zur Zeit noch ein unbeschriebenes Blatt
Standard Zeitabfrage

Hi Leute,

ich hab ein kleines (großes) prolem.
Ich möchte gern ein Bestellformular für eine Heiservice Homepage programmieren.

Mein Problem dabei liegt darin, dass ich nicht so recht weiß, wie ich das mit den Öffnungszeiten lösen soll.

Der Heimservice hat nur Lieferzeiten zwischen 11:00 Uhr und 14:00 Uhr und dann wieder ab 17:00 Uhr bis 23:00 Uhr.

wie kann ich es realisieren, dass ein Script checkt ob es momentan zwischen 14 und 17 uhr bzw. nach 23 Uhr ist und den besteller dann sagt dass er außerhalb der lieferzeiten bestellt?

Vielen Dank im Voraus für Eure Mühen!

LG
Mo
__________________
Leben und leben lassen
Mit Zitat antworten
  #2 (permalink)  
Alt 29-10-2008, 00:03
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

In dem du die aktuelle Zeit ermittels und prüfst, ob diese innerhalb deiner Zeitfenster ist. time() und strtotime() wird dich da bestimmt weiter bringen!
Mit Zitat antworten
  #3 (permalink)  
Alt 29-10-2008, 00:48
dirrtyfriday
 Newbie
Links : Onlinestatus : dirrtyfriday ist offline
Registriert seit: Oct 2008
Ort: München
Beiträge: 9
dirrtyfriday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie kann ich strtotime(); am besten nutzen?
__________________
Leben und leben lassen
Mit Zitat antworten
  #4 (permalink)  
Alt 29-10-2008, 01:05
CSlade
 Registrierter Benutzer
Links : Onlinestatus : CSlade ist offline
Registriert seit: Jun 2007
Beiträge: 4
CSlade ist zur Zeit noch ein unbeschriebenes Blatt
Post

Hi, ich würde dieses Problem eher so lösen.



PHP-Code:
$aktuelleZeit date("Y-m-d H:i");
$start1 = (date("Y-m-d") . " 11:00");
$ende1 = (date("Y-m-d") . " 14:00");
$start2 = (date("Y-m-d") . " 17:00");
$ende2 = (date("Y-m-d") . " 23:00");

if((
$aktuelleZeit $start1 && $aktuelleZeit $ende1) || ($aktuelleZeit $start2 && $aktuelleZeit $ende2))
{
    
// In den Öffnungszeiten
}
else
{
    
// Ausserhalb der Öffnungszeiten


Ist vielleicht nicht die beste Lösung aber funktioniert durchaus.


Gruß
CSlade
__________________
http://www.bmtec.org
Mit Zitat antworten
  #5 (permalink)  
Alt 29-10-2008, 01:20
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.593
h3ll befindet sich auf einem aufstrebenden Ast
Standard

@CSlade

Das Datum kannst du in dem Fall aber komplett weglassen. Es reicht die Uhrzeiten, bzw. in diesem speziellen Fall die Stundenzahlen zu vergleichen.
Mit Zitat antworten
  #6 (permalink)  
Alt 29-10-2008, 01:20
dirrtyfriday
 Newbie
Links : Onlinestatus : dirrtyfriday ist offline
Registriert seit: Oct 2008
Ort: München
Beiträge: 9
dirrtyfriday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Cool... das funktioniert. PERFECT....Großes Dakeschön

AAAAAAABER....

Ein Heimservice hat ja Samstags, Sonn. -und Feiertage durchgehend von 11 Uhr - 23 Uhr geöffnet.

Ich denk mal das mir den Samstagen und Sonntagen sollte machbar sein, aaaber wie macht man das dann mit den Feiertagen?

Muss ich die da alle dann eingeben bzw. checken lassen!?

Sorry, bin noch nicht so lange mit PHP dabei...
__________________
Leben und leben lassen
Mit Zitat antworten
  #7 (permalink)  
Alt 29-10-2008, 01:22
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Das Problem am Type Juggling von PHP ist, dass jonglieren für ungeübte schnell mal in einem heillosen Durcheinander enden kann. Und auch für erfahrene Programmierer ist es nicht Sinnvoll, sich auf die (nicht immer konsequente) kontextabhängige Typenkonvertierung von PHP zu verlassen. Ich würde hier definitiv auf Timestamps setzen!
Mit Zitat antworten
  #8 (permalink)  
Alt 29-10-2008, 01:30
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.593
h3ll befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
<?php

$geoeffnet 
false;
$zeit date('H:i');

$oeffnungszeiten = array(
    
'werktag'  => array('11:00' => '14:00''17:00' => '23:00'),
    
'feiertag' => array('11:00' => '23:00')
);

foreach (
$oeffnungszeiten[date('N') > 'feiertag' 'werktag'] as $oeffnen => $schliessen)
    if (
$zeit >= $oeffnen && $zeit $schliessen)
        
$geoeffnet true;

if (
$geoeffnet) {
    
// In den Oeffnungszeiten
} else {
    
// Ausserhalb der Oeffnungszeiten
}

?>

Geändert von h3ll (29-10-2008 um 01:35 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 29-10-2008, 01:31
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.593
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von unset
Das Problem am Type Juggling von PHP ist, dass jonglieren für ungeübte schnell mal in einem heillosen Durcheinander enden kann. Und auch für erfahrene Programmierer ist es nicht Sinnvoll, sich auf die (nicht immer konsequente) kontextabhängige Typenkonvertierung von PHP zu verlassen. Ich würde hier definitiv auf Timestamps setzen!
Es wird hier nichts konvertiert. Es werden Strings mit Strings verglichen.
Mit Zitat antworten
  #10 (permalink)  
Alt 29-10-2008, 01:34
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von h3ll
Es wird hier nichts konvertiert. Es werden Strings mit Strings verglichen.
Naja, ich frage mich, wie ein String gegenüber einem anderen (bei gleicher länge) "größer" oder "kleiner" sein kann, als ein anderer ...
Mit Zitat antworten
  #11 (permalink)  
Alt 29-10-2008, 01:34
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Unveränderliche Feiertage kann man hart kodieren, z.B. ist Neujahr immer am 1.1.
An Ostern ausgerichtete Feiertage kann man mit easter_date() berechnen.
Die beweglichen Feiertage muß man sich irgendwoher besorgen oder selbst eingeben. Ich habe auf die Schnelle keinen Webservice gefunden, aber hier könnte man es mit ein wenig PHP im iCal-Format abgreifen.
Mit Zitat antworten
  #12 (permalink)  
Alt 29-10-2008, 01:35
dirrtyfriday
 Newbie
Links : Onlinestatus : dirrtyfriday ist offline
Registriert seit: Oct 2008
Ort: München
Beiträge: 9
dirrtyfriday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Oh Gott... mit Timestamps habe ich nun gar keine Erfahrungen...
Ich mache das für einen Freund um ihn einen Gefallen zu tun.

Mit dem Rest wie Abfrage und Ausgabe von MySQL komm ich eigentlich ganz gut klar. Sogar mit dem "Warenkorb".

Aber bei dem Bestellvorgang häng ich an dieser Stelle weil ich sowas bisher noch nicht gemacht habe!

Also hier mal die ganz blöde Frage:
Wie gehe ich mit timestamps um?

Ich hab schon bei php.net mal alles durch gelesen, komm aber mit den ganzen Ausdrücken garnicht klar

Somit gebe ich Dir das ich da durcheinander kommt (als Anfänger).


Würd mich freuen wenn mir das hier einer in Normalosprache erklären könnte

Danke für Eure Hilfe...
__________________
Leben und leben lassen
Mit Zitat antworten
  #13 (permalink)  
Alt 29-10-2008, 01:41
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.593
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von unset
Naja, ich frage mich, wie ein String gegenüber einem anderen (bei gleicher länge) "größer" oder "kleiner" sein kann, als ein anderer ...
'AAA' == 'AAA'
'ABC' > 'AAA'
'ABC' < 'CBA'

Jetzt verständlich?
Mit Zitat antworten
  #14 (permalink)  
Alt 29-10-2008, 01:43
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von h3ll
'AAA' == 'AAA'
'ABC' > 'AAA'
'ABC' < 'CBA'

Jetzt verständlich?
Schon, weiß nur nicht, was ich davon halten soll ...
Mit Zitat antworten
  #15 (permalink)  
Alt 29-10-2008, 01:45
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Laut Tabelle "Comparison with Various Types" auf http://www.php.net/manual/en/languag...comparison.php werden Strings bei Vergleichen mit <, <=, ==, >=, > zunächst mal ins Numerische umgewandelt und dann als Zahlen verglichen. Die Umwandlung wird auf
http://www.php.net/manual/en/languag...ing.conversion beschrieben.

Für sowas sollte man besser strcmp() und Konsorten benutzen. Die arbeiten zwar anders (Abstand zu 'A'), aber das deckt sich eher mit meinem Bauchgefühl und birgt weniger Stolperfallen (Strings die mit einer Zahl oder +/- beginnen).
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:38 Uhr.